Jpp 19.3.0-rc.1
the software that should make you happy
Loading...
Searching...
No Matches
JTRIGGER::JTriggeredEvent Class Reference

Auxiliary class to build JDAQEvent for a triggered event. More...

#include <JTriggeredEvent.hh>

Inheritance diagram for JTRIGGER::JTriggeredEvent:
KM3NETDAQ::JDAQEvent KM3NETDAQ::JDAQPreamble KM3NETDAQ::JDAQEventHeader KM3NETDAQ::JDAQAbstractPreamble TObject KM3NETDAQ::JDAQHeader KM3NETDAQ::JDAQTriggerCounter KM3NETDAQ::JDAQTriggerMask KM3NETDAQ::JDAQChronometer

Public Member Functions

 JTriggeredEvent ()
 Default constructor.
 
 JTriggeredEvent (const JDAQChronometer &chronometer, const KM3NETDAQ::JTriggerMask_t &mask, const JHitR1 &hit, const JTimesliceRouter &timesliceRouter, const JModuleRouter &moduleRouter, const double TMaxLocal_ns, const double DMax_m, const JTimeRange &snapshot=JTimeRange::DEFAULT_RANGE())
 Constructor based on an L1 coincidence hit.
 
 JTriggeredEvent (const JEvent &event, const JTimesliceRouter &timesliceRouter, const JModuleRouter &moduleRouter, const double TMaxLocal_ns, const JTimeRange &snapshot=JTimeRange::DEFAULT_RANGE())
 Constructor.
 
template<class T >
const std::vector< T > & getHits () const
 Get container with hits.
 
template<class T >
std::vector< T > & getHits ()
 Get container with hits.
 
template<>
const std::vector< JDAQTriggeredHit > & getHits () const
 Get triggered hits.
 
template<>
const std::vector< JDAQKeyHit > & getHits () const
 Get snapshot hits.
 
template<>
std::vector< JDAQTriggeredHit > & getHits ()
 Get triggered hits.
 
template<>
std::vector< JDAQKeyHit > & getHits ()
 Get snapshot hits.
 
template<class T >
const_iterator< T > begin () const
 Get begin of data.
 
template<>
JDAQEvent::const_iterator< JDAQTriggeredHitbegin () const
 Get begin of triggered hits.
 
template<>
JDAQEvent::const_iterator< JDAQSnapshotHitbegin () const
 Get begin of snapshot hits.
 
template<class T >
const_iterator< T > end () const
 Get end of data.
 
template<>
JDAQEvent::const_iterator< JDAQTriggeredHitend () const
 Get end of triggered hits.
 
template<>
JDAQEvent::const_iterator< JDAQSnapshotHitend () const
 Get end of snapshot hits.
 
template<class T >
const_reverse_iterator< T > rbegin () const
 Get reverse begin of data.
 
template<>
JDAQEvent::const_reverse_iterator< JDAQTriggeredHitrbegin () const
 Get reverse begin of triggered hits.
 
template<>
JDAQEvent::const_reverse_iterator< JDAQSnapshotHitrbegin () const
 Get reverse begin of snapshot hits.
 
template<class T >
const_reverse_iterator< T > rend () const
 Get reverse end of data.
 
template<>
JDAQEvent::const_reverse_iterator< JDAQTriggeredHitrend () const
 Get reverse end of triggered hits.
 
template<>
JDAQEvent::const_reverse_iterator< JDAQSnapshotHitrend () const
 Get reverse end of snapshot hits.
 
template<class T >
unsigned int size () const
 Get number of hits.
 
template<>
unsigned int size () const
 Get number of triggered hits.
 
template<>
unsigned int size () const
 Get number of snapshot hits.
 
template<class T >
bool empty () const
 Check emptyness of hit container.
 
template<>
bool empty () const
 Check emptyness of triggered data.
 
template<>
bool empty () const
 Check emptyness of snapshot data.
 
void clear ()
 Clear event.
 
void push_back (const JDAQKeyHit &hit)
 Add hit.
 
void push_back (const JDAQTriggeredHit &hit)
 Add hit.
 
JTriggerMask_t getTriggerMask (const JDAQSnapshotHit &hit) const
 Get trigger mask of given hit.
 
JTriggerMask_t getTriggerMask () const
 Get trigger mask.
 
std::ostream & print (std::ostream &out, const bool lpr=false) const
 Print DAQ Event.
 
 ClassDef (JDAQEvent, 4)
 
 ClassDef (JDAQPreamble, 1)
 
 ClassDef (JDAQEventHeader, 3)
 
 ClassDef (JDAQHeader, 2)
 
 ClassDef (JDAQChronometer, 3)
 
 ClassDef (JDAQTriggerCounter, 1)
 
 ClassDef (JDAQTriggerMask, 1)
 
int getLength () const
 Get length.
 
int getDataType () const
 Get data type.
 
 ClassDefNV (JDAQAbstractPreamble, 1)
 
const JDAQEventHeadergetDAQEventHeader () const
 Get DAQ event header.
 
bool is_same (const JDAQEventHeader &header) const
 Check if header is same.
 
unsigned int getOverlays () const
 Get number of overlays.
 
const JDAQHeadergetDAQHeader () const
 Get DAQ header.
 
void setDAQHeader (const JDAQHeader &header)
 Set DAQ header.
 
const JDAQChronometergetDAQChronometer () const
 Get DAQ chronometer.
 
void setDAQChronometer (const JDAQChronometer &chronometer)
 Set DAQ chronometer.
 
int getDetectorID () const
 Get detector identifier.
 
int getRunNumber () const
 Get run number.
 
int getFrameIndex () const
 Get frame index.
 
