<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="../../../design/description.xslt" type="text/xsl"?>
<node lang="en" type="DynamicNode.Lib.Basic.NLog" assembly="NLibDefault" xmlns="http://dynamicnodes.mastersign.de/description">
  <caption>Log</caption>
  <group>Basics</group>
  <description>
    Creates a log over all incoming tokens.
  </description>
  <inPorts>
    <port name="in" caption="Eingabe">
      <type>&lt;TElement&gt;</type>
      <description>Takes arbitrary tokens and logs their properties.</description>
    </port>
  </inPorts>
  <outPorts />
  <helpText>
    <p>
      This node takes every incoming token and logs their token state,
      their stream and stream index and a string representation of their value.
    </p>
    <p>
      This node is a good choice for debugging a graph. Its in port <c>in</c> can be
      connected to any out port and the emitted tokens are logged.
    </p>
    <p>
      The node comes with a node specific view port which presents the
      log as a text, where every line stands for a logged token.
      The token state is represented with one character:
      V: <u>V</u>alid, I: <u>I</u>nvalid, N: <u>N</u>ot set.
    </p>
    <info>
      To create the string representation of the token values
      the method <c>Object.ToString()</c> is used.
    </info>    
    <p>
      An empty token without stream could produce the following line:
      <pre>2008.11.07, 13:10:00, N, -, 00000, null</pre>
      A token from a video stream could appear like:
      <pre>2008.11.07, 13:14:18, V, 03861, 00005, "DynamicNode.Types.Imaging.RGBImage"</pre>
      That means, on the 7th november of 2008 at 1:14pm a valid token 
      with an RGBImage object, which is the 5th token in a stream, was logged.
    </p>
    <info>
      The timestamp of the log entries is formatted in a way 
      that the alpha numerical order is equal to the chronological order.
    </info>
  </helpText>
  <customArea>An icon of a log file.</customArea>
</node>