libtcspc C++ API
Streaming TCSPC and time tag data processing
Loading...
Searching...
No Matches
tcspc::pqt3_picoharp300_event Struct Reference

Description

Binary record interpretation for PicoHarp 300 T3 Format.

RecType 0x00010303.

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 -> u16np
 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.

Static Public Member Functions

static constexpr auto make_external_marker (u16np nsync, u8np marker_bits) -> pqt3_picoharp300_event
 Make an event representing an external marker.
static constexpr auto make_nonspecial (u16np nsync, u8np channel, u16np dtime) -> pqt3_picoharp300_event
 Make an event representing a non-special (photon) event.
static constexpr auto make_nsync_overflow () noexcept -> pqt3_picoharp300_event
 Make an event representing an nsync overflow.
static constexpr auto nsync_overflow_count () noexcept -> u16np
 Read the nsync overflow count if this event represents 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 = 65536
 The nsync overflow period of this event type.

Friends

auto operator<< (std::ostream &stream, pqt3_picoharp300_event const &event) -> std::ostream &
 Stream insertion operator.
auto operator== (pqt3_picoharp300_event const &lhs, pqt3_picoharp300_event const &rhs) noexcept -> bool=default
 Equality comparison operator.

Member Function Documentation

◆ make_external_marker()

constexpr auto tcspc::pqt3_picoharp300_event::make_external_marker ( u16np nsync,
u8np marker_bits ) -> pqt3_picoharp300_event
inlinestaticconstexpr

Make an event representing an external marker.

Parameters
nsyncthe nsync count; 0 to 65,535
marker_bitsthe marker bitmask; 1 to 15 (0 is forbidden)
Returns
event

◆ make_nonspecial()

constexpr auto tcspc::pqt3_picoharp300_event::make_nonspecial ( u16np nsync,
u8np channel,
u16np dtime ) -> pqt3_picoharp300_event
inlinestaticconstexpr

Make an event representing a non-special (photon) event.

Parameters
nsyncthe nsync count; 0 to 65,535
channelthe channel; 0 to 14
dtimethe difference time; 0 to 4095
Returns
event

◆ make_nsync_overflow()

constexpr auto tcspc::pqt3_picoharp300_event::make_nsync_overflow ( ) -> pqt3_picoharp300_event
inlinestaticconstexprnoexcept

Make an event representing an nsync overflow.

Returns
event

The documentation for this struct was generated from the following file: