DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
dfmessages
include
dfmessages
HSIEvent.hpp
Go to the documentation of this file.
1
8
9
#ifndef DFMESSAGES_INCLUDE_DFMESSAGES_HSIEVENT_HPP_
10
#define DFMESSAGES_INCLUDE_DFMESSAGES_HSIEVENT_HPP_
11
12
#include "
daqdataformats/Types.hpp
"
13
#include "
dfmessages/Types.hpp
"
14
15
#include "
serialization/Serialization.hpp
"
16
17
#include <cstddef>
18
#include <limits>
19
20
namespace
dunedaq
{
21
namespace
dfmessages
{
25
struct
HSIEvent
26
{
27
uint32_t
header
{ 0 };
28
uint32_t
signal_map
{ 0 };
29
daqdataformats::timestamp_t
timestamp
{
dfmessages::TypeDefaults::s_invalid_timestamp
};
30
uint32_t
sequence_counter
{ 0 };
31
run_number_t
run_number
{ 0 };
32
33
HSIEvent
() =
default
;
34
43
explicit
HSIEvent
(uint32_t head,
// NOLINT(build/unsigned)
44
uint32_t signals,
// NOLINT(build/unsigned)
45
daqdataformats::timestamp_t
ts,
46
uint32_t seq_count,
// NOLINT(build/unsigned)
47
run_number_t
run_num)
// NOLINT(build/unsigned)
48
:
header
(head)
49
,
signal_map
(signals)
50
,
timestamp
(ts)
51
,
sequence_counter
(seq_count)
52
,
run_number
(run_num)
53
{}
54
55
DUNE_DAQ_SERIALIZE
(
HSIEvent
,
header
,
signal_map
,
timestamp
,
sequence_counter
,
run_number
);
56
};
57
static_assert
(
sizeof
(
HSIEvent
) == 24,
"HSIEvent size unexpected!"
);
58
static_assert
(offsetof(
HSIEvent
, header) == 0,
"HSIEvent header field not at expected offset!"
);
59
static_assert
(offsetof(
HSIEvent
, signal_map) == 4,
"HSIEvent signal_map field not at expected offset!"
);
60
static_assert
(offsetof(
HSIEvent
, timestamp) == 8,
"HSIEvent timestamp field not at expected offset!"
);
61
static_assert
(offsetof(
HSIEvent
, sequence_counter) == 16,
"HSIEvent sequence_counter field not at expected offset!"
);
62
static_assert
(offsetof(
HSIEvent
, run_number) == 20,
"HSIEvent run_number field not at expected offset!"
);
63
}
// namespace dfmessages
64
65
DUNE_DAQ_SERIALIZABLE
(
dfmessages::HSIEvent
,
"HSIEvent"
);
66
67
}
// namespace dunedaq
68
69
#endif
// DFMESSAGES_INCLUDE_DFMESSAGES_HSIEVENT_HPP_
Serialization.hpp
DUNE_DAQ_SERIALIZABLE
#define DUNE_DAQ_SERIALIZABLE(Type, typestring)
Macro to define a type as serializable, so it can be sent over the network.
Definition
Serialization.hpp:47
Types.hpp
Types.hpp
dunedaq::daqdataformats::timestamp_t
uint64_t timestamp_t
Type used to represent DUNE timing system timestamps.
Definition
Types.hpp:26
dunedaq::dfmessages
Dataflow Messages.
Definition
DataRequest.hpp:21
dunedaq::dfmessages::run_number_t
daqdataformats::run_number_t run_number_t
Copy daqdataformats::run_number_t.
Definition
Types.hpp:34
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::daqdataformats::TypeDefaults::s_invalid_timestamp
static constexpr timestamp_t s_invalid_timestamp
Definition
Types.hpp:52
dunedaq::dfmessages::HSIEvent
A message used to convey an HSI event.
Definition
HSIEvent.hpp:26
dunedaq::dfmessages::HSIEvent::header
uint32_t header
Header field. Only contains HSI device ID at the moment // NOLINT(build/unsigned).
Definition
HSIEvent.hpp:27
dunedaq::dfmessages::HSIEvent::HSIEvent
HSIEvent(uint32_t head, uint32_t signals, daqdataformats::timestamp_t ts, uint32_t seq_count, run_number_t run_num)
Construct a HSIEvent message.
Definition
HSIEvent.hpp:43
dunedaq::dfmessages::HSIEvent::DUNE_DAQ_SERIALIZE
DUNE_DAQ_SERIALIZE(HSIEvent, header, signal_map, timestamp, sequence_counter, run_number)
dunedaq::dfmessages::HSIEvent::timestamp
daqdataformats::timestamp_t timestamp
Timestamp of HSI event.
Definition
HSIEvent.hpp:29
dunedaq::dfmessages::HSIEvent::signal_map
uint32_t signal_map
Bit map of signals. 1 bit, 1 signal // NOLINT(build/unsigned).
Definition
HSIEvent.hpp:28
dunedaq::dfmessages::HSIEvent::HSIEvent
HSIEvent()=default
dunedaq::dfmessages::HSIEvent::run_number
run_number_t run_number
Definition
HSIEvent.hpp:31
dunedaq::dfmessages::HSIEvent::sequence_counter
uint32_t sequence_counter
Event sequence number // NOLINT(build/unsigned).
Definition
HSIEvent.hpp:30
Generated on
for DUNE-DAQ by
1.17.0