DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
trgdataformats
include
trgdataformats
TriggerObjectOverlay.hpp
Go to the documentation of this file.
1
18
19
#ifndef TRGDATAFORMATS_INCLUDE_TRGDATAFORMATS_TRIGGEROBJECTOVERLAY_HPP_
20
#define TRGDATAFORMATS_INCLUDE_TRGDATAFORMATS_TRIGGEROBJECTOVERLAY_HPP_
21
22
#include "
trgdataformats/TriggerActivityData.hpp
"
23
#include "
trgdataformats/TriggerCandidateData.hpp
"
24
#include "
trgdataformats/TriggerPrimitive.hpp
"
25
26
#include <algorithm>
27
#include <span>
28
29
namespace
dunedaq::trgdataformats
{
30
31
template
<
class
DataType,
class
InputType>
32
struct
TriggerObjectOverlay
33
{
34
using
data_t
= DataType;
35
using
input_t
= InputType;
36
data_t
data
;
37
uint64_t
n_inputs
;
// NOLINT(build/unsigned)
38
#pragma GCC diagnostic push
39
#pragma GCC diagnostic ignored "-Wpedantic"
40
input_t
inputs
[];
// Non-standard flexible array member, but alternatives are worse
41
#pragma GCC diagnostic pop
42
43
void
set_inputs
(std::span<const input_t> in)
44
{
45
n_inputs
=
static_cast<
uint64_t
>
(in.size());
46
std::copy(in.begin(), in.end(),
inputs
);
47
}
48
};
49
50
using
TriggerActivity
=
TriggerObjectOverlay<TriggerActivityData, TriggerPrimitive>
;
51
52
using
TriggerCandidate
=
TriggerObjectOverlay<TriggerCandidateData, TriggerActivityData>
;
53
54
}
// namespace dunedaq::trgdataformats
55
56
#endif
// TRGDATAFORMATS_INCLUDE_TRGDATAFORMATS_TRIGGEROBJECTOVERLAY_HPP_
TriggerActivityData.hpp
TriggerCandidateData.hpp
dunedaq::trgdataformats
Definition
TriggerCandidateData.hxx:2
dunedaq::trgdataformats::TriggerActivity
TriggerObjectOverlay< TriggerActivityData, TriggerPrimitive > TriggerActivity
Definition
TriggerObjectOverlay.hpp:50
dunedaq::trgdataformats::TriggerCandidate
TriggerObjectOverlay< TriggerCandidateData, TriggerActivityData > TriggerCandidate
Definition
TriggerObjectOverlay.hpp:52
dunedaq::trgdataformats::TriggerObjectOverlay
Definition
TriggerObjectOverlay.hpp:33
dunedaq::trgdataformats::TriggerObjectOverlay< TriggerActivityData, TriggerPrimitive >::inputs
input_t inputs[]
Definition
TriggerObjectOverlay.hpp:40
dunedaq::trgdataformats::TriggerObjectOverlay::data_t
DataType data_t
Definition
TriggerObjectOverlay.hpp:34
dunedaq::trgdataformats::TriggerObjectOverlay< TriggerActivityData, TriggerPrimitive >::n_inputs
uint64_t n_inputs
Definition
TriggerObjectOverlay.hpp:37
dunedaq::trgdataformats::TriggerObjectOverlay< TriggerActivityData, TriggerPrimitive >::data
data_t data
Definition
TriggerObjectOverlay.hpp:36
dunedaq::trgdataformats::TriggerObjectOverlay::set_inputs
void set_inputs(std::span< const input_t > in)
Definition
TriggerObjectOverlay.hpp:43
dunedaq::trgdataformats::TriggerObjectOverlay::input_t
InputType input_t
Definition
TriggerObjectOverlay.hpp:35
TriggerPrimitive.hpp
Generated on
for DUNE-DAQ by
1.18.0