DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dunedaq
sourcecode
timing
include
timing
definitions.hpp
Go to the documentation of this file.
1
11
#ifndef TIMING_INCLUDE_TIMING_DEFINITIONS_HPP_
12
#define TIMING_INCLUDE_TIMING_DEFINITIONS_HPP_
13
14
#include "
TimingIssues.hpp
"
15
16
#include "
logging/Logging.hpp
"
17
18
#include <cmath>
19
#include <cstdint>
20
#include <map>
21
#include <string>
22
#include <vector>
23
24
namespace
dunedaq
{
25
namespace
timing
{
26
27
typedef
std::map<std::string, uint32_t>
Snapshot
;
// NOLINT(build/unsigned)
28
29
enum
BoardType
30
{
31
kBoardFMC
,
32
kBoardSim
,
33
kBoardPC059
,
34
kBoardMicrozed
,
35
kBoardTLU
,
36
kBoardFIB
,
37
kBoardMIB
,
38
kBoardPC069
,
39
kBoardGIB
,
40
kBoardGIBV3
,
41
kBoardUnknown
= 256
42
};
43
44
enum
CarrierType
45
{
46
kCarrierEnclustraA35
,
47
kCarrierKC705
,
48
kCarrierMicrozed
,
49
kCarrierATFC
,
50
kCarrierAFC
,
51
kCarrierNexusVideo
,
52
kCarrierTrenzTE0712
,
// include fpga part number?
53
kCarrierUnknown
= 256
54
};
55
56
enum
DesignType
57
{
58
kDesignMaster
,
59
kDesignOuroborosSim
,
60
kDesignOuroboros
,
61
kDesignTest
,
62
kDesignEndpoint
,
63
kDesignFanout
,
64
kDesignOverlord
,
65
kDesignEndpoBICRT
,
66
kDesignChronos
,
67
kDesignBoreas
,
68
kDesignKerberos
,
69
kDesignGaia
,
70
kDesignCharon
,
71
kDesignHades
,
72
kDesignUnknown
= 256
73
};
74
75
enum
BoardRevision
76
{
77
kFMCRev1
,
78
kFMCRev2
,
79
kFMCRev3
,
80
kFMCRev4
,
81
kPC059Rev1
,
82
kTLURev1
,
83
kSIMRev1
,
84
kFIBRev1
,
85
kMIBRev1
,
86
kPC069a
,
87
kMIBRev2
,
88
kGIBRev1
,
89
kPC069b
,
90
kFIBRev2
,
91
kPC069c
,
92
kBoardRevisionUnknown
= 256
93
};
94
95
enum
FixedLengthCommandType
96
{
97
TimeSync
,
98
Echo
,
99
SpillStart
,
100
SpillStop
,
101
RunStart
,
102
RunStop
,
103
WibCalib
,
104
SSPCalib
,
105
FakeTrig0
,
106
FakeTrig1
,
107
FakeTrig2
,
108
FakeTrig3
,
109
BeamTrig
,
110
NoBeamTrig
,
111
ExtFakeTrig
112
};
113
114
enum
ClockSource
115
{
116
kInput0 = 0,
117
kInput1 = 1,
118
kInput2 = 2,
119
kInput3 = 3,
120
kFreeRun = 255
121
};
122
123
enum
TimestampSource
124
{
125
kUpstream = 0,
126
kSoftware = 1,
127
kMixed
= 2
128
};
129
130
enum
TimestampEpoch
131
{
132
kUNIX
= 0,
133
kCustom
= 1
134
};
135
136
enum
TimestampTimebase
137
{
138
kTAI
= 0,
139
kUTC
= 1
140
};
141
142
struct
ActiveEndpointConfig
143
{
144
std::string
id
;
145
uint32_t
adr
;
// NOLINT(build/unsigned)
146
int32_t
fanout
;
147
uint32_t
mux
;
// NOLINT(build/unsigned)
148
bool
active
;
149
uint32_t
cdelay
;
// NOLINT(build/unsigned)
150
uint32_t
fdelay
;
// NOLINT(build/unsigned)
151
uint32_t
pdelay
;
// NOLINT(build/unsigned)
152
153
ActiveEndpointConfig
(std::string aId,
154
uint32_t aAdr,
// NOLINT(build/unsigned)
155
int32_t aFanout = -1,
156
uint32_t aMux = 0,
// NOLINT(build/unsigned)
157
uint32_t coarse_delayay = 0,
// NOLINT(build/unsigned)
158
uint32_t fine_delayay = 0)
// NOLINT(build/unsigned)
159
:
id
(aId)
160
,
adr
(aAdr)
161
,
fanout
(aFanout)
162
,
mux
(aMux)
163
,
active
(true)
164
,
cdelay
(coarse_delayay)
165
,
fdelay
(fine_delayay)
166
,
pdelay
(0)
167
{}
168
};
169
170
}
// namespace timing
171
}
// namespace dunedaq
172
173
#endif
// TIMING_INCLUDE_TIMING_DEFINITIONS_HPP_
TimingIssues.hpp
Logging.hpp
dunedaq::timing::ClockSource
ClockSource
Definition
definitions.hpp:115
dunedaq::timing::DesignType
DesignType
Definition
definitions.hpp:57
dunedaq::timing::kDesignFanout
@ kDesignFanout
Definition
definitions.hpp:63
dunedaq::timing::kDesignOuroborosSim
@ kDesignOuroborosSim
Definition
definitions.hpp:59
dunedaq::timing::kDesignKerberos
@ kDesignKerberos
Definition
definitions.hpp:68
dunedaq::timing::kDesignCharon
@ kDesignCharon
Definition
definitions.hpp:70
dunedaq::timing::kDesignEndpoBICRT
@ kDesignEndpoBICRT
Definition
definitions.hpp:65
dunedaq::timing::kDesignGaia
@ kDesignGaia
Definition
definitions.hpp:69
dunedaq::timing::kDesignBoreas
@ kDesignBoreas
Definition
definitions.hpp:67
dunedaq::timing::kDesignOverlord
@ kDesignOverlord
Definition
definitions.hpp:64
dunedaq::timing::kDesignOuroboros
@ kDesignOuroboros
Definition
definitions.hpp:60
dunedaq::timing::kDesignHades
@ kDesignHades
Definition
definitions.hpp:71
dunedaq::timing::kDesignMaster
@ kDesignMaster
Definition
definitions.hpp:58
dunedaq::timing::kDesignEndpoint
@ kDesignEndpoint
Definition
definitions.hpp:62
dunedaq::timing::kDesignChronos
@ kDesignChronos
Definition
definitions.hpp:66
dunedaq::timing::kDesignUnknown
@ kDesignUnknown
Definition
definitions.hpp:72
dunedaq::timing::kDesignTest
@ kDesignTest
Definition
definitions.hpp:61
dunedaq::timing::CarrierType
CarrierType
Definition
definitions.hpp:45
dunedaq::timing::kCarrierTrenzTE0712
@ kCarrierTrenzTE0712
Definition
definitions.hpp:52
dunedaq::timing::kCarrierAFC
@ kCarrierAFC
Definition
definitions.hpp:50
dunedaq::timing::kCarrierNexusVideo
@ kCarrierNexusVideo
Definition
definitions.hpp:51
dunedaq::timing::kCarrierATFC
@ kCarrierATFC
Definition
definitions.hpp:49
dunedaq::timing::kCarrierUnknown
@ kCarrierUnknown
Definition
definitions.hpp:53
dunedaq::timing::kCarrierMicrozed
@ kCarrierMicrozed
Definition
definitions.hpp:48
dunedaq::timing::kCarrierEnclustraA35
@ kCarrierEnclustraA35
Definition
definitions.hpp:46
dunedaq::timing::kCarrierKC705
@ kCarrierKC705
Definition
definitions.hpp:47
dunedaq::timing::TimestampSource
TimestampSource
Definition
definitions.hpp:124
dunedaq::timing::kMixed
@ kMixed
Definition
definitions.hpp:127
dunedaq::timing::BoardRevision
BoardRevision
Definition
definitions.hpp:76
dunedaq::timing::kFMCRev2
@ kFMCRev2
Definition
definitions.hpp:78
dunedaq::timing::kFMCRev4
@ kFMCRev4
Definition
definitions.hpp:80
dunedaq::timing::kMIBRev1
@ kMIBRev1
Definition
definitions.hpp:85
dunedaq::timing::kFMCRev1
@ kFMCRev1
Definition
definitions.hpp:77
dunedaq::timing::kGIBRev1
@ kGIBRev1
Definition
definitions.hpp:88
dunedaq::timing::kFIBRev2
@ kFIBRev2
Definition
definitions.hpp:90
dunedaq::timing::kSIMRev1
@ kSIMRev1
Definition
definitions.hpp:83
dunedaq::timing::kPC069a
@ kPC069a
Definition
definitions.hpp:86
dunedaq::timing::kBoardRevisionUnknown
@ kBoardRevisionUnknown
Definition
definitions.hpp:92
dunedaq::timing::kTLURev1
@ kTLURev1
Definition
definitions.hpp:82
dunedaq::timing::kPC059Rev1
@ kPC059Rev1
Definition
definitions.hpp:81
dunedaq::timing::kPC069c
@ kPC069c
Definition
definitions.hpp:91
dunedaq::timing::kMIBRev2
@ kMIBRev2
Definition
definitions.hpp:87
dunedaq::timing::kPC069b
@ kPC069b
Definition
definitions.hpp:89
dunedaq::timing::kFMCRev3
@ kFMCRev3
Definition
definitions.hpp:79
dunedaq::timing::kFIBRev1
@ kFIBRev1
Definition
definitions.hpp:84
dunedaq::timing::Snapshot
std::map< std::string, uint32_t > Snapshot
Definition
definitions.hpp:27
dunedaq::timing::BoardType
BoardType
Definition
definitions.hpp:30
dunedaq::timing::kBoardUnknown
@ kBoardUnknown
Definition
definitions.hpp:41
dunedaq::timing::kBoardTLU
@ kBoardTLU
Definition
definitions.hpp:35
dunedaq::timing::kBoardMicrozed
@ kBoardMicrozed
Definition
definitions.hpp:34
dunedaq::timing::kBoardSim
@ kBoardSim
Definition
definitions.hpp:32
dunedaq::timing::kBoardPC069
@ kBoardPC069
Definition
definitions.hpp:38
dunedaq::timing::kBoardFIB
@ kBoardFIB
Definition
definitions.hpp:36
dunedaq::timing::kBoardGIB
@ kBoardGIB
Definition
definitions.hpp:39
dunedaq::timing::kBoardPC059
@ kBoardPC059
Definition
definitions.hpp:33
dunedaq::timing::kBoardFMC
@ kBoardFMC
Definition
definitions.hpp:31
dunedaq::timing::kBoardGIBV3
@ kBoardGIBV3
Definition
definitions.hpp:40
dunedaq::timing::kBoardMIB
@ kBoardMIB
Definition
definitions.hpp:37
dunedaq::timing::TimestampTimebase
TimestampTimebase
Definition
definitions.hpp:137
dunedaq::timing::kTAI
@ kTAI
Definition
definitions.hpp:138
dunedaq::timing::kUTC
@ kUTC
Definition
definitions.hpp:139
dunedaq::timing::FixedLengthCommandType
FixedLengthCommandType
Definition
definitions.hpp:96
dunedaq::timing::NoBeamTrig
@ NoBeamTrig
Definition
definitions.hpp:110
dunedaq::timing::FakeTrig1
@ FakeTrig1
Definition
definitions.hpp:106
dunedaq::timing::SSPCalib
@ SSPCalib
Definition
definitions.hpp:104
dunedaq::timing::FakeTrig2
@ FakeTrig2
Definition
definitions.hpp:107
dunedaq::timing::RunStart
@ RunStart
Definition
definitions.hpp:101
dunedaq::timing::FakeTrig3
@ FakeTrig3
Definition
definitions.hpp:108
dunedaq::timing::RunStop
@ RunStop
Definition
definitions.hpp:102
dunedaq::timing::Echo
@ Echo
Definition
definitions.hpp:98
dunedaq::timing::TimeSync
@ TimeSync
Definition
definitions.hpp:97
dunedaq::timing::SpillStop
@ SpillStop
Definition
definitions.hpp:100
dunedaq::timing::BeamTrig
@ BeamTrig
Definition
definitions.hpp:109
dunedaq::timing::FakeTrig0
@ FakeTrig0
Definition
definitions.hpp:105
dunedaq::timing::ExtFakeTrig
@ ExtFakeTrig
Definition
definitions.hpp:111
dunedaq::timing::SpillStart
@ SpillStart
Definition
definitions.hpp:99
dunedaq::timing::WibCalib
@ WibCalib
Definition
definitions.hpp:103
dunedaq::timing::TimestampEpoch
TimestampEpoch
Definition
definitions.hpp:131
dunedaq::timing::kCustom
@ kCustom
Definition
definitions.hpp:133
dunedaq::timing::kUNIX
@ kUNIX
Definition
definitions.hpp:132
dunedaq
The DUNE-DAQ namespace.
Definition
CommonIssues.hpp:19
timing
Definition
__init__.py:1
dunedaq::timing::ActiveEndpointConfig
Definition
definitions.hpp:143
dunedaq::timing::ActiveEndpointConfig::fanout
int32_t fanout
Definition
definitions.hpp:146
dunedaq::timing::ActiveEndpointConfig::adr
uint32_t adr
Definition
definitions.hpp:145
dunedaq::timing::ActiveEndpointConfig::fdelay
uint32_t fdelay
Definition
definitions.hpp:150
dunedaq::timing::ActiveEndpointConfig::pdelay
uint32_t pdelay
Definition
definitions.hpp:151
dunedaq::timing::ActiveEndpointConfig::mux
uint32_t mux
Definition
definitions.hpp:147
dunedaq::timing::ActiveEndpointConfig::ActiveEndpointConfig
ActiveEndpointConfig(std::string aId, uint32_t aAdr, int32_t aFanout=-1, uint32_t aMux=0, uint32_t coarse_delayay=0, uint32_t fine_delayay=0)
Definition
definitions.hpp:153
dunedaq::timing::ActiveEndpointConfig::cdelay
uint32_t cdelay
Definition
definitions.hpp:149
dunedaq::timing::ActiveEndpointConfig::active
bool active
Definition
definitions.hpp:148
dunedaq::timing::ActiveEndpointConfig::id
std::string id
Definition
definitions.hpp:144
Generated on Thu Dec 25 2025 for DUNE-DAQ by
1.12.0