<?xml version="1.0"?>
<doc>
    <assembly>
        <name>RAYLASE.SPICE3.TraceBufferLib</name>
    </assembly>
    <members>
        <member name="T:RAYLASE.SPICE3.TraceBuffer.CommandCode">
            <summary>
            CommandCodes for talking with the TraceBuffer server
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.CommandCode.DisableRead">
            <summary>
            Stop reading on server.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.CommandCode.EnableRead">
            <summary>
            Start reading on server.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.CommandCode.Clear">
             <summary>
            Clear buffer on server.
             </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.CommandCode.MagicNumber">
            <summary>
            Message header
            </summary>
        </member>
        <member name="T:RAYLASE.SPICE3.TraceBuffer.TraceEventType">
            <summary>
            TraceBuffer events
            </summary>
            <remarks>These events will only occur if the corresponding option is enabled using <see cref="T:RAYLASE.SPICE3.TraceBufferConfig"/> and applying the configuration on the card using <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.SetConfig(RAYLASE.SPICE3.TraceBufferConfig)"/>.</remarks>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortA">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortA"/>.
            The payload is 16 bits wide, one bit per PortA input.
            Payload bit 0 represents PortA0, bit 1 represents PortA1 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortB">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortB"/>.
            The payload is 16 bits wide, one bit per PortB input.
            Payload bit 0 represents PortB0, bit 1 represents PortB1 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortC">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortC"/>.
            The payload is 16 bits wide, one bit per PortC input.
            Payload bit 0 represents PortC0, bit 1 represents PortC1 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortDLow">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortD"/>.
            The payload is 16 bits wide, one bit per PortD input.
            Payload bit 0 represents PortD0, bit 1 represents PortD1 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortDHigh">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortD"/>.
            The payload is 8 bits wide, one bit per PortD input.
            Payload bit 0 represents PortD16, bit 1 represents PortD17 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortELow">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortE"/>.
            The payload is 16 bits wide, one bit per PortE input.
            Payload bit 0 represents PortE0, bit 1 represents PortE1 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortEHigh">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.PortE"/>.
            The payload is 8 bits wide, one bit per PortE input.
            Payload bit 0 represents PortE16, bit 1 represents PortE17 ...
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserIn">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.LaserIn"/>.
            The payload is 2 bits wide, one bit per LaserIn input.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserIn0">
            <summary>
            This will occur on changes of bit 0 at <see cref="F:RAYLASE.SPICE3.IOPort.LaserIn"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserIn1">
            <summary>
            This will occur on changes of bit 1 at <see cref="F:RAYLASE.SPICE3.IOPort.LaserIn"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserOut">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.IOPort.LaserOut"/>.
            The payload is 3 bits wide, one bit per LaserOut output.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserOut0">
            <summary>
            This will occur on changes of bit 0 at <see cref="F:RAYLASE.SPICE3.IOPort.LaserOut"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserOut1">
            <summary>
            This will occur on changes of bit 1 at <see cref="F:RAYLASE.SPICE3.IOPort.LaserOut"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PortLaserOut2">
            <summary>
            This will occur on changes of bit 2 at <see cref="F:RAYLASE.SPICE3.IOPort.LaserOut"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Dac0">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.PowerTarget.Dac0"/> output.
            The payload is 16 bits wide.
            A value of 0 represents 0V and a value of 65535 represents +10V at the DAC output.
            Be aware that the actual DAC resolution is only 12 bits, so the 4 LSB do not affect the voltage.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Dac1">
            <summary>
            This will occur on changes at <see cref="F:RAYLASE.SPICE3.PowerTarget.Dac1"/> output.
            The payload is 16 bits wide.
            A value of 0 represents 0V and a value of 65535 represents +10V at the DAC output.
            Be aware that the actual DAC resolution is only 12 bits, so the 4 LSB do not affect the voltage.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserPower16">
            <summary>
            This will occur when the laser output power changes.
            The payload contains all 16 bits.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserPower8">
            <summary>
            This will occur when the laser output power changes its 8 MSB bits.
            The payload contains the 8 MSB bits.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserPower4">
            <summary>
            This will occur when the laser output power changes its 4 MSB bits.
            The payload contains the 4 MSB bits.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserPower2">
            <summary>
            This will occur when the laser output power changes its 2 MSB bits.
            The payload contains the 2 MSB bits.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserPower1">
            <summary>
            This will occur when the laser output power changes its MSB bit.
            The payload contains the MSB bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Fps">
            <summary>
            This will occur on every change of <see cref="F:RAYLASE.SPICE3.LaserSignal.Fps"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Gate">
            <summary>
            This will occur on every change of <see cref="F:RAYLASE.SPICE3.LaserSignal.Gate"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Lm">
            <summary>
            This will occur on every change of <see cref="F:RAYLASE.SPICE3.LaserSignal.LM"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.LaserTriggered">
            <summary>
            This will occur on every change of 'LaserTriggered'/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.StartMark">
            <summary>
            This will occur on every change of <see cref="F:RAYLASE.SPICE3.Sfr0Bits.StartMark"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.AbortMark">
            <summary>
            This will occur on every change of <see cref="F:RAYLASE.SPICE3.Sfr0Bits.AbortMark"/>.
            The payload size is one bit.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.MotorStep">
            <summary>
            This will occur on changes at motor step.
            The payload size is four bit, one bit per motor axis.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.MotorDirection">
            <summary>
            This will occur on changes at motor direction.
            The payload size is four bit, one bit per motor axis.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0TxX">
            <summary>
            This will occur when a X-frame is sent to Head0.
            The data does not need to have changed for this event to occur so this event occurs every 10us.
            The payload size is 32 bits.
            The bits 19 to 0 contain the frame payload. If bit 28 is set the frame is a command frame otherwise a position frame.
            The position data is interpreted as a signed 20.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0TxY">
            <summary>
            This will occur when a Y-frame is sent to Head0.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0TxZ">
            <summary>
            This will occur when a Z-frame is sent to Head0.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0RxX">
            <summary>
            This will occur when a X-frame is received from Head0.
            The event payload size is 32 bits.
            When the XY2-100 interface is selected this event occurs every 10us regardless of a scan head is connected or not.
            When the SL2-100 interface is selected this event also occurs every 10us but will be omitted if no frame is received (e.g. no scan head is connected).
            For detailed payload description see "Bit Definitions" in <conceptualLink target="ee3edb0d-7e41-4e18-8b70-5d7a6916e9ba" />.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0RxY">
            <summary>
            This will occur when a Y-frame is received from Head0.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head0RxZ">
            <summary>
            This will occur when a Z-frame is received from Head0.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1TxX">
            <summary>
            This will occur when a X-frame is sent to Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1TxY">
            <summary>
            This will occur when a Y-frame is sent to Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1TxZ">
            <summary>
            This will occur when a Z-frame is sent to Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1RxX">
            <summary>
            This will occur when a X-frame is received from Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1RxY">
            <summary>
            This will occur when a Y-frame is received from Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Head1RxZ">
            <summary>
            This will occur when a Z-frame is received from Head1.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Spi0Rx">
            <summary>
            This will occur when the SPI0 module received something.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Spi1Rx">
            <summary>
            This will occur when the SPI1 module received something.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Spi2Rx">
            <summary>
            This will occur when the SPI2 module received something.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Spi3Rx">
            <summary>
            This will occur when the SPI3 module received something.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.IOEvents">
            <summary>
            This will occur on changes inside the <see cref="P:RAYLASE.SPICE3.TraceBufferConfig.IOEvents"/> configuration register.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.PositionEvents">
            <summary>
            This will occur on changes inside the <see cref="P:RAYLASE.SPICE3.TraceBufferConfig.PositionEvents"/> configuration register.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.ControlEvents">
            <summary>
            This will occur on changes inside the <see cref="P:RAYLASE.SPICE3.TraceBufferConfig.ControlEvents"/> configuration register.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.Label">
            <summary>
            This will occur when a label that was added to the list gets executed. See <see cref="P:RAYLASE.SPICE3.TraceBufferConfig3.Label"/> for more details.
            Note that a label is 16 bits in size and left aligned in the 32 bit payload. Since one packed label event will always only contain one unpacking will not create two label events but shift the label to the first 16 bit of the payload.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEventType.TimerOverflow">
            <summary>
            This event type is only used internally and will never be returned.
            </summary>
        </member>
        <member name="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent">
            <summary>
            TraceBuffer event from the SP-ICE-3 card
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Timestamp">
            <summary>
            TimeStamp at the time of the occurrence of this event
            </summary>
            <remarks>
            This contains a 56 bit timestamp. The value is the time interval since the last boot of the card in 15.625ns increments.
            </remarks>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Time">
            <summary>
            Time in μs relative to the first event received.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.EventType">
            <summary>
            Type of the Event <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEventType"/>.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Overflow">
            <summary>
            Indicates if a timer overflow occurred. If this bit is set, events have been missed between this one and the last event of the same EventType.
            </summary>
        </member>
        <member name="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Value">
            <summary>
            The payload of the event.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceEvent.ToString">
            <summary>
            String representation of the TraceEvent.
            </summary>
            <returns>A string representation of the TraceEvent.</returns>
        </member>
        <member name="T:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient">
            <summary>
            TraceBufferClient that allows to interact with the TraceBufferServer on a SP-ICE-3 card.
            </summary>
            <remarks>This allows to receive <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> from a SP-ICE-3 card and to configure the TraceEvents that should occur.</remarks>
        </member>
        <member name="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ReadTimeout">
            <summary>
            Maximum time in ms to wait for a <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> when calling <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Read(RAYLASE.SPICE3.TraceBuffer.TraceEvent[],System.Int32,System.Int32)"/>.
            Use <see cref="F:System.Threading.Timeout.Infinite"/> to wait forever.
            If timeout is set to <b>0</b>, <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Read(RAYLASE.SPICE3.TraceBuffer.TraceEvent[],System.Int32,System.Int32)"/> will directly return without an error if nothing is available. Otherwise a <see cref="T:System.TimeoutException"/>is thrown if an timeout occurs.
            </summary>
        </member>
        <member name="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Connected">
            <summary>
            Indicates if the connection to the card is open.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.#ctor">
            <summary>
            Initializes a new instance of TraceBufferClient but does not connect to a card.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.#ctor(System.String)">
            <summary>
            Initializes a new instance of TraceBufferClient and connects to a given card address.
            </summary>
            <param name="serverAddress">The hostname or IP address of the card.</param>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.#ctor(RAYLASE.SPICE3.ClientLib.ClientAPI,System.Boolean)">
            <summary>
            Initializes a new instance of TraceBufferClient and connects to a given card address.
            </summary>
            <param name="api">A <see cref="T:RAYLASE.SPICE3.ClientLib.ClientAPI"/> instance or null if it should be instantiated internally.</param>
            <param name="ownsHandle"><c>true</c> if the <see cref="T:RAYLASE.SPICE3.ClientLib.ClientAPI"/> will be owned by thisTraceBuffer instance; otherwise, <c>false</c>.</param>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Dispose">
            <summary>
            Releases the Instance of this class.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Connect(System.String)">
            <summary>
            Connect to the TraceBuffer-server on the SP-ICE-3 card
            </summary>
            <param name="serverAddress">The Hostname or IP address of the card.</param>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Connect(RAYLASE.SPICE3.ClientLib.ClientAPI,System.Boolean)">
            <summary>
            Connect to the TraceBuffer-server on the SP-ICE-3 card
            </summary>
            <param name="api">A <see cref="T:RAYLASE.SPICE3.ClientLib.ClientAPI"/> instance or null if it should be instantiated internally.</param>
            <param name="ownsHandle"><c>true</c> if the <see cref="T:RAYLASE.SPICE3.ClientLib.ClientAPI"/> will be owned by thisTraceBuffer instance; otherwise, <c>false</c>.</param>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Disconnect">
            <summary>
            Disconnects from the TraceBuffer server.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.TryRead(RAYLASE.SPICE3.TraceBuffer.TraceEvent[],System.Int32,System.Int32)">
            <summary>
            Reads a block of <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/>.
            </summary>
            <remarks>
            Reads a maximum of <paramref name="count"/> available <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> that were received from the card since the last call to this function. If at least one <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> is available
            it will directly return with only the number of currently available events.
            This call blocks until either new data is available, or the <see cref="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ReadTimeout"/> period has elapsed in which case 0 is returned.
            Note that receiving of events has to be enabled using <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/> in order to receive <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/>s from the card.
            </remarks>
            <param name="buffer">Buffer where the events will be written to.</param>
            <param name="index">First position inside <paramref name="buffer"/> where the events will be written to.</param>
            <param name="count">Maximum number of events that will be written to <paramref name="buffer"/>.</param>
            <returns>The actual number of <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> that were written to <paramref name="buffer"/></returns>
            <seealso cref="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ReadTimeout"/>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Read(RAYLASE.SPICE3.TraceBuffer.TraceEvent[],System.Int32,System.Int32)">
            <summary>
            Reads a block of <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/>.
            </summary>
            <remarks>
            Reads a maximum of <paramref name="count"/> available <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> that were received from the card since the last call to this function. If at least one <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> is available
            it will directly return with only the number of currently available events.
            This call blocks until new data is available. A <see cref="T:System.TimeoutException"/> will be thrown if <see cref="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ReadTimeout"/> occurs before any data
            is available.
            Note that receiving of events has to be enabled using <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/> in order to receive <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/>s from the card.
            </remarks>
            <param name="buffer">Buffer where the events will be written to.</param>
            <param name="index">First position inside <paramref name="buffer"/> where the events will be written to.</param>
            <param name="count">Maximum number of events that will be written to <paramref name="buffer"/>.</param>
            <returns>The actual number of <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> that were written to <paramref name="buffer"/></returns>
            <seealso cref="P:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ReadTimeout"/>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Acquire(System.UInt16,System.UInt16)">
            <summary>
            Reads all currently available events. Skips all events that occur before the start label.
            Remember that for this to work the desired events have to be enabled before <see cref="T:RAYLASE.SPICE3.TraceBufferConfig"/>. At least <see cref="P:RAYLASE.SPICE3.TraceBufferConfig3.Label"/> has to be enabled.
            Events will only be received if <see cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/> was called before.
            </summary>
            <param name="startLabel">The label which defines when event collection should begin.</param>
            <param name="endLabel">The label which defines when event collection should end.</param>
            <returns>List of all events that occurred between <paramref name="startLabel"/> and <paramref name="endLabel"/> (may be empty if only the startEvent and endEvent was available).</returns>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.SetConfig(RAYLASE.SPICE3.TraceBufferConfig)"/>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Read(RAYLASE.SPICE3.TraceBuffer.TraceEvent[],System.Int32,System.Int32)"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ToGroup(System.Collections.Generic.IEnumerable{RAYLASE.SPICE3.TraceBuffer.TraceEvent})">
            <summary>
            Groups all events by their <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Timestamp"/>. All events with the same <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Timestamp"/> are stored in
            a list.
            </summary>
            <param name="events">The events that should be grouped.</param>
            <returns>Dictionary containing the grouped events.</returns>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ToEventGroup(System.Collections.Generic.IEnumerable{RAYLASE.SPICE3.TraceBuffer.TraceEvent})">
            <summary>
            Groups all events by their <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Timestamp"/>. All events with the same <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Timestamp"/> are stored in
            another dictionary with their <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.EventType"/> as key.
            </summary>
            <param name="events">The events that should be grouped.</param>
            <returns>Dictionary containing the grouped events.</returns>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ToSignedPosition(System.Int64)">
            <summary>
            Convert unsigned 20 bit position value received from the TraceBuffer to an signed position
            </summary>
            <param name="value">position from the TraceBuffer</param>
            <returns>the value converted to a signed position</returns>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.ToSignedPosition(System.Collections.Generic.List{RAYLASE.SPICE3.TraceBuffer.TraceEvent},System.Boolean)">
            <summary>
            Converts the <see cref="F:RAYLASE.SPICE3.TraceBuffer.TraceEvent.Value"/> of all position events to a signed position.
            </summary>
            <param name="traceEvents">List of events</param>
            <param name="isDualHead">Flag indicating whether trace events have been acquired from a single scanner (false) or dual scanner (true) setup</param>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Acquire(System.UInt16,System.UInt16)"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.TickToMicroSecond(System.UInt64)">
            <summary>
            Convert card ticks to μs
            </summary>
            <param name="ticks">Ticks received by the TraceBuffer</param>
            <returns>elapsed time in μs</returns>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start">
            <summary>
            Starts streaming from the card.
            </summary>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Stop"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Stop">
            <summary>
            Stops streaming from the card.
            </summary>
            <seealso cref="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Start"/>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.clear">
            <summary>
            Clears all locally available <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> that were read back from the card.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.Clear">
            <summary>
            Clears currently available <see cref="T:RAYLASE.SPICE3.TraceBuffer.TraceEvent"/> locally and on the card.
            </summary>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.GetConfig">
            <summary>
            Gets the configuration from the card.
            </summary>
            <remarks><see cref="M:RAYLASE.SPICE3.ClientLib.TraceBufferAPI.GetConfig"/></remarks>
            <returns>The configuration</returns>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.SetConfig(RAYLASE.SPICE3.TraceBufferConfig)">
            <summary>
            Sets the configuration on the card.
            </summary>
            <remarks><see cref="M:RAYLASE.SPICE3.ClientLib.TraceBufferAPI.SetConfig(RAYLASE.SPICE3.TraceBufferConfig)"/></remarks>
            <param name="config">The configuration</param>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.LoadConfig">
            <summary>
            Loads a configuration on the card that is stored on the non volatile memory.
            </summary>
            <remarks><see cref="M:RAYLASE.SPICE3.ClientLib.TraceBufferAPI.LoadConfig"/></remarks>
        </member>
        <member name="M:RAYLASE.SPICE3.TraceBuffer.TraceBufferClient.StoreConfig">
            <summary>
            Stores the configuration on the card to the non volatile memory.
            </summary>
            <remarks><see cref="M:RAYLASE.SPICE3.ClientLib.TraceBufferAPI.StoreConfig"/></remarks>
        </member>
    </members>
</doc>
