Time-tag streaming
==================

Measurement classes described in this section provide direct access to the time tag stream with minimal or no pre-processing.

.. _time-tag-format:

.. rubric:: Time tag format

The time tag contain essential information about the detected event and have the following format:

.. list-table::
    :widths: 10 10 30
    :header-rows: 1

    * - Size
      - Type
      - Description
    * - 8 bit
      - enum :cpp:enum:`Tag::Type`
      - overflow type
    * - 8 bit
      - --
      - reserved
    * - 16 bit
      - uint16
      - number of missed events
    * - 32 bit
      - int32
      - channel number
    * - 64 bit
      - int64
      - time in ps from device start-up


.. _api-TimeTagStream:

TimeTagStream
-------------

.. doxygenclass:: TimeTagStream

.. doxygenclass:: TimeTagStreamBuffer

.. _api-FileWriter:

FileWriter
----------

.. doxygenclass:: FileWriter

.. _api-FileReader:

FileReader
----------

.. doxygenclass:: FileReader
    :members: FileReader, getData, hasData, getConfiguration, getChannelList, getLastMarker

.. _api-dump:

Dump
----

.. doxygenclass:: Dump

.. _api-scope:

Scope
-----

.. doxygenclass:: Scope

.. doxygenstruct:: Event

.. doxygenenum:: State

.. _api-sampler:

Sampler
-------

.. doxygenclass:: Sampler