JDAQUTCExtended getTimesliceStart () const
 Get start of timeslice.
 
void setRunNumber (const int run)
 Set run number.
 
void setFrameIndex (const int frame_index)
 Set frame index.
 
void setTimesliceStart (const JDAQUTCExtended &timeslice_start)
 Set timeslice start time.
 
const JDAQTriggerCountergetDAQTriggerCounter () const
 Get DAQ trigger counter.
 
JTriggerCounter_t getCounter () const
 Get trigger counter.
 
void setCounter (const JTriggerCounter_t counter)
 Set trigger counter.
 
JTriggerCounter_t next ()
 Increment trigger counter.
 
const JDAQTriggerMaskgetDAQTriggerMask () const
 Get DAQ trigger mask.
 
void setDAQTriggerMask (const JDAQTriggerMask &mask)
 Set trigger mask.
 
void setTriggerMask (const JTriggerMask_t mask)
 Set trigger mask.
 
JDAQTriggerMaskaddTriggerMask (const JDAQTriggerMask &mask)
 Add trigger bit pattern.
 
bool hasTriggerMask (const JDAQTriggerMask &mask) const
 Has trigger bit pattern.
 
JDAQTriggerMaskaddTriggerBit (const unsigned int bit)
 Add trigger bit.
 
bool hasTriggerBit (const unsigned int bit) const
 Check trigger bit.
 
std::string toString () const
 Convert trigger mask.
 

Static Public Member Functions

static JTriggerMask_t getTriggerMask (const JDAQTriggeredHit &hit)
 Get trigger mask of given hit.
 
template<class T >
static JDAQPreamble getDAQPreamble (const T &object)
 Get DAQ preamble.
 
static JDAQTriggerCountergetInstance ()
 Get reference to unique instance of this class object.
 
static void reset ()
 Reset counter of unique instance of this class object.
 
static JDAQTriggerMask valueOf (const std::string &buffer)
 Extract trigger mask.
 

Protected Attributes

std::vector< JDAQTriggeredHittriggeredHits
 
std::vector< JDAQSnapshotHitsnapshotHits
 
int length
 
int type
 
unsigned int overlays
 
int detector_id
 
int run
 
int frame_index
 
JDAQUTCExtended timeslice_start
 
JTriggerCounter_t trigger_counter
 
JTriggerMask_t trigger_mask
 

Detailed Description

Auxiliary class to build JDAQEvent for a triggered event.

The data structure includes a list of raw data hits that triggered the event and optionally a list of all raw hits within a preset time window around the event (snapshot).

Definition at line 48 of file JTriggeredEvent.hh.

Constructor & Destructor Documentation

◆ JTriggeredEvent() [1/3]

JTRIGGER::JTriggeredEvent::JTriggeredEvent ( )
inline

Default constructor.

Definition at line 57 of file JTriggeredEvent.hh.

57 :
58 JDAQEvent()
59 {}
JDAQEvent()
Default constructor.
Definition JDAQEvent.hh:45

◆ JTriggeredEvent() [2/3]

JTRIGGER::JTriggeredEvent::JTriggeredEvent ( const JDAQChronometer & chronometer,
const KM3NETDAQ::JTriggerMask_t & mask,
const JHitR1 & hit,
const JTimesliceRouter & timesliceRouter,
const JModuleRouter & moduleRouter,
const double TMaxLocal_ns,
const double DMax_m,
const JTimeRange & snapshot = JTimeRange::DEFAULT_RANGE() )
inline

Constructor based on an L1 coincidence hit.

Only the module where the L1 coincidence hit happened will contribute to the triggered hits in the event. Only modules within a shpere of radius DMax_m will contribute to the snapshot hits.

Parameters
chronometerdaq chronometer
masktrigger mask
hithit
timesliceRoutertimeslice router
moduleRoutermodule router
TMaxLocal_nsMaximal time for L1 [ns]
DMax_mMaximal distance for snapshot.
snapshottime before first (<= 0) and after last (>= 0) triggered hit [ns].

Definition at line 76 of file JTriggeredEvent.hh.

83 :
84 JDAQEvent()
85 {
86 using namespace std;
87 using namespace JPP;
88
89 // Header
90
91 setDAQChronometer(chronometer);
92
93 trigger_mask = mask;
94
95 // Triggered hits
96
97 const JTimeRange timeRange(hit.getT1(), hit.getT1() + TMaxLocal_ns);
98
99 const JModule& root = moduleRouter.getModule(hit.getModuleID());
100
101 const JDAQSuperFrame& frame = timesliceRouter.getSuperFrame(hit.getModuleIdentifier());
102 const JDAQFrameSubset subset = timesliceRouter.getFrameSubset(hit.getModuleIdentifier(), getTimeRange(timeRange, root));
103
104 for (JDAQFrameSubset::const_iterator i = subset.begin(); i != subset.end(); ++i) {
105
106 const JCalibration& calibration = root.getPMT(i->getPMT()).getCalibration();
107
108 const double t1 = getTime(*i, calibration);
109
110 if (!frame.testHighRateVeto(i->getPMT()) &&
111 !frame.testFIFOStatus (i->getPMT())) {
112
113 if (timeRange(t1)) {
114 triggeredHits.push_back(JDAQTriggeredHit(hit.getModuleIdentifier(), *i, mask));
115 }
116 }
117 }
118
119 // Snapshot hits
120
121 if (snapshot.is_valid()) {
122
123 const JTimeRange timeRange(hit.getT1() + snapshot.getLowerLimit() - TMaxLocal_ns,
124 hit.getT1() + snapshot.getUpperLimit() + TMaxLocal_ns);
125
126 for (JDAQTimeslice::const_iterator super_frame = timesliceRouter->begin(); super_frame != timesliceRouter->end(); ++super_frame) {
127
128 if (!super_frame->empty()) {
129
130 if (moduleRouter.hasModule(super_frame->getModuleID())) {
131
132 const JModule& module = moduleRouter.getModule(super_frame->getModuleID());
133
134 if (getDistance(root.getPosition(), hit.getPosition()) < DMax_m) {
135
136 const JDAQFrameSubset& subset = timesliceRouter.getFrameSubset(super_frame->getModuleIdentifier(), getTimeRange(timeRange, module));
137
138 for (JDAQFrameSubset::const_iterator i = subset.begin(); i != subset.end(); ++i) {
139
140 const JCalibration& calibration = module.getPMT(i->getPMT()).getCalibration();
141
142 const double t1 = getTime(*i, calibration);
143
144 if (timeRange(t1)) {
145 snapshotHits.push_back(JDAQSnapshotHit(super_frame->getModuleIdentifier(), *i));
146 }
147 }
148 }
149 }
150 }
151 }
152 }
153 }
Data structure for time calibration.
bool hasModule(const JObjectID &id) const
Has module.
const JModule & getModule(const JObjectID &id) const
Get module parameters.
Data structure for a composite optical module.
Definition JModule.hh:75
const JPosition3D & getPosition() const
Get position.
bool is_valid() const
Check validity of range.
Definition JRange.hh:311
T getLowerLimit() const
Get lower limit.
Definition JRange.hh:202
T getUpperLimit() const
Get upper limit.
Definition JRange.hh:213
double getT1() const
Get leading edge of hit.
void setDAQChronometer(const JDAQChronometer &chronometer)
Set DAQ chronometer.
std::vector< JDAQSnapshotHit > snapshotHits
Definition JDAQEvent.hh:265
std::vector< JDAQTriggeredHit > triggeredHits
Definition JDAQEvent.hh:264
bool testFIFOStatus() const
Test FIFO status.
bool testHighRateVeto() const
Test high-rate veto status.
Subset of data frame.
Definition JDAQFrame.hh:24
const_iterator end() const
Definition JDAQFrame.hh:44
const_iterator begin() const
Definition JDAQFrame.hh:43
Hit data structure.
Definition JDAQHit.hh:35
int getModuleID() const
Get module identifier.
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
Data frame of one optical module.
double getDistance(const JFirst_t &first, const JSecond_t &second)
Get distance between objects.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
const char * getTime()
Get current local time conform ISO-8601 standard.
JDAQKeyHit JDAQSnapshotHit
Definition JDAQEvent.hh:24
Definition root.py:1
Calibration.
Definition JHead.hh:330
JDAQFrameSubset getFrameSubset(const JDAQModuleIdentifier &module, const JTimeRange &timeRange) const
Get subset of frame given module identifier and range of hit times.
const JDAQSuperFrame & getSuperFrame(const JDAQModuleIdentifier &module) const
Get super frame.

◆ JTriggeredEvent() [3/3]

JTRIGGER::JTriggeredEvent::JTriggeredEvent ( const JEvent & event,
const JTimesliceRouter & timesliceRouter,
const JModuleRouter & moduleRouter,
const double TMaxLocal_ns,
const JTimeRange & snapshot = JTimeRange::DEFAULT_RANGE() )
inline

Constructor.

Parameters
eventevent
timesliceRoutertimeslice router
moduleRoutermodule router
TMaxLocal_nsMaximal time for L1 [ns]
snapshottime before first (<= 0) and after last (>= 0) triggered hit [ns].

Definition at line 164 of file JTriggeredEvent.hh.

168 :
169 JDAQEvent()
170 {
171 using namespace std;
172
173 // Header
174
175 setDAQChronometer(event.getDAQChronometer());
176
177 overlays = event.getOverlays();
178 trigger_mask = event.getTriggerMask();
179
180 // Triggered hits
181
182 for (JEvent::const_iterator hit = event.begin(); hit != event.end(); ++hit) {
183
184 const JTimeRange timeRange(hit->getT1(), hit->getT1() + TMaxLocal_ns);
185
186 const JModule& module = moduleRouter.getModule(hit->getModuleID());
187
188 const JDAQSuperFrame& frame = timesliceRouter.getSuperFrame(hit->getModuleIdentifier());
189 const JDAQFrameSubset subset = timesliceRouter.getFrameSubset(hit->getModuleIdentifier(), getTimeRange(timeRange, module));
190
191 for (JDAQFrameSubset::const_iterator i = subset.begin(); i != subset.end(); ++i) {
192
193 const JCalibration& calibration = module.getPMT(i->getPMT()).getCalibration();
194
195 const double t1 = getTime(*i, calibration);
196
197 if (!frame.testHighRateVeto(i->getPMT()) &&
198 !frame.testFIFOStatus (i->getPMT())) {
199
200 if (timeRange(t1)) {
201 triggeredHits.push_back(JDAQTriggeredHit(hit->getModuleIdentifier(), *i, hit->getTriggerMask()));
202 }
203 }
204 }
205 }
206
207 if (!triggeredHits.empty()) {
208
209 // combine trigger masks of identical hits and remove redundant hits
210
211 sort(triggeredHits.begin(), triggeredHits.end(), less<JDAQKeyHit>());
212
214
215 for (vector<JDAQTriggeredHit>::const_iterator i = triggeredHits.begin(); ++i != triggeredHits.end(); ) {
216
217 if (static_cast<const JDAQKeyHit&>(*i) == static_cast<const JDAQKeyHit&>(*out))
218 out->addTriggerMask(*i);
219 else
220 *(++out) = *i;
221 }
222
223 triggeredHits.resize(distance(triggeredHits.begin(), ++out));
224 }
225
226
227 // Snapshot hits
228
229 if (snapshot.is_valid()) {
230
231 const JTimeRange timeRange(event. begin()->getT1() + snapshot.getLowerLimit() - TMaxLocal_ns,
232 event.rbegin()->getT1() + snapshot.getUpperLimit() + TMaxLocal_ns);
233
234 for (JDAQTimeslice::const_iterator super_frame = timesliceRouter->begin(); super_frame != timesliceRouter->end(); ++super_frame) {
235
236 if (!super_frame->empty()) {
237
238 if (moduleRouter.hasModule(super_frame->getModuleID())) {
239
240 const JModule& module = moduleRouter.getModule(super_frame->getModuleID());
241
242 const JDAQFrameSubset& subset = timesliceRouter.getFrameSubset(super_frame->getModuleIdentifier(), getTimeRange(timeRange, module));
243
244 for (JDAQFrameSubset::const_iterator i = subset.begin(); i != subset.end(); ++i) {
245
246 const JCalibration& calibration = module.getPMT(i->getPMT()).getCalibration();
247
248 const double t1 = getTime(*i, calibration);
249
250 if (timeRange(t1)) {
251 snapshotHits.push_back(JDAQSnapshotHit(super_frame->getModuleIdentifier(), *i));
252 }
253 }
254 }
255 }
256 }
257 }
258 }
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
const_iterator< T > begin() const
Get begin of data.

Member Function Documentation

◆ getHits() [1/6]

template<class T >
const std::vector< T > & KM3NETDAQ::JDAQEvent::getHits ( ) const
inherited

Get container with hits.

Returns
container with hits

◆ getHits() [2/6]

template<class T >
std::vector< T > & KM3NETDAQ::JDAQEvent::getHits ( )
inherited

Get container with hits.

Returns
container with hits

◆ getHits() [3/6]

template<>
const std::vector< JDAQTriggeredHit > & KM3NETDAQ::JDAQEvent::getHits ( ) const
inherited

Get triggered hits.

Returns
triggered hits

Definition at line 17 of file externals/km3net-dataformat/src/JDAQEvent.cc.

18 {
19 return triggeredHits;
20 }

◆ getHits() [4/6]

template<>
const std::vector< JDAQKeyHit > & KM3NETDAQ::JDAQEvent::getHits ( ) const
inherited

Get snapshot hits.

Returns
snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

30 {
31 return snapshotHits;
32 }

◆ getHits() [5/6]

template<>
std::vector< JDAQTriggeredHit > & KM3NETDAQ::JDAQEvent::getHits ( )
inherited

Get triggered hits.

Returns
triggered hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

42 {
43 return triggeredHits;
44 }

◆ getHits() [6/6]

template<>
std::vector< JDAQKeyHit > & KM3NETDAQ::JDAQEvent::getHits ( )
inherited

Get snapshot hits.

Returns
snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

54 {
55 return snapshotHits;
56 }

◆ begin() [1/3]

template<class T >
const_iterator< T > KM3NETDAQ::JDAQEvent::begin ( ) const
inherited

Get begin of data.

Returns
begin of data

◆ begin() [2/3]

template<>
JDAQEvent::const_iterator< JDAQTriggeredHit > KM3NETDAQ::JDAQEvent::begin ( ) const
inherited

Get begin of triggered hits.

Returns
begin triggered hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

66 {
67 return triggeredHits.begin();
68 }

◆ begin() [3/3]

template<>
JDAQEvent::const_iterator< JDAQSnapshotHit > KM3NETDAQ::JDAQEvent::begin ( ) const
inherited

Get begin of snapshot hits.

Returns
begin snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

90 {
91 return snapshotHits.begin();
92 }

◆ end() [1/3]

template<class T >
const_iterator< T > KM3NETDAQ::JDAQEvent::end ( ) const
inherited

Get end of data.

Returns
end of data

◆ end() [2/3]

template<>
JDAQEvent::const_iterator< JDAQTriggeredHit > KM3NETDAQ::JDAQEvent::end ( ) const
inherited

Get end of triggered hits.

Returns
end triggered hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

78 {
79 return triggeredHits.end();
80 }

◆ end() [3/3]

template<>
JDAQEvent::const_iterator< JDAQSnapshotHit > KM3NETDAQ::JDAQEvent::end ( ) const
inherited

Get end of snapshot hits.

Returns
end snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

102 {
103 return snapshotHits.end();
104 }

◆ rbegin() [1/3]

template<class T >
const_reverse_iterator< T > KM3NETDAQ::JDAQEvent::rbegin ( ) const
inherited

Get reverse begin of data.

Returns
begin of data

◆ rbegin() [2/3]

template<>
JDAQEvent::const_reverse_iterator< JDAQTriggeredHit > KM3NETDAQ::JDAQEvent::rbegin ( ) const
inherited

Get reverse begin of triggered hits.

Returns
begin triggered hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

114 {
115 return triggeredHits.rbegin();
116 }

◆ rbegin() [3/3]

template<>
JDAQEvent::const_reverse_iterator< JDAQSnapshotHit > KM3NETDAQ::JDAQEvent::rbegin ( ) const
inherited

Get reverse begin of snapshot hits.

Returns
begin snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

138 {
139 return snapshotHits.rbegin();
140 }

◆ rend() [1/3]

template<class T >
const_reverse_iterator< T > KM3NETDAQ::JDAQEvent::rend ( ) const
inherited

Get reverse end of data.

Returns
end of data

◆ rend() [2/3]

template<>
JDAQEvent::const_reverse_iterator< JDAQTriggeredHit > KM3NETDAQ::JDAQEvent::rend ( ) const
inherited

Get reverse end of triggered hits.

Returns
end triggered hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

126 {
127 return triggeredHits.rend();
128 }

◆ rend() [3/3]

template<>
JDAQEvent::const_reverse_iterator< JDAQSnapshotHit > KM3NETDAQ::JDAQEvent::rend ( ) const
inherited

Get reverse end of snapshot hits.

Returns
end snapshot hits

Definition at line 29 of file externals/km3net-dataformat/src/JDAQEvent.cc.

150 {
151 return snapshotHits.rend();
152 }

◆ size() [1/3]

template<class T >
unsigned int KM3NETDAQ::JDAQEvent::size ( ) const
inherited

Get number of hits.

Returns
number of hits

◆ size() [2/3]

template<>
unsigned int KM3NETDAQ::JDAQEvent::size ( ) const
inherited

Get number of triggered hits.

Returns
number of triggered hits

Definition at line 161 of file externals/km3net-dataformat/src/JDAQEvent.cc.

162 {
163 return triggeredHits.size();
164 }

◆ size() [3/3]

template<>
unsigned int KM3NETDAQ::JDAQEvent::size ( ) const
inherited

Get number of snapshot hits.

Returns
number of snapshot hits

Definition at line 173 of file externals/km3net-dataformat/src/JDAQEvent.cc.

174 {
175 return snapshotHits.size();
176 }

◆ empty() [1/3]

template<class T >
bool KM3NETDAQ::JDAQEvent::empty ( ) const
inherited

Check emptyness of hit container.

Returns
true if empty; else false

◆ empty() [2/3]

template<>
bool KM3NETDAQ::JDAQEvent::empty ( ) const
inherited

Check emptyness of triggered data.

Returns
emptyness triggered hits

Definition at line 185 of file externals/km3net-dataformat/src/JDAQEvent.cc.

186 {
187 return triggeredHits.empty();
188 }

◆ empty() [3/3]

template<>
bool KM3NETDAQ::JDAQEvent::empty ( ) const
inherited

Check emptyness of snapshot data.

Returns
emptyness snapshot hits

Definition at line 197 of file externals/km3net-dataformat/src/JDAQEvent.cc.

198 {
199 return snapshotHits.empty();
200 }

◆ clear()

void KM3NETDAQ::JDAQEvent::clear ( )
inlineinherited

Clear event.

Definition at line 191 of file JDAQEvent.hh.

192 {
193 snapshotHits .clear();
194 triggeredHits.clear();
195 }

◆ push_back() [1/2]

void KM3NETDAQ::JDAQEvent::push_back ( const JDAQKeyHit & hit)
inlineinherited

Add hit.

Parameters
hithit

Definition at line 203 of file JDAQEvent.hh.

204 {
205 snapshotHits.push_back(hit);
206 }

◆ push_back() [2/2]

void KM3NETDAQ::JDAQEvent::push_back ( const JDAQTriggeredHit & hit)
inlineinherited

Add hit.

Parameters
hithit

Definition at line 214 of file JDAQEvent.hh.

215 {
216 triggeredHits.push_back(hit);
217 }

◆ getTriggerMask() [1/3]

static JTriggerMask_t KM3NETDAQ::JDAQEvent::getTriggerMask ( const JDAQTriggeredHit & hit)
inlinestaticinherited

Get trigger mask of given hit.

Parameters
hithit
Returns
trigger mask

Definition at line 226 of file JDAQEvent.hh.

227 {
228 return hit.getTriggerMask();
229 }
JTriggerMask_t getTriggerMask() const
Get trigger mask.

◆ getTriggerMask() [2/3]

JTriggerMask_t KM3NETDAQ::JDAQEvent::getTriggerMask ( const JDAQSnapshotHit & hit) const
inlineinherited

Get trigger mask of given hit.

Parameters
hithit
Returns
trigger mask

Definition at line 238 of file JDAQEvent.hh.

239 {
240 for (std::vector<JDAQTriggeredHit>::const_iterator i = triggeredHits.begin(); i != triggeredHits.end(); ++i) {
241 if (*i == hit) {
242 return i->getTriggerMask();
243 }
244 }
245
246 return JTriggerMask_t(0);
247 }
unsigned long long int JTriggerMask_t
Type definition of trigger mask.

◆ getTriggerMask() [3/3]

JTriggerMask_t KM3NETDAQ::JDAQTriggerMask::getTriggerMask ( ) const
inlineinherited

Get trigger mask.

Returns
trigger mask

Definition at line 106 of file JDAQTriggerMask.hh.

107 {
108 return trigger_mask;
109 }

◆ print()

std::ostream & KM3NETDAQ::JDAQEvent::print ( std::ostream & out,
const bool lpr = false ) const
inherited

Print DAQ Event.

Parameters
outoutput stream
lprlong print
Returns
output stream

Definition at line 226 of file externals/km3net-dataformat/src/JDAQEvent.cc.

227 {
228 using namespace std;
229
230 out << this->ClassName() << endl;
231 out << dynamic_cast<const JDAQPreamble&> (*this) << endl;
232 out << dynamic_cast<const JDAQChronometer&>(*this) << endl;
233
234 out << "Trigger counter " << this->getCounter() << endl;
235 out << "Trigger mask (hex) " << hex << this->getTriggerMask() << dec << endl;
236 out << "Overlays " << this->getOverlays() << endl;
237 out << "Triggered hits " << this->size<JDAQTriggeredHit>() << endl;
238 out << "Snapshot hits " << this->size<JDAQSnapshotHit> () << endl;
239
240 {
241 typedef JDAQTriggeredHit JHit_t;
242
243 for (JDAQEvent::const_iterator<JHit_t> hit = this->begin<JHit_t>(); hit != this->end<JHit_t>(); ++hit) {
244 out << setw(5) << hit->getModuleID() << ' '
245 << setw(2) << (int) hit->getPMT() << ' '
246 << setw(10) << (int) hit->getT() << ' '
247 << setw(3) << (int) hit->getToT() << ' '
248 << setw(10) << hex << hit->getTriggerMask() << dec << endl;
249 }
250 }
251
252 if (lpr) {
253
254 typedef JDAQSnapshotHit JHit_t;
255
256 for (JDAQEvent::const_iterator<JHit_t> hit = this->begin<JHit_t>(); hit != this->end<JHit_t>(); ++hit) {
257 out << setw(5) << hit->getModuleID() << ' '
258 << setw(2) << (int) hit->getPMT() << ' '
259 << setw(10) << (int) hit->getT() << ' '
260 << setw(3) << (int) hit->getToT() << endl;
261 }
262 }
263
264 return out;
265 }
unsigned int getOverlays() const
Get number of overlays.
Template const_iterator.
Definition JDAQEvent.hh:68
const_iterator< T > end() const
Get end of data.
unsigned int size() const
Get number of hits.
JTriggerMask_t getTriggerMask() const
Get trigger mask.
JTriggerCounter_t getCounter() const
Get trigger counter.
Auxiliary class to set-up Hit.
Definition JSirene.hh:58

◆ ClassDef() [1/7]

KM3NETDAQ::JDAQEvent::ClassDef ( JDAQEvent ,
4  )
inherited

◆ ClassDef() [2/7]

KM3NETDAQ::JDAQPreamble::ClassDef ( JDAQPreamble ,
1  )
inherited

◆ ClassDef() [3/7]

KM3NETDAQ::JDAQEventHeader::ClassDef ( JDAQEventHeader ,
3  )
inherited

◆ ClassDef() [4/7]

KM3NETDAQ::JDAQHeader::ClassDef ( JDAQHeader ,
2  )
inherited

◆ ClassDef() [5/7]

KM3NETDAQ::JDAQChronometer::ClassDef ( JDAQChronometer ,
3  )
inherited

◆ ClassDef() [6/7]

KM3NETDAQ::JDAQTriggerCounter::ClassDef ( JDAQTriggerCounter ,
1  )
inherited

◆ ClassDef() [7/7]

KM3NETDAQ::JDAQTriggerMask::ClassDef ( JDAQTriggerMask ,
1  )
inherited

◆ getDAQPreamble()

template<class T >
static JDAQPreamble KM3NETDAQ::JDAQPreamble::getDAQPreamble ( const T & object)
inlinestaticinherited

Get DAQ preamble.

This method should be used for binary I/O to get the actual data for the given object.
To this end, the following method should be overloaded for the corresponding data type.

   size_t  getSizeof(const T&);
Parameters
objectobject
Returns
preamble

Definition at line 76 of file JDAQPreamble.hh.

77 {
78 static JDAQPreamble preamble;
79
80 preamble.length = getSizeof(object);
82
83 return preamble;
84 }
friend size_t getSizeof()
Definition of method to get size of data type.
int getDataType()
Template definition for method returning data type.

◆ getLength()

int KM3NETDAQ::JDAQAbstractPreamble::getLength ( ) const
inlineinherited

Get length.

Returns
number of bytes

Definition at line 49 of file JDAQAbstractPreamble.hh.

50 {
51 return length;
52 }

◆ getDataType()

int KM3NETDAQ::JDAQAbstractPreamble::getDataType ( ) const
inlineinherited

Get data type.

Returns
data type

Definition at line 60 of file JDAQAbstractPreamble.hh.

61 {
62 return type;
63 }

◆ ClassDefNV()

KM3NETDAQ::JDAQAbstractPreamble::ClassDefNV ( JDAQAbstractPreamble ,
1  )
inherited

◆ getDAQEventHeader()

const JDAQEventHeader & KM3NETDAQ::JDAQEventHeader::getDAQEventHeader ( ) const
inlineinherited

Get DAQ event header.

Returns
DAQ event header

Definition at line 46 of file JDAQEventHeader.hh.

47 {
48 return static_cast<const JDAQEventHeader&>(*this);
49 }

◆ is_same()

bool KM3NETDAQ::JDAQEventHeader::is_same ( const JDAQEventHeader & header) const
inlineinherited

Check if header is same.

Parameters
headerDAQ event header
Returns
true if event headers are same; else false

Definition at line 58 of file JDAQEventHeader.hh.

59 {
60 return (this->getDetectorID() == header.getDetectorID() &&
61 this->getRunNumber() == header.getRunNumber() &&
62 this->getFrameIndex() == header.getFrameIndex() &&
63 this->getCounter() == header.getCounter());
64 }
int getDetectorID() const
Get detector identifier.
int getRunNumber() const
Get run number.
int getFrameIndex() const
Get frame index.

◆ getOverlays()

unsigned int KM3NETDAQ::JDAQEventHeader::getOverlays ( ) const
inlineinherited

Get number of overlays.

Returns
number of overlays

Definition at line 72 of file JDAQEventHeader.hh.

73 {
74 return overlays;
75 }

◆ getDAQHeader()

const JDAQHeader & KM3NETDAQ::JDAQHeader::getDAQHeader ( ) const
inlineinherited

Get DAQ header.

Returns
DAQ header

Definition at line 49 of file JDAQHeader.hh.

50 {
51 return static_cast<const JDAQHeader&>(*this);
52 }

◆ setDAQHeader()

void KM3NETDAQ::JDAQHeader::setDAQHeader ( const JDAQHeader & header)
inlineinherited

Set DAQ header.

Parameters
headerDAQ header

Definition at line 60 of file JDAQHeader.hh.

61 {
62 static_cast<JDAQHeader&>(*this) = header;
63 }

◆ getDAQChronometer()

const JDAQChronometer & KM3NETDAQ::JDAQChronometer::getDAQChronometer ( ) const
inlineinherited

Get DAQ chronometer.

Returns
DAQ chronometer

Definition at line 88 of file JDAQChronometer.hh.

89 {
90 return static_cast<const JDAQChronometer&>(*this);
91 }

◆ setDAQChronometer()

void KM3NETDAQ::JDAQChronometer::setDAQChronometer ( const JDAQChronometer & chronometer)
inlineinherited

Set DAQ chronometer.

Parameters
chronometerDAQ chronometer

Definition at line 99 of file JDAQChronometer.hh.

100 {
101 static_cast<JDAQChronometer&>(*this) = chronometer;
102 }

◆ getDetectorID()

int KM3NETDAQ::JDAQChronometer::getDetectorID ( ) const
inlineinherited

Get detector identifier.

Returns
detector identifier

Definition at line 110 of file JDAQChronometer.hh.

111 {
112 return detector_id;
113 }

◆ getRunNumber()

int KM3NETDAQ::JDAQChronometer::getRunNumber ( ) const
inlineinherited

Get run number.

Returns
run number

Definition at line 121 of file JDAQChronometer.hh.

122 {
123 return run;
124 }

◆ getFrameIndex()

int KM3NETDAQ::JDAQChronometer::getFrameIndex ( ) const
inlineinherited

Get frame index.

Returns
frame index

Definition at line 132 of file JDAQChronometer.hh.

133 {
134 return frame_index;
135 }

◆ getTimesliceStart()

JDAQUTCExtended KM3NETDAQ::JDAQChronometer::getTimesliceStart ( ) const
inlineinherited

Get start of timeslice.

Returns
timeslice start

Definition at line 144 of file JDAQChronometer.hh.

145 {
146 return timeslice_start;
147 }

◆ setRunNumber()

void KM3NETDAQ::JDAQChronometer::setRunNumber ( const int run)
inlineinherited

Set run number.

Parameters
runrun number

Definition at line 155 of file JDAQChronometer.hh.

156 {
157 this->run = run;
158 }

◆ setFrameIndex()

void KM3NETDAQ::JDAQChronometer::setFrameIndex ( const int frame_index)
inlineinherited

Set frame index.

Parameters
frame_indexframe index

Definition at line 166 of file JDAQChronometer.hh.

167 {
168 this->frame_index = frame_index;
169 }

◆ setTimesliceStart()

void KM3NETDAQ::JDAQChronometer::setTimesliceStart ( const JDAQUTCExtended & timeslice_start)
inlineinherited

Set timeslice start time.

Parameters
timeslice_starttimeslice start time

Definition at line 177 of file JDAQChronometer.hh.

178 {
179 this->timeslice_start = timeslice_start;
180 }

◆ getInstance()

static JDAQTriggerCounter & KM3NETDAQ::JDAQTriggerCounter::getInstance ( )
inlinestaticinherited

Get reference to unique instance of this class object.

Returns
reference to this class object

Definition at line 66 of file JDAQTriggerCounter.hh.

67 {
68 static JDAQTriggerCounter counter(0);
69
70 return counter;
71 }
Auxiliary class to count triggers.

◆ getDAQTriggerCounter()

const JDAQTriggerCounter & KM3NETDAQ::JDAQTriggerCounter::getDAQTriggerCounter ( ) const
inlineinherited

Get DAQ trigger counter.

Returns
DAQ trigger counter

Definition at line 79 of file JDAQTriggerCounter.hh.

80 {
81 return static_cast<const JDAQTriggerCounter&>(*this);
82 }

◆ reset()

static void KM3NETDAQ::JDAQTriggerCounter::reset ( )
inlinestaticinherited

Reset counter of unique instance of this class object.

Definition at line 88 of file JDAQTriggerCounter.hh.

89 {
91 }
static JDAQTriggerCounter & getInstance()
Get reference to unique instance of this class object.

◆ getCounter()

JTriggerCounter_t KM3NETDAQ::JDAQTriggerCounter::getCounter ( ) const
inlineinherited

Get trigger counter.

Returns
counter value

Definition at line 99 of file JDAQTriggerCounter.hh.

100 {
101 return trigger_counter;
102 }

◆ setCounter()

void KM3NETDAQ::JDAQTriggerCounter::setCounter ( const JTriggerCounter_t counter)
inlineinherited

Set trigger counter.

Parameters
countercounter value

Definition at line 110 of file JDAQTriggerCounter.hh.

111 {
112 this->trigger_counter = counter;
113 }

◆ next()

JTriggerCounter_t KM3NETDAQ::JDAQTriggerCounter::next ( )
inlineinherited

Increment trigger counter.

Returns
counter value

Definition at line 121 of file JDAQTriggerCounter.hh.

122 {
123 return trigger_counter++;
124 }

◆ getDAQTriggerMask()

const JDAQTriggerMask & KM3NETDAQ::JDAQTriggerMask::getDAQTriggerMask ( ) const
inlineinherited

Get DAQ trigger mask.

Returns
DAQ trigger mask

Definition at line 95 of file JDAQTriggerMask.hh.

96 {
97 return static_cast<const JDAQTriggerMask&>(*this);
98 }
Auxiliary class for trigger mask.

◆ setDAQTriggerMask()

void KM3NETDAQ::JDAQTriggerMask::setDAQTriggerMask ( const JDAQTriggerMask & mask)
inlineinherited

Set trigger mask.

Parameters
masktrigger mask

Definition at line 117 of file JDAQTriggerMask.hh.

118 {
120 }

◆ setTriggerMask()

void KM3NETDAQ::JDAQTriggerMask::setTriggerMask ( const JTriggerMask_t mask)
inlineinherited

Set trigger mask.

Parameters
masktrigger mask

Definition at line 128 of file JDAQTriggerMask.hh.

129 {
130 trigger_mask = mask;
131 }

◆ addTriggerMask()

JDAQTriggerMask & KM3NETDAQ::JDAQTriggerMask::addTriggerMask ( const JDAQTriggerMask & mask)
inlineinherited

Add trigger bit pattern.

Parameters
masktrigger mask
Returns
trigger mask

Definition at line 140 of file JDAQTriggerMask.hh.

141 {
143
144 return *this;
145 }

◆ hasTriggerMask()

bool KM3NETDAQ::JDAQTriggerMask::hasTriggerMask ( const JDAQTriggerMask & mask) const
inlineinherited

Has trigger bit pattern.

Parameters
masktrigger mask
Returns
true if one of the bits is set; else false

Definition at line 154 of file JDAQTriggerMask.hh.

155 {
156 return trigger_mask & mask.trigger_mask;
157 }

◆ addTriggerBit()

JDAQTriggerMask & KM3NETDAQ::JDAQTriggerMask::addTriggerBit ( const unsigned int bit)
inlineinherited

Add trigger bit.

Parameters
bittrigger bit
Returns
trigger mask

Definition at line 166 of file JDAQTriggerMask.hh.

167 {
169
170 return *this;
171 }
JTriggerMask_t getTriggerMask(const unsigned int bit)
Convert trigger bit to trigger mask.

◆ hasTriggerBit()

bool KM3NETDAQ::JDAQTriggerMask::hasTriggerBit ( const unsigned int bit) const
inlineinherited

Check trigger bit.

Parameters
bittrigger bit
Returns
true if bit is set; else false

Definition at line 180 of file JDAQTriggerMask.hh.

181 {
183 }

◆ valueOf()

static JDAQTriggerMask KM3NETDAQ::JDAQTriggerMask::valueOf ( const std::string & buffer)
inlinestaticinherited

Extract trigger mask.

Parameters
buffertrigger bit pattern (i.e. sequence of '0' and '1').
Returns
trigger mask

Definition at line 192 of file JDAQTriggerMask.hh.

193 {
195
196 unsigned int bit = 0;
197
198 for (std::string::const_reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_TRIGGER_BITS; ++i, ++bit) {
199 if (*i == '1') {
200 trigger_mask.addTriggerBit(bit);
201 }
202 }
203
204 return trigger_mask;
205 }

◆ toString()

std::string KM3NETDAQ::JDAQTriggerMask::toString ( ) const
inlineinherited

Convert trigger mask.

Returns
trigger bit pattern (i.e. sequence of '0' and '1').

Definition at line 213 of file JDAQTriggerMask.hh.

214 {
215 std::string buffer(NUMBER_OF_TRIGGER_BITS, '0');
216
217 unsigned int bit = 0;
218
219 for (std::string::reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_TRIGGER_BITS; ++i, ++bit) {
220 if (hasTriggerBit(bit)) {
221 *i = '1';
222 }
223 }
224
225 return buffer;
226 }
bool hasTriggerBit(const unsigned int bit) const
Check trigger bit.

Member Data Documentation

◆ triggeredHits

std::vector<JDAQTriggeredHit> KM3NETDAQ::JDAQEvent::triggeredHits
protectedinherited

Definition at line 264 of file JDAQEvent.hh.

◆ snapshotHits

std::vector<JDAQSnapshotHit> KM3NETDAQ::JDAQEvent::snapshotHits
protectedinherited

Definition at line 265 of file JDAQEvent.hh.

◆ length

int KM3NETDAQ::JDAQAbstractPreamble::length
protectedinherited

Definition at line 69 of file JDAQAbstractPreamble.hh.

◆ type

int KM3NETDAQ::JDAQAbstractPreamble::type
protectedinherited

Definition at line 70 of file JDAQAbstractPreamble.hh.

◆ overlays

unsigned int KM3NETDAQ::JDAQEventHeader::overlays
protectedinherited

Definition at line 82 of file JDAQEventHeader.hh.

◆ detector_id

int KM3NETDAQ::JDAQChronometer::detector_id
protectedinherited

Definition at line 187 of file JDAQChronometer.hh.

◆ run

int KM3NETDAQ::JDAQChronometer::run
protectedinherited

Definition at line 188 of file JDAQChronometer.hh.

◆ frame_index

int KM3NETDAQ::JDAQChronometer::frame_index
protectedinherited

Definition at line 189 of file JDAQChronometer.hh.

◆ timeslice_start

JDAQUTCExtended KM3NETDAQ::JDAQChronometer::timeslice_start
protectedinherited

Definition at line 190 of file JDAQChronometer.hh.

◆ trigger_counter

JTriggerCounter_t KM3NETDAQ::JDAQTriggerCounter::trigger_counter
protectedinherited

Definition at line 131 of file JDAQTriggerCounter.hh.

◆ trigger_mask

JTriggerMask_t KM3NETDAQ::JDAQTriggerMask::trigger_mask
protectedinherited

Definition at line 267 of file JDAQTriggerMask.hh.


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