DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
daqdataformats
include
daqdataformats
TriggerRecordHeaderData.hpp
Go to the documentation of this file.
1
8
9
#ifndef DAQDATAFORMATS_INCLUDE_DAQDATAFORMATS_TRIGGERRECORDHEADERDATA_HPP_
10
#define DAQDATAFORMATS_INCLUDE_DAQDATAFORMATS_TRIGGERRECORDHEADERDATA_HPP_
11
12
#include "
daqdataformats/ComponentRequest.hpp
"
13
#include "
daqdataformats/SourceID.hpp
"
14
#include "
daqdataformats/Types.hpp
"
15
16
#include <cstddef>
17
#include <limits>
18
#include <ostream>
19
#include <string>
20
#include <vector>
21
22
namespace
dunedaq::daqdataformats
{
23
27
struct
TriggerRecordHeaderData
28
{
30
static
constexpr
uint32_t
s_trigger_record_header_magic
= 0x33334444;
// NOLINT(build/unsigned)
31
32
static
constexpr
uint32_t
s_trigger_record_header_version
= 5;
// NOLINT(build/unsigned)
33
static
constexpr
uint64_t
s_invalid_number_components
=
// NOLINT(build/unsigned)
34
std::numeric_limits<uint64_t>::max();
// NOLINT(build/unsigned)
35
36
static
constexpr
uint32_t
s_default_status_bits
= 0;
// NOLINT(build/unsigned)
37
38
uint32_t
trigger_record_header_marker
=
s_trigger_record_header_magic
;
// NOLINT(build/unsigned)
39
uint32_t
version
=
s_trigger_record_header_version
;
// NOLINT(build/unsigned)
40
41
trigger_number_t
trigger_number
{
TypeDefaults::s_invalid_trigger_number
};
42
44
timestamp_t
trigger_timestamp
{
TypeDefaults::s_invalid_timestamp
};
45
47
uint64_t
num_requested_components
{
s_invalid_number_components
};
// NOLINT(build/unsigned)
48
49
run_number_t
run_number
{
TypeDefaults::s_invalid_run_number
};
50
51
uint32_t
status_bits
{
s_default_status_bits
};
// NOLINT(build/unsigned)
52
54
trigger_type_t
trigger_type
{
TypeDefaults::s_invalid_trigger_type
};
55
57
sequence_number_t
sequence_number
{
TypeDefaults::s_invalid_sequence_number
};
58
60
sequence_number_t
max_sequence_number
{
TypeDefaults::s_invalid_sequence_number
};
61
62
uint32_t
unused
{ 0xFFFFFFFF };
// NOLINT(build/unsigned) Padding to ensure 64-bit alignment
63
64
SourceID
element_id
;
65
};
66
69
enum class
TriggerRecordStatusBits
:
size_t
70
{
71
kIncomplete
= 0,
72
kMismatch
= 1,
73
kUnassigned2
= 2,
74
kUnassigned3
= 3,
75
kUnassigned4
= 4,
76
kUnassigned5
= 5,
77
kUnassigned6
= 6,
78
kUnassigned7
= 7,
79
kUnassigned8
= 8,
80
kUnassigned9
= 9,
81
kUnassigned10
= 10,
82
kUnassigned11
= 11,
83
kUnassigned12
= 12,
84
kUnassigned13
= 13,
85
kUnassigned14
= 14,
86
kUnassigned15
= 15,
87
kUnassigned16
= 16,
88
kUnassigned17
= 17,
89
kUnassigned18
= 18,
90
kUnassigned19
= 19,
91
kUnassigned20
= 20,
92
kUnassigned21
= 21,
93
kUnassigned22
= 22,
94
kUnassigned23
= 23,
95
kUnassigned24
= 24,
96
kUnassigned25
= 25,
97
kUnassigned26
= 26,
98
kUnassigned27
= 27,
99
kUnassigned28
= 28,
100
kUnassigned29
= 29,
101
kUnassigned30
= 30,
102
kUnassigned31
= 31,
103
kInvalid
= 32
104
};
105
106
std::ostream&
107
operator<<
(std::ostream& o, TriggerRecordHeaderData
const
& hdr);
108
109
}
// namespace dunedaq::daqdataformats
110
111
#include "
detail/TriggerRecordHeaderData.hxx
"
112
113
#endif
// DAQDATAFORMATS_INCLUDE_DAQDATAFORMATS_TRIGGERRECORDHEADERDATA_HPP_
ComponentRequest.hpp
SourceID.hpp
TriggerRecordHeaderData.hxx
Types.hpp
dunedaq::daqdataformats
Definition
ComponentRequest.hpp:20
dunedaq::daqdataformats::run_number_t
uint32_t run_number_t
Definition
Types.hpp:17
dunedaq::daqdataformats::trigger_number_t
uint64_t trigger_number_t
Definition
Types.hpp:18
dunedaq::daqdataformats::TriggerRecordStatusBits
TriggerRecordStatusBits
This enumeration lists all defined status bits, as well as a short documentation of their meaning whe...
Definition
TriggerRecordHeaderData.hpp:70
dunedaq::daqdataformats::TriggerRecordStatusBits::kUnassigned6
@ kUnassigned6
Definition
TriggerRecordHeaderData.hpp:77
dunedaq::daqdataformats::TriggerRecordStatusBits::kMismatch
@ kMismatch
We have as many fragments as requested but they do not match the requested components.
Definition
TriggerRecordHeaderData.hpp:72
dunedaq::daqdataformats::TriggerRecordStatusBits::kUnassigned4
@ kUnassigned4
Definition
TriggerRecordHeaderData.hpp:75
dunedaq::daqdataformats::TriggerRecordStatusBits::kUnassigned2
@ kUnassigned2
Definition
TriggerRecordHeaderData.hpp:73
dunedaq::daqdataformats::TriggerRecordStatusBits::kUnassigned3
@ kUnassigned3
Definition
TriggerRecordHeaderData.hpp:74
dunedaq::daqdataformats::TriggerRecordStatusBits::kUnassigned5
@ kUnassigned5
Definition
TriggerRecordHeaderData.hpp:76
dunedaq::daqdataformats::sequence_number_t
uint16_t sequence_number_t
Type used to represent sequence within a trigger record.
Definition
Types.hpp:38
dunedaq::daqdataformats::timestamp_t
uint64_t timestamp_t
Type used to represent DUNE timing system timestamps.
Definition
Types.hpp:26
dunedaq::daqdataformats::trigger_type_t
uint64_t trigger_type_t
Type used to represent Trigger Decision trigger types.
Definition
Types.hpp:35
dunedaq::daqdataformats::operator<<
std::ostream & operator<<(std::ostream &o, ComponentRequest const &cr)
Definition
ComponentRequest.hxx:23
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned20
@ kUnassigned20
Definition
FragmentHeader.hpp:97
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned13
@ kUnassigned13
Definition
FragmentHeader.hpp:90
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned26
@ kUnassigned26
Definition
FragmentHeader.hpp:103
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned14
@ kUnassigned14
Definition
FragmentHeader.hpp:91
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned16
@ kUnassigned16
Definition
FragmentHeader.hpp:93
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned27
@ kUnassigned27
Definition
FragmentHeader.hpp:104
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned10
@ kUnassigned10
Definition
FragmentHeader.hpp:87
dunedaq::daqdataformats::FragmentStatusBits::kIncomplete
@ kIncomplete
Only part of the requested data is present in the fragment.
Definition
FragmentHeader.hpp:78
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned9
@ kUnassigned9
Definition
FragmentHeader.hpp:86
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned24
@ kUnassigned24
Definition
FragmentHeader.hpp:101
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned7
@ kUnassigned7
Definition
FragmentHeader.hpp:84
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned28
@ kUnassigned28
Definition
FragmentHeader.hpp:105
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned21
@ kUnassigned21
Definition
FragmentHeader.hpp:98
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned31
@ kUnassigned31
Definition
FragmentHeader.hpp:108
dunedaq::daqdataformats::FragmentStatusBits::kInvalid
@ kInvalid
Status bit 32 and higher are not valid (status_bits is only 32 bits).
Definition
FragmentHeader.hpp:109
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned18
@ kUnassigned18
Definition
FragmentHeader.hpp:95
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned25
@ kUnassigned25
Definition
FragmentHeader.hpp:102
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned19
@ kUnassigned19
Definition
FragmentHeader.hpp:96
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned29
@ kUnassigned29
Definition
FragmentHeader.hpp:106
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned23
@ kUnassigned23
Definition
FragmentHeader.hpp:100
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned11
@ kUnassigned11
Definition
FragmentHeader.hpp:88
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned15
@ kUnassigned15
Definition
FragmentHeader.hpp:92
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned17
@ kUnassigned17
Definition
FragmentHeader.hpp:94
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned22
@ kUnassigned22
Definition
FragmentHeader.hpp:99
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned12
@ kUnassigned12
Definition
FragmentHeader.hpp:89
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned30
@ kUnassigned30
Definition
FragmentHeader.hpp:107
dunedaq::daqdataformats::FragmentStatusBits::kUnassigned8
@ kUnassigned8
Definition
FragmentHeader.hpp:85
dunedaq::daqdataformats::SourceID
SourceID is a generalized representation of the source of a piece of data in the DAQ....
Definition
SourceID.hpp:32
dunedaq::daqdataformats::TriggerRecordHeaderData
Data fields associated with a TriggerRecordHeader.
Definition
TriggerRecordHeaderData.hpp:28
dunedaq::daqdataformats::TriggerRecordHeaderData::version
uint32_t version
Definition
TriggerRecordHeaderData.hpp:39
dunedaq::daqdataformats::TriggerRecordHeaderData::max_sequence_number
sequence_number_t max_sequence_number
Maximum sequence number of TriggerRecords corresponding to this trigger.
Definition
TriggerRecordHeaderData.hpp:60
dunedaq::daqdataformats::TriggerRecordHeaderData::trigger_number
trigger_number_t trigger_number
Definition
TriggerRecordHeaderData.hpp:41
dunedaq::daqdataformats::TriggerRecordHeaderData::sequence_number
sequence_number_t sequence_number
Sequence number of this TriggerRecord within the trigger response.
Definition
TriggerRecordHeaderData.hpp:57
dunedaq::daqdataformats::TriggerRecordHeaderData::element_id
SourceID element_id
Definition
TriggerRecordHeaderData.hpp:64
dunedaq::daqdataformats::TriggerRecordHeaderData::trigger_timestamp
timestamp_t trigger_timestamp
Timestamp of the TriggerDecision.
Definition
TriggerRecordHeaderData.hpp:44
dunedaq::daqdataformats::TriggerRecordHeaderData::num_requested_components
uint64_t num_requested_components
Number of ComponentRequest objects stored in the TriggerRecordHeader.
Definition
TriggerRecordHeaderData.hpp:47
dunedaq::daqdataformats::TriggerRecordHeaderData::status_bits
uint32_t status_bits
Definition
TriggerRecordHeaderData.hpp:51
dunedaq::daqdataformats::TriggerRecordHeaderData::trigger_type
trigger_type_t trigger_type
Type of the TriggerDecision.
Definition
TriggerRecordHeaderData.hpp:54
dunedaq::daqdataformats::TriggerRecordHeaderData::s_trigger_record_header_version
static constexpr uint32_t s_trigger_record_header_version
Definition
TriggerRecordHeaderData.hpp:32
dunedaq::daqdataformats::TriggerRecordHeaderData::trigger_record_header_marker
uint32_t trigger_record_header_marker
Definition
TriggerRecordHeaderData.hpp:38
dunedaq::daqdataformats::TriggerRecordHeaderData::s_trigger_record_header_magic
static constexpr uint32_t s_trigger_record_header_magic
Magic bytes used to identify a TriggerRecordHeaderData struct in a raw data stream.
Definition
TriggerRecordHeaderData.hpp:30
dunedaq::daqdataformats::TriggerRecordHeaderData::run_number
run_number_t run_number
Definition
TriggerRecordHeaderData.hpp:49
dunedaq::daqdataformats::TriggerRecordHeaderData::unused
uint32_t unused
Definition
TriggerRecordHeaderData.hpp:62
dunedaq::daqdataformats::TriggerRecordHeaderData::s_default_status_bits
static constexpr uint32_t s_default_status_bits
Definition
TriggerRecordHeaderData.hpp:36
dunedaq::daqdataformats::TriggerRecordHeaderData::s_invalid_number_components
static constexpr uint64_t s_invalid_number_components
Definition
TriggerRecordHeaderData.hpp:33
dunedaq::daqdataformats::TypeDefaults::s_invalid_sequence_number
static constexpr sequence_number_t s_invalid_sequence_number
Definition
Types.hpp:56
dunedaq::daqdataformats::TypeDefaults::s_invalid_trigger_type
static constexpr trigger_type_t s_invalid_trigger_type
Definition
Types.hpp:55
dunedaq::daqdataformats::TypeDefaults::s_invalid_trigger_number
static constexpr trigger_number_t s_invalid_trigger_number
Definition
Types.hpp:48
dunedaq::daqdataformats::TypeDefaults::s_invalid_timestamp
static constexpr timestamp_t s_invalid_timestamp
Definition
Types.hpp:52
dunedaq::daqdataformats::TypeDefaults::s_invalid_run_number
static constexpr run_number_t s_invalid_run_number
Definition
Types.hpp:47
Generated on
for DUNE-DAQ by
1.17.0