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

Description

Binary record interpretation for 16-byte Swabian time tag.

This has the same size and memory layout as the Tag struct in the Swabian Time Tagger C++ API, which is also the format used by the Python API CustomMeasurement class.

Public Types

enum class  tag_type : u8 {
  time_tag = 0 , error = 1 , overflow_begin = 2 , overflow_end = 3 ,
  missed_events = 4
}
 8-bit type for the type field.

Public Member Functions

constexpr auto channel () const noexcept -> i32np
 Read the channel if this is a time tag or missed events event.
constexpr auto missed_event_count () const noexcept -> u16np
 Read the missed event count if this is a missed events event.
constexpr auto time () const noexcept -> i64np
 Read the time (picoseconds).
constexpr auto type () const noexcept -> tag_type
 Read the event type.

Static Public Member Functions

static constexpr auto make_error (i64np time) noexcept -> swabian_tag_event
 Make an event representing an error.
static constexpr auto make_missed_events (i64np time, i32np channel, u16np count) noexcept -> swabian_tag_event
 Make an event representing a missed event count.
static constexpr auto make_overflow_begin (i64np time) noexcept -> swabian_tag_event
 Make an event representing the beginning of an overflow interval.
static constexpr auto make_overflow_end (i64np time) noexcept -> swabian_tag_event
 Make an event representing the end of an overflow interval.
static constexpr auto make_time_tag (i64np time, i32np channel) noexcept -> swabian_tag_event
 Make an event representing a time tag.

Public Attributes

std::array< std::byte, 16 > bytes
 Bytes of the 16-byte format from Swabian API.

Friends

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

Member Function Documentation

◆ make_error()

constexpr auto tcspc::swabian_tag_event::make_error ( i64np time) -> swabian_tag_event
inlinestaticconstexprnoexcept

Make an event representing an error.

Parameters
timethe timestamp
Returns
event

◆ make_missed_events()

constexpr auto tcspc::swabian_tag_event::make_missed_events ( i64np time,
i32np channel,
u16np count ) -> swabian_tag_event
inlinestaticconstexprnoexcept

Make an event representing a missed event count.

Parameters
timethe timestamp
channelthe channel
countnumber of missed events
Returns
event

◆ make_overflow_begin()

constexpr auto tcspc::swabian_tag_event::make_overflow_begin ( i64np time) -> swabian_tag_event
inlinestaticconstexprnoexcept

Make an event representing the beginning of an overflow interval.

Parameters
timethe timestamp
Returns
event

◆ make_overflow_end()

constexpr auto tcspc::swabian_tag_event::make_overflow_end ( i64np time) -> swabian_tag_event
inlinestaticconstexprnoexcept

Make an event representing the end of an overflow interval.

Parameters
timethe timestamp
Returns
event

◆ make_time_tag()

constexpr auto tcspc::swabian_tag_event::make_time_tag ( i64np time,
i32np channel ) -> swabian_tag_event
inlinestaticconstexprnoexcept

Make an event representing a time tag.

Parameters
timethe timestamp
channelthe channel
Returns
event

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