|
libtcspc C++ API
Streaming TCSPC and time tag data processing
|
Implementation for binary record interpretation for HydraHarp, MultiHarp, TimeHarp 260, and PicoHarp 330 T2 format.
This class is documented to show the available member functions. User code should use tcspc::pqt2_hydraharpv1_event or tcspc::pqt2_generic_event.
| OverflowPeriod | the time tag overflow period |
| IsOverflowAlwaysSingle | if true, time tag overflow records always indicate a single overflow |
Public Member Functions | |
| constexpr auto | channel () const noexcept -> u8np |
| Read the channel if this event is a non-special event. | |
| constexpr auto | external_marker_bits () const noexcept -> u8np |
| Read the marker bits (mask) if this event represents external markers. | |
| constexpr auto | external_marker_timetag () const noexcept -> u32np |
| Read the time tag if this event is an external marker event. | |
| constexpr auto | is_external_marker () const noexcept -> bool |
| Determine if this event represents external markers. | |
| constexpr auto | is_special () const noexcept -> bool |
| Determine if this event is a special event. | |
| constexpr auto | is_sync_event () const noexcept -> bool |
| Determine if this event represents a sync event. | |
| constexpr auto | is_timetag_overflow () const noexcept -> bool |
| Determine if this event represents a time tag overflow. | |
| constexpr auto | timetag () const noexcept -> u32np |
| Read the time tag if this event is a non-special event. | |
| constexpr auto | timetag_overflow_count () const noexcept -> u32np |
| Read the time tag overflow count if this event represents a time tag overflow. | |
Static Public Member Functions | |
| static constexpr auto | make_external_marker (u32np timetag, u8np marker_bits) -> basic_pqt2_event |
| Make an event representing an external marker. | |
| static constexpr auto | make_nonspecial (u32np timetag, u8np channel) -> basic_pqt2_event |
| Make an event representing a non-special (photon) event. | |
| static constexpr auto | make_sync (u32np timetag) noexcept -> basic_pqt2_event |
| Make an event representing a sync event. | |
| static constexpr auto | make_timetag_overflow () noexcept -> basic_pqt2_event |
| Make an event representing a single time tag overflow. | |
| static constexpr auto | make_timetag_overflow (u32np count) -> basic_pqt2_event |
| Make an event representing a time tag overflow. | |
Public Attributes | |
| std::array< std::byte, 4 > | bytes |
| Bytes of the 32-bit raw device event. | |
Static Public Attributes | |
| static constexpr i32 | overflow_period = OverflowPeriod |
| The time tag overflow period of this event type. | |
Friends | |
| auto | operator<< (std::ostream &stream, basic_pqt2_event const &event) -> std::ostream & |
| Stream insertion operator. | |
| auto | operator== (basic_pqt2_event const &lhs, basic_pqt2_event const &rhs) noexcept -> bool=default |
| Equality comparison operator. | |
|
inlinestaticconstexpr |
Make an event representing an external marker.
| timetag | the time tag; 0 to 33,554,431 |
| marker_bits | the marker bitmask; 1 to 15 (0 is forbidden) |
|
inlinestaticconstexpr |
|
inlinestaticconstexprnoexcept |
Make an event representing a sync event.
| timetag | the time tag; 0 to 33,554,431 |
|
inlinestaticconstexprnoexcept |
Make an event representing a single time tag overflow.
|
inlinestaticconstexpr |
Make an event representing a time tag overflow.
This overload is only available in tcspc::pqt2_generic_event.
| count | number of overflows; 1 to 33,554,431 (0 is allowed but may not be handled correctly by other readers) |
|
staticconstexpr |
The time tag overflow period of this event type.
Note that this may not equal one plus the maximum representable value of the time tag field.