Measurement Classes
The Time Tagger library includes several classes that implement various measurements. All measurements are derived from a base class called IteratorBase that is described further down. As the name suggests, it uses the iterator programming concept.
All measurements provide a set of methods to start and stop the execution and to access the accumulated data. In a typical application, the following steps are performed (see example):
Create an instance of a measurement
Wait for some time
Retrieve the data accumulated by the measurement by calling a
.getData()method.
Note
In MATLAB, the Measurement names have common prefix TT*. For example: Correlation is named as TTCorrelation. This prevents possible name collisions with existing MATLAB or user functions.
The available measurements are grouped by the following categories: Event counting, Time histograms, Fluorescence-lifetime imaging (FLIM), Phase & frequency analyses, Time-tag-streaming, and Helper classes.
All the existing classes are listed alphabetically below:
- Correlation
Computes auto- and cross-correlations between channels.
- CorrelationPairs
Computes auto- and cross-correlations between all pairs of a list of channels.
- Counter
Counts events on one or more channels using fixed-width bins and a circular buffer output.
- Countrate
Measures the average event rate on one or more channels.
- CustomMeasurement
Implements a custom measurement by processing the raw time-tag stream with minimal overhead.
- Dump
Deprecated - please use FileWriter instead. Writes raw time-tags to file in an uncompressed binary format.
- FileReader
Reads time-tags from a compressed file written by the FileWriter measurement.
- FileWriter
Writes time-tags into a file with a lossless compression. It replaces the Dump class.
- Flim
Measures time histograms for fluorescence lifetime imaging.
- FrequencyCounter
Measures frequency and phase evolution of periodic signals at periodic sampling intervals.
- FrequencyStability
Analyzes the frequency stability of periodic signals at different time scales.
- GatedCounter
Counts events on one or more channels within gates defined by one or two marker channels.
- Histogram
Accumulates a histogram of time differences between two channels.
- Histogram2D
Accumulates a 2D histogram of correlated time differences.
- HistogramCustomBins
Accumulates a histogram of time differences using custom binning.
- HistogramLogBins
Accumulates a histogram of time differences using logarithmic binning.
- HistogramND
Accumulates an N-dimensional histogram of time differences.
IteratorBaseProvides a base class for implementing custom measurements.
- PhaseNoise
Analyzes the phase stability of a periodic signal in the frequency domain.
- PulsePerSecondMonitor
Monitors the timing and stability of 1 pulse-per-second (PPS) signals.
- Sampler
Samples the digital state of channels triggered by another channel.
- Scope
Detects signal edges for visualization, similar to a ultrafast logic analyzer.
- StartStop
Accumulates a histogram of start-stop time differences between two channels.
- SynchronizedMeasurements
Synchronizes multiple measurement instances for parallel acquisition and control.
- TimeDifferences
Accumulates histograms of time differences between two channels, optionally swept using one or two trigger channels.
- TimeDifferencesND
Accumulates multi-dimensional histograms of asynchronous time differences.
- TimeTagStream
Provides low-level access to the raw time-tag stream for custom processing. See Raw Time-Tag-Stream access to get on overview about the possibilities for the raw time-tag-stream access.