|
libtcspc C++ API
Streaming TCSPC and time tag data processing
|
Implementation for binary record interpretation for HydraHarp, MultiHarp, TimeHarp 260, and PicoHarp 330 T3 format.
This class is documented to show the available member functions. User code should use tcspc::pqt3_hydraharpv1_event or tcspc::pqt3_generic_event.
| IsNSyncOverflowAlwaysSingle | if true, interpret as HydraHarp V1 (RecType 0x00010304) format, in which nsync 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 | dtime () const noexcept -> u16np |
| Read the difference time 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 | is_external_marker () const noexcept -> bool |
| Determine if this event represents external markers. | |
| constexpr auto | is_nsync_overflow () const noexcept -> bool |
| Determine if this event represents an nsync overflow. | |
| constexpr auto | is_special () const noexcept -> bool |
| Determine if this event is a special event. | |
| constexpr auto | nsync () const noexcept -> u16np |
| Read the nsync counter value if this event is a non-special event or an external marker event. | |
| constexpr auto | nsync_overflow_count () const noexcept -> u16np |
| Read the nsync overflow count if this event represents an nsync overflow. | |
Static Public Member Functions | |
| static constexpr auto | make_external_marker (u16np nsync, u8np marker_bits) -> basic_pqt3_event |
| Make an event representing an external marker. | |
| static constexpr auto | make_nonspecial (u16np nsync, u8np channel, u16np dtime) -> basic_pqt3_event |
| Make an event representing a non-special (photon) event. | |
| static constexpr auto | make_nsync_overflow () noexcept -> basic_pqt3_event |
| Make an event representing a single nsync overflow. | |
| static constexpr auto | make_nsync_overflow (u16np count) -> basic_pqt3_event |
| Make an event representing an nsync overflow. | |
Public Attributes | |
| std::array< std::byte, 4 > | bytes |
| Bytes of the 32-bit raw device event. | |
Static Public Attributes | |
| static constexpr i32 | nsync_overflow_period = 1024 |
| The nsync overflow period of this event type. | |
Friends | |
| auto | operator<< (std::ostream &stream, basic_pqt3_event const &event) -> std::ostream & |
| Stream insertion operator. | |
| auto | operator== (basic_pqt3_event const &lhs, basic_pqt3_event const &rhs) noexcept -> bool=default |
| Equality comparison operator. | |
|
inlinestaticconstexpr |
Make an event representing an external marker.
| nsync | the nsync count; 0 to 1023 |
| marker_bits | the marker bitmask; 1 to 15 |
|
inlinestaticconstexpr |
|
inlinestaticconstexprnoexcept |
Make an event representing a single nsync overflow.
|
inlinestaticconstexpr |
Make an event representing an nsync overflow.
This overload is only available in tcspc::pqt3_generic_event.
| count | number of overflows; 1 to 1023 (0 is allowed but may not be handled correctly by other readers) |