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

Data structure for triggered hit. More...

#include <JTriggeredHit.hh>

Inheritance diagram for JTRIGGER::JTriggeredHit:
KM3NETDAQ::JDAQPMTIdentifier JTRIGGER::JHit KM3NETDAQ::JDAQTriggerMask KM3NETDAQ::JDAQModuleIdentifier

Public Member Functions

 JTriggeredHit ()
 Default constructor.
 
 JTriggeredHit (const JDAQPMTIdentifier &pmt, const JHit &hit, const JDAQTriggerMask &mask)
 Constructor.
 
template<class JHit_t >
 JTriggeredHit (const JHit_t &hit, const JDAQTriggerMask &mask)
 Constructor.
 
const JDAQPMTIdentifiergetPMTIdentifier () const
 Get PMT identifier.
 
void setPMTIdentifier (const JDAQPMTIdentifier &pmt)
 Set PMT identifier.
 
int getPMTAddress () const
 Get PMT identifier.
 
 ClassDefNV (JDAQPMTIdentifier, 1)
 
 ClassDefNV (JDAQModuleIdentifier, 1)
 
const JDAQModuleIdentifiergetModuleIdentifier () const
 Get Module identifier.
 
void setModuleIdentifier (const JDAQModuleIdentifier &module)
 Set Module identifier.
 
int getModuleID () const
 Get module identifier.
 
const JHitgetHit () const
 Get hit.
 
 operator double () const
 Type conversion.
 
double getT () const
 Get calibrated time of hit.
 
double getToT () const
 Get calibrated time over threshold of hit.
 
double getT1 () const
 Get leading edge of hit.
 
double getT2 () const
 Get trailing edge of hit.
 
void join (const JHit &hit)
 Join hit.
 
const JDAQTriggerMaskgetDAQTriggerMask () const
 Get DAQ trigger mask.
 
JTriggerMask_t getTriggerMask () const
 Get 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.
 
 ClassDef (JDAQTriggerMask, 1)
 

Static Public Member Functions

static bool compare (const JDAQPMTIdentifier &first, const JDAQPMTIdentifier &second)
 Compare PMT identifiers.
 
static bool getSlewing ()
 Get slewing option.
 
static void setSlewing (const bool slewing)
 Set slewing option.
 
static JDAQTriggerMask valueOf (const std::string &buffer)
 Extract trigger mask.
 

Static Protected Member Functions

static bool & get_slewing ()
 Get reference to slewing parameter.
 

Protected Attributes

int address
 
int id
 
double t
 time of leading edge [ns]
 
double tot
 time-over-threshold [ns]
 
JTriggerMask_t trigger_mask
 

Detailed Description

Data structure for triggered hit.

Definition at line 27 of file JTriggeredHit.hh.

Constructor & Destructor Documentation

◆ JTriggeredHit() [1/3]

JTRIGGER::JTriggeredHit::JTriggeredHit ( )
inline

Default constructor.

Definition at line 36 of file JTriggeredHit.hh.

36 :
38 JHit (),
40 {}
JHit()
Default constructor.
JDAQPMTIdentifier()
Default constructor.
JDAQTriggerMask()
Default constructor.

◆ JTriggeredHit() [2/3]

JTRIGGER::JTriggeredHit::JTriggeredHit ( const JDAQPMTIdentifier & pmt,
const JHit & hit,
const JDAQTriggerMask & mask )
inline

Constructor.

Parameters
pmtPMT identifier
hithit
masktrigger mask

Definition at line 50 of file JTriggeredHit.hh.

52 :
54 JHit (hit),
55 JDAQTriggerMask (mask)
56 {}

◆ JTriggeredHit() [3/3]

template<class JHit_t >
JTRIGGER::JTriggeredHit::JTriggeredHit ( const JHit_t & hit,
const JDAQTriggerMask & mask )
inline

Constructor.

Parameters
hithit
masktrigger mask

Definition at line 66 of file JTriggeredHit.hh.

67 :
68 JDAQPMTIdentifier(hit.getPMTIdentifier()),
69 JHit (hit.getHit()),
70 JDAQTriggerMask (mask)
71 {}

Member Function Documentation

◆ getPMTIdentifier()

const JDAQPMTIdentifier & KM3NETDAQ::JDAQPMTIdentifier::getPMTIdentifier ( ) const
inlineinherited

Get PMT identifier.

Returns
PMT identifier

Definition at line 56 of file JDAQPMTIdentifier.hh.

57 {
58 return *this;
59 }

◆ setPMTIdentifier()

void KM3NETDAQ::JDAQPMTIdentifier::setPMTIdentifier ( const JDAQPMTIdentifier & pmt)
inlineinherited

Set PMT identifier.

Parameters
pmtPMT identifier

Definition at line 67 of file JDAQPMTIdentifier.hh.

68 {
69 *this = pmt;
70 }

◆ getPMTAddress()

int KM3NETDAQ::JDAQPMTIdentifier::getPMTAddress ( ) const
inlineinherited

Get PMT identifier.

Returns
PMT identifier

Definition at line 78 of file JDAQPMTIdentifier.hh.

79 {
80 return address;
81 }

◆ compare()

static bool KM3NETDAQ::JDAQPMTIdentifier::compare ( const JDAQPMTIdentifier & first,
const JDAQPMTIdentifier & second )
inlinestaticinherited

Compare PMT identifiers.

The comparison is applied to the module identifer and to the PMT address. If the module identifier or PMT address is -1, the corresponding comparison evaluates to true.

Parameters
firstPMT identifier
secondPMT identifier
Returns
true if first PMT equal second PMT; else false

Definition at line 126 of file JDAQPMTIdentifier.hh.

127 {
128 return ((first .getModuleIdentifier() == second.getModuleIdentifier() ||
129 first .getModuleIdentifier() == -1 ||
130 second.getModuleIdentifier() == -1) &&
131 (first .getPMTAddress() == second.getPMTAddress() ||
132 first .getPMTAddress() == -1 ||
133 second.getPMTAddress() == -1));
134 }
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
int getPMTAddress() const
Get PMT identifier.

◆ ClassDefNV() [1/2]

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

◆ ClassDefNV() [2/2]

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

◆ getModuleIdentifier()

const JDAQModuleIdentifier & KM3NETDAQ::JDAQModuleIdentifier::getModuleIdentifier ( ) const
inlineinherited

Get Module identifier.

Returns
Module identifier

Definition at line 50 of file JDAQModuleIdentifier.hh.

51 {
52 return *this;
53 }

◆ setModuleIdentifier()

void KM3NETDAQ::JDAQModuleIdentifier::setModuleIdentifier ( const JDAQModuleIdentifier & module)
inlineinherited

Set Module identifier.

Parameters
moduleModule identifier

Definition at line 61 of file JDAQModuleIdentifier.hh.

62 {
63 *this = module;
64 }

◆ getModuleID()

int KM3NETDAQ::JDAQModuleIdentifier::getModuleID ( ) const
inlineinherited

Get module identifier.

Returns
module identifier

Definition at line 72 of file JDAQModuleIdentifier.hh.

◆ getHit()

const JHit & JTRIGGER::JHit::getHit ( ) const
inlineinherited

Get hit.

Returns
hit

Definition at line 99 of file JTrigger/JHit.hh.

100 {
101 return static_cast<const JHit&>(*this);
102 }

◆ getSlewing()

static bool JTRIGGER::JHit::getSlewing ( )
inlinestaticinherited

Get slewing option.

Returns
slewing option

Definition at line 110 of file JTrigger/JHit.hh.

111 {
112 return get_slewing();
113 }
static bool & get_slewing()
Get reference to slewing parameter.

◆ setSlewing()

static void JTRIGGER::JHit::setSlewing ( const bool slewing)
inlinestaticinherited

Set slewing option.

Parameters
slewingslewing option

Definition at line 121 of file JTrigger/JHit.hh.

122 {
123 get_slewing() = slewing;
124 }

◆ operator double()

JTRIGGER::JHit::operator double ( ) const
inlineinherited

Type conversion.

Returns
time [ns]

Definition at line 132 of file JTrigger/JHit.hh.

133 {
134 return t;
135 }
double t
time of leading edge [ns]

◆ getT()

double JTRIGGER::JHit::getT ( ) const
inlineinherited

Get calibrated time of hit.

Returns
time [ns]

Definition at line 143 of file JTrigger/JHit.hh.

144 {
145 if (!getSlewing())
146 return t;
147 else
148 return t - getRiseTime(tot);
149 }
static bool getSlewing()
Get slewing option.
double tot
time-over-threshold [ns]
static const JGetRiseTime getRiseTime
Function object for rise time evaluation.

◆ getToT()

double JTRIGGER::JHit::getToT ( ) const
inlineinherited

Get calibrated time over threshold of hit.

Returns
time over threshold [ns]

Definition at line 157 of file JTrigger/JHit.hh.

158 {
159 return tot;
160 }

◆ getT1()

double JTRIGGER::JHit::getT1 ( ) const
inlineinherited

Get leading edge of hit.

Note that no slewing correction is applied.

Returns
time [ns]

Definition at line 170 of file JTrigger/JHit.hh.

171 {
172 return t;
173 }

◆ getT2()

double JTRIGGER::JHit::getT2 ( ) const
inlineinherited

Get trailing edge of hit.

Note that no slewing correction is applied.

Returns
time [ns]

Definition at line 183 of file JTrigger/JHit.hh.

184 {
185 return t + tot;
186 }

◆ join()

void JTRIGGER::JHit::join ( const JHit & hit)
inlineinherited

Join hit.

Note that:

  • leading edge of this hit is maintained;
  • time over threshold of this hit is set to the difference between the trailing edge of given hit and leading edge of this hit;
Parameters
hithit

Definition at line 198 of file JTrigger/JHit.hh.

199 {
200 this->tot = hit.getT2() - this->getT1();
201 }
double getT1() const
Get leading edge of hit.

◆ get_slewing()

static bool & JTRIGGER::JHit::get_slewing ( )
inlinestaticprotectedinherited

Get reference to slewing parameter.

Returns
reference to slewing parameter

Definition at line 213 of file JTrigger/JHit.hh.

214 {
215 static bool slewing = true;
216
217 return slewing;
218 }

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

◆ getTriggerMask()

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 }

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

◆ ClassDef()

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

Member Data Documentation

◆ address

int KM3NETDAQ::JDAQPMTIdentifier::address
protectedinherited

Definition at line 141 of file JDAQPMTIdentifier.hh.

◆ id

int KM3NETDAQ::JDAQModuleIdentifier::id
protectedinherited

Definition at line 112 of file JDAQModuleIdentifier.hh.

◆ t

double JTRIGGER::JHit::t
protectedinherited

time of leading edge [ns]

Definition at line 204 of file JTrigger/JHit.hh.

◆ tot

double JTRIGGER::JHit::tot
protectedinherited

time-over-threshold [ns]

Definition at line 205 of file JTrigger/JHit.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: