Jpp
Public Member Functions | Static Public Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
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. More...
 
 JTriggeredHit (const JDAQPMTIdentifier &pmt, const JHit &hit, const JDAQTriggerMask &mask)
 Constructor. More...
 
template<class JHit_t >
 JTriggeredHit (const JHit_t &hit, const JDAQTriggerMask &mask)
 Constructor. More...
 
const JDAQPMTIdentifiergetPMTIdentifier () const
 Get PMT identifier. More...
 
void setPMTIdentifier (const JDAQPMTIdentifier &pmt)
 Set PMT identifier. More...
 
int getPMTAddress () const
 Get PMT identifier. More...
 
 ClassDefNV (JDAQPMTIdentifier, 1)
 
 ClassDefNV (JDAQModuleIdentifier, 1)
 
const JDAQModuleIdentifiergetModuleIdentifier () const
 Get Module identifier. More...
 
void setModuleIdentifier (const JDAQModuleIdentifier &module)
 Set Module identifier. More...
 
int getModuleID () const
 Get module identifier. More...
 
const JHitgetHit () const
 Get hit. More...
 
 operator double () const
 Type conversion. More...
 
double getT () const
 Get calibrated time of hit. More...
 
double getToT () const
 Get calibrated time over threshold of hit. More...
 
double getT1 () const
 Get leading edge of hit. More...
 
double getT2 () const
 Get trailing edge of hit. More...
 
void join (const JHit &hit)
 Join hit. More...
 
const JDAQTriggerMaskgetDAQTriggerMask () const
 Get DAQ trigger mask. More...
 
JTriggerMask_t getTriggerMask () const
 Get trigger mask. More...
 
void setDAQTriggerMask (const JDAQTriggerMask &mask)
 Set trigger mask. More...
 
void setTriggerMask (const JTriggerMask_t mask)
 Set trigger mask. More...
 
JDAQTriggerMaskaddTriggerMask (const JDAQTriggerMask &mask)
 Add trigger bit pattern. More...
 
bool hasTriggerMask (const JDAQTriggerMask &mask) const
 Has trigger bit pattern. More...
 
JDAQTriggerMaskaddTriggerBit (const unsigned int bit)
 Add trigger bit. More...
 
bool hasTriggerBit (const unsigned int bit) const
 Check trigger bit. More...
 
std::string toString () const
 Convert trigger mask. More...
 
 ClassDef (JDAQTriggerMask, 1)
 

Static Public Member Functions

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

Static Protected Member Functions

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

Protected Attributes

int address
 
int id
 
double t
 time of leading edge [ns] More...
 
double tot
 time-ver-threshold [ns] More...
 
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  {}

◆ 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  :
53  JDAQPMTIdentifier(pmt),
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 158 of file JDAQPMTIdentifier.hh.

159  {
160  return ((first .getModuleIdentifier() == second.getModuleIdentifier() ||
161  first .getModuleIdentifier() == -1 ||
162  second.getModuleIdentifier() == -1) &&
163  (first .getPMTAddress() == second.getPMTAddress() ||
164  first .getPMTAddress() == -1 ||
165  second.getPMTAddress() == -1));
166  }

◆ sizeOf() [1/2]

static int KM3NETDAQ::JDAQPMTIdentifier::sizeOf ( )
inlinestaticinherited

Get size of object.

Returns
number of bytes

Definition at line 174 of file JDAQPMTIdentifier.hh.

175  {
176  return (JDAQModuleIdentifier::sizeOf() +
177  sizeof(int));
178  }

◆ ClassDefNV() [1/2]

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

◆ ClassDefNV() [2/2]

KM3NETDAQ::JDAQModuleIdentifier::ClassDefNV ( JDAQModuleIdentifier  ,
 
)
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.

73  {
74  return id;
75  }

◆ getHit()

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

Get hit.

Returns
hit

Definition at line 99 of file 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 JHit.hh.

111  {
112  return get_slewing();
113  }

◆ setSlewing()

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

Set slewing option.

Parameters
slewingslewing option

Definition at line 121 of file 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 JHit.hh.

133  {
134  return t;
135  }

◆ getT()

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

Get calibrated time of hit.

Returns
time [ns]

Definition at line 143 of file JHit.hh.

144  {
145  if (!getSlewing())
146  return t;
147  else
148  return t - getRiseTime(tot);
149  }

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

199  {
200  this->tot = hit.getT2() - this->getT1();
201  }

◆ 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 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 94 of file JDAQTriggerMask.hh.

95  {
96  return static_cast<const JDAQTriggerMask&>(*this);
97  }

◆ getTriggerMask()

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

Get trigger mask.

Returns
trigger mask

Definition at line 105 of file JDAQTriggerMask.hh.

106  {
107  return trigger_mask;
108  }

◆ setDAQTriggerMask()

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

Set trigger mask.

Parameters
masktrigger mask

Definition at line 116 of file JDAQTriggerMask.hh.

117  {
118  trigger_mask = mask.trigger_mask;
119  }

◆ setTriggerMask()

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

Set trigger mask.

Parameters
masktrigger mask

Definition at line 127 of file JDAQTriggerMask.hh.

128  {
129  trigger_mask = mask;
130  }

◆ addTriggerMask()

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

Add trigger bit pattern.

Parameters
masktrigger mask
Returns
trigger mask

Definition at line 139 of file JDAQTriggerMask.hh.

140  {
141  trigger_mask |= mask.trigger_mask;
142 
143  return *this;
144  }

◆ 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 153 of file JDAQTriggerMask.hh.

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

◆ addTriggerBit()

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

Add trigger bit.

Parameters
bittrigger bit
Returns
trigger mask

Definition at line 165 of file JDAQTriggerMask.hh.

166  {
168 
169  return *this;
170  }

◆ 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 179 of file JDAQTriggerMask.hh.

180  {
182  }

◆ 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 191 of file JDAQTriggerMask.hh.

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

◆ 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 212 of file JDAQTriggerMask.hh.

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

◆ sizeOf() [2/2]

static int KM3NETDAQ::JDAQTriggerMask::sizeOf ( )
inlinestaticinherited

Get size of object.

Returns
number of bytes

Definition at line 297 of file JDAQTriggerMask.hh.

298  {
299  return sizeof(JTriggerMask_t);
300  }

◆ ClassDef()

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

Member Data Documentation

◆ address

int KM3NETDAQ::JDAQPMTIdentifier::address
protectedinherited

Definition at line 185 of file JDAQPMTIdentifier.hh.

◆ id

int KM3NETDAQ::JDAQModuleIdentifier::id
protectedinherited

Definition at line 153 of file JDAQModuleIdentifier.hh.

◆ t

double JTRIGGER::JHit::t
protectedinherited

time of leading edge [ns]

Definition at line 204 of file JHit.hh.

◆ tot

double JTRIGGER::JHit::tot
protectedinherited

time-ver-threshold [ns]

Definition at line 205 of file JHit.hh.

◆ trigger_mask

JTriggerMask_t KM3NETDAQ::JDAQTriggerMask::trigger_mask
protectedinherited

Definition at line 307 of file JDAQTriggerMask.hh.


The documentation for this class was generated from the following file:
KM3NETDAQ::JDAQPMTIdentifier::JDAQPMTIdentifier
JDAQPMTIdentifier()
Default constructor.
Definition: JDAQPMTIdentifier.hh:32
KM3NETDAQ::JDAQPMTIdentifier::getPMTAddress
int getPMTAddress() const
Get PMT identifier.
Definition: JDAQPMTIdentifier.hh:78
KM3NETDAQ::JDAQModuleIdentifier::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQModuleIdentifier.hh:143
JTRIGGER::JHit::get_slewing
static bool & get_slewing()
Get reference to slewing parameter.
Definition: JHit.hh:213
KM3NETDAQ::JTriggerMask_t
unsigned long long int JTriggerMask_t
Type definition of trigger mask.
Definition: JDAQTriggerMask.hh:25
KM3NETDAQ::JDAQTriggerMask::trigger_mask
JTriggerMask_t trigger_mask
Definition: JDAQTriggerMask.hh:307
KM3NETDAQ::JDAQPMTIdentifier::address
int address
Definition: JDAQPMTIdentifier.hh:185
KM3NETDAQ::NUMBER_OF_TRIGGER_BITS
static const unsigned int NUMBER_OF_TRIGGER_BITS
Number of trigger bits.
Definition: JDAQTriggerMask.hh:31
JTRIGGER::JHit::tot
double tot
time-ver-threshold [ns]
Definition: JHit.hh:205
KM3NETDAQ::JDAQModuleIdentifier::id
int id
Definition: JDAQModuleIdentifier.hh:153
KM3NETDAQ::JDAQModuleIdentifier::getModuleIdentifier
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
Definition: JDAQModuleIdentifier.hh:50
KM3NETDAQ::getTriggerMask
JTriggerMask_t getTriggerMask(const unsigned int bit)
Convert trigger bit to trigger mask.
Definition: JDAQTriggerMask.hh:40
KM3NETDAQ::JDAQTriggerMask::JDAQTriggerMask
JDAQTriggerMask()
Default constructor.
Definition: JDAQTriggerMask.hh:57
JTRIGGER::JHit::getSlewing
static bool getSlewing()
Get slewing option.
Definition: JHit.hh:110
JTRIGGER::JHit::getT2
double getT2() const
Get trailing edge of hit.
Definition: JHit.hh:183
KM3NETDAQ::JDAQTriggerMask::hasTriggerBit
bool hasTriggerBit(const unsigned int bit) const
Check trigger bit.
Definition: JDAQTriggerMask.hh:179
JTRIGGER::getRiseTime
static const JGetRiseTime getRiseTime
Function object for rise time evaluation.
Definition: JGetRiseTime.hh:313
JTRIGGER::JHit
Hit data structure.
Definition: JHit.hh:22
JTRIGGER::JHit::JHit
JHit()
Default constructor.
Definition: JHit.hh:28
JTRIGGER::JHit::t
double t
time of leading edge [ns]
Definition: JHit.hh:204
JTRIGGER::JHit::getT1
double getT1() const
Get leading edge of hit.
Definition: JHit.hh:170