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

Data structure for input to trigger algorithm. More...

#include <JTriggerInput.hh>

Inheritance diagram for JTRIGGER::JTriggerInput:
KM3NETDAQ::JDAQChronometer std::vector< JHitR1 > JTRIGGER::JHitToolkit< JHit >

Public Member Functions

template<class JHit_t >
 JTriggerInput (const JTimeslice< JHit_t > &input)
 Constructor.
 
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.
 
 ClassDef (JDAQChronometer, 3)
 

Protected Attributes

int detector_id
 
int run
 
int frame_index
 
JDAQUTCExtended timeslice_start
 

Detailed Description

Data structure for input to trigger algorithm.

The input data for the trigger are time ordered and contain an end marker. The member methods size() and end() refer to the position before the end marker.

Definition at line 32 of file JTriggerInput.hh.

Constructor & Destructor Documentation

◆ JTriggerInput()

template<class JHit_t >
JTRIGGER::JTriggerInput::JTriggerInput ( const JTimeslice< JHit_t > & input)
inline

Constructor.

Parameters
inputinput data

Definition at line 44 of file JTriggerInput.hh.

44 :
47 {
48 size_t n = 0;
49
50 for (typename JTimeslice<JHit_t>::const_iterator frame = input.begin(); frame != input.end(); ++frame) {
51 n += frame->size();
52 }
53
54 this->reserve(n + 1); // reserve space for end marker
55 this->resize (n + 0); // reserve space for data
56
57 std::vector<JHitR1>::iterator out = this->begin();
58
59 for (typename JTimeslice<JHit_t>::const_iterator frame = input.begin(); frame != input.end(); ++frame) {
60
61 const JDAQModuleIdentifier& id = frame->getModuleID();
62 const JPosition3D& pos = frame->getPosition();
63
64 for (typename JFrame<JHit_t>::const_iterator i = frame->begin(); i != frame->end(); ++i, ++out) {
65 *out = JHitR1(id, pos, getJHit(*i));
66 }
67 }
68
69 *out = JHitR1(JDAQPMTIdentifier(), JPosition3D(), getEndMarker());
70
71 std::sort(this->begin(), this->end(), getToolkit());
72 }
Data structure for position in three dimensions.
const JPosition3D & getPosition() const
Get position.
container_type::const_iterator const_iterator
Definition JFrame.hh:46
Reduced data structure for L1 hit.
Definition JHitR1.hh:35
std::vector< value_type >::const_iterator const_iterator
Definition JTimeslice.hh:34
const JDAQChronometer & getDAQChronometer() const
Get DAQ chronometer.
JDAQChronometer()
Default constructor.
int getModuleID() const
Get module identifier.
const int n
Definition JPolint.hh:791

Member Function Documentation

◆ 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 }

◆ ClassDef()

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

Member Data Documentation

◆ 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.


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