Jpp
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
JTRIGGER::JFrame< JElement_t, JAllocator_t > Class Template Reference

Data frame for calibrated hits of one PMT. More...

#include <JFrame.hh>

Inheritance diagram for JTRIGGER::JFrame< JElement_t, JAllocator_t >:
JTRIGGER::JPMTHeader JDETECTOR::JCalibration std::vector< JElement_t, JAllocator_t > JTRIGGER::JHitToolkit< JElement_t > KM3NETDAQ::JDAQChronometer KM3NETDAQ::JDAQPMTIdentifier JGEOMETRY3D::JAxis3D KM3NETDAQ::JDAQModuleIdentifier JGEOMETRY3D::JPosition3D JGEOMETRY3D::JDirection3D JGEOMETRY3D::JVector3D JGEOMETRY3D::JVersor3D JMATH::JMath< JVector3D > JMATH::JMath< JVersor3D >

Public Types

typedef std::vector< JElement_t, JAllocator_t > container_type
 
typedef JElement_t value_type
 
typedef JMatch< value_typematch_type
 
typedef container_type::iterator iterator
 
typedef container_type::const_iterator const_iterator
 
typedef container_type::reverse_iterator reverse_iterator
 
typedef container_type::const_reverse_iterator const_reverse_iterator
 

Public Member Functions

 JFrame ()
 Default constructor. More...
 
 JFrame (const JDAQChronometer &chronometer, const JDAQPMTIdentifier &id, const JAxis3D &axis, const JCalibration &calibration)
 Constructor. More...
 
void push_back (const JDAQHit &hit)
 Append DAQ hit. More...
 
void putEndMarker ()
 Append end marker to data. More...
 
const_iterator u_begin () const
 iterator without end marker More...
 
const_iterator u_end () const
 iterator without end marker More...
 
iterator u_begin ()
 iterator without end marker More...
 
iterator u_end ()
 iterator without end marker More...
 
const_reverse_iterator u_rbegin () const
 iterator without end marker More...
 
const_reverse_iterator u_rend () const
 iterator without end marker More...
 
reverse_iterator u_rbegin ()
 iterator without end marker More...
 
reverse_iterator u_rend ()
 iterator without end marker More...
 
size_t u_size () const
 size without end marker More...
 
void reset ()
 Reset. More...
 
void applyHighRateVeto (const double rate_Hz)
 Apply high-rate veto. More...
 
void join (const match_type &match)
 Join consecutive hits when matched according given criterion. More...
 
void filter (const match_type &match)
 Filter-out consecutive hits when matched according given criterion. More...
 
const JPMTHeadergetPMTHeader () const
 Get PMT header. More...
 
void setPMTHeader (const JPMTHeader &header)
 Set PMT header. More...
 
const JDAQChronometergetDAQChronometer () const
 Get DAQ chronometer. More...
 
void setDAQChronometer (const JDAQChronometer &chronometer)
 Set DAQ chronometer. More...
 
int getDetectorID () const
 Get detector identifier. More...
 
int getRunNumber () const
 Get run number. More...
 
int getFrameIndex () const
 Get frame index. More...
 
JDAQUTCExtended getTimesliceStart () const
 Get start of timeslice. More...
 
void setRunNumber (const int run)
 Set run number. More...
 
void setFrameIndex (const int frame_index)
 Set frame index. More...
 
void setTimesliceStart (const JDAQUTCExtended &timeslice_start)
 Set timeslice start time. More...
 
 ClassDef (JDAQChronometer, 3)
 
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 JAxis3DgetAxis () const
 Get axis. More...
 
void setAxis (const JAxis3D &axis)
 Set axis. More...
 
JAxis3Dnegate ()
 Negate axis. More...
 
void move (const double step)
 Move vertex along this axis. More...
 
double getIntersection (const JVector3D &pos) const
 Get longitudinal position along axis of position of closest approach with given position. More...
 
double getIntersection (const JAxis3D &axis, const double precision=1.0e-8) const
 Get longitudinal position along axis of position of closest approach with given axis. More...
 
double getDistanceSquared (const JVector3D &pos) const
 Get distance squared. More...
 
double getDistance (const JVector3D &pos) const
 Get distance. More...
 
JAxis3Drotate (const JRotation3D &R)
 Rotate axis. More...
 
JAxis3Drotate (const JRotation3X &R)
 Rotate around X-axis. More...
 
JAxis3Drotate (const JRotation3Y &R)
 Rotate around Y-axis. More...
 
JAxis3Drotate (const JRotation3Z &R)
 Rotate around Z-axis. More...
 
JAxis3Drotate (const JQuaternion3D &Q)
 Rotate axis. More...
 
JAxis3Drotate_back (const JRotation3D &R)
 Rotate back axis. More...
 
JAxis3Drotate_back (const JRotation3X &R)
 Rotate back around X-axis. More...
 
JAxis3Drotate_back (const JRotation3Y &R)
 Rotate back around Y-axis. More...
 
JAxis3Drotate_back (const JRotation3Z &R)
 Rotate back around Z-axis. More...
 
JPosition3Drotate_back (const JQuaternion3D &Q)
 Rotate back. More...
 
JDirection3Drotate_back (const JQuaternion3D &Q)
 Rotate back. More...
 
void transform (const JAxis3D &axis)
 Transform axis to reference frame of given axis. More...
 
void transform (const JRotation3D &R, const JVector3D &pos)
 Transform axis. More...
 
void transform (const JTransformation3D &T)
 Transform axis. More...
 
JVector3Dtransform (const JMatrix3D &T)
 Transform. More...
 
JVector3Dtransform (const JMatrix3D &T)
 Transform. More...
 
JDirection3Dtransform (const JMatrix3D &T)
 Transform. More...
 
void transform_back (const JRotation3D &R, const JVector3D &pos)
 Transform back axis. More...
 
void transform_back (const JTransformation3D &T)
 Transform back axis. More...
 
double getDot (const JAngle3D &angle) const
 Get dot product. More...
 
double getDot (const JVector3D &pos) const
 Get dot product. More...
 
double getDot (const JVersor3Z &dir) const
 Get dot product. More...
 
double getDot (const JAngle3D &angle) const
 Get dot product. More...
 
double getDot (const JVersor3D &dir) const
 Get dot product. More...
 
double getDot (const JVersor3Z &dir) const
 Get dot product. More...
 
double getDot (const JVector3D &vector) const
 Get dot product. More...
 
double getDot (const JAngle3D &angle) const
 Get dot product. More...
 
double getDot (const JVector3D &pos) const
 Get dot product. More...
 
double getDot (const JVersor3Z &dir) const
 Get dot product. More...
 
double getDot (const JVersor3D &versor) const
 Get dot product. More...
 
const JPosition3DgetPosition () const
 Get position. More...
 
JPosition3DgetPosition ()
 Get position. More...
 
void setPosition (const JVector3D &pos)
 Set position. More...
 
 operator JAngle3D () const
 Type conversion operator. More...
 
 operator JAngle3D () const
 Type conversion operator. More...
 
 operator JVersor3D () const
 Type conversion operator. More...
 
 operator JVector2D () const
 Type conversion operator. More...
 
double getX () const
 Get x position. More...
 
double getY () const
 Get y position. More...
 
double getZ () const
 Get z position. More...
 
JVector3Dadd (const JVector3D &vector)
 Add vector. More...
 
JVector3Dsub (const JVector3D &vector)
 Subtract vector. More...
 
JVector3Dmul (const double factor)
 Scale vector. More...
 
JVector3Dmul (const JSecond_t &object)
 Multiply with object. More...
 
JVersor3Dmul (const JSecond_t &object)
 Multiply with object. More...
 
JVector3Ddiv (const double factor)
 Scale vector. More...
 
bool equals (const JVector3D &vector, const double precision=std::numeric_limits< double >::min()) const
 Check equality. More...
 
bool equals (const JVersor3D &versor, const double precision=std::numeric_limits< double >::min()) const
 Check equality. More...
 
double getLengthSquared () const
 Get length squared. More...
 
double getLength () const
 Get length. More...
 
JVector3Dcross (const JVector3D &first, const JVector3D &second)
 Get cross product. More...
 
const JDirection3DgetDirection () const
 Get direction. More...
 
JDirection3DgetDirection ()
 Get direction. More...
 
void setDirection (const JDirection3D &dir)
 Set direction. More...
 
 operator JVector3D () const
 Type conversion operator. More...
 
double getDX () const
 Get x direction. More...
 
double getDY () const
 Get y direction. More...
 
double getDZ () const
 Get z direction. More...
 
double getTheta () const
 Get theta angle. More...
 
double getPhi () const
 Get phi angle. More...
 
JVersor3Dnormalise ()
 Normalise versor. More...
 
const JCalibrationgetCalibration () const
 Get calibration. More...
 
void setCalibration (const JCalibration &cal)
 Set calibration. More...
 
double getT0 () const
 Get time offset. More...
 
void setT0 (const double t0)
 Set time offset. More...
 
void addT0 (const double t0)
 Add time offset. More...
 
void subT0 (const double t0)
 Subtract time offset. More...
 

Static Public Member Functions

static bool compare (const JDAQPMTIdentifier &first, const JDAQPMTIdentifier &second)
 Compare PMT identifiers. More...
 

Protected Attributes

int detector_id
 
int run
 
int frame_index
 
JDAQUTCExtended timeslice_start
 
int address
 
int id
 
double __x
 
double __y
 
double __z
 
double __dx
 
double __dy
 
double __dz
 
double t0
 

Detailed Description

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
class JTRIGGER::JFrame< JElement_t, JAllocator_t >

Data frame for calibrated hits of one PMT.

Note that the calibration is applied on the fly in the method JFrame::push_back.

Definition at line 32 of file JFrame.hh.

Member Typedef Documentation

◆ container_type

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef std::vector<JElement_t, JAllocator_t> JTRIGGER::JFrame< JElement_t, JAllocator_t >::container_type

Definition at line 40 of file JFrame.hh.

◆ value_type

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef JElement_t JTRIGGER::JFrame< JElement_t, JAllocator_t >::value_type

Definition at line 41 of file JFrame.hh.

◆ match_type

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef JMatch<value_type> JTRIGGER::JFrame< JElement_t, JAllocator_t >::match_type

Definition at line 42 of file JFrame.hh.

◆ iterator

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef container_type::iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::iterator

Definition at line 44 of file JFrame.hh.

◆ const_iterator

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef container_type::const_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::const_iterator

Definition at line 45 of file JFrame.hh.

◆ reverse_iterator

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef container_type::reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::reverse_iterator

Definition at line 46 of file JFrame.hh.

◆ const_reverse_iterator

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
typedef container_type::const_reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::const_reverse_iterator

Definition at line 47 of file JFrame.hh.

Constructor & Destructor Documentation

◆ JFrame() [1/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
JTRIGGER::JFrame< JElement_t, JAllocator_t >::JFrame ( )
inline

Default constructor.

Definition at line 56 of file JFrame.hh.

◆ JFrame() [2/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
JTRIGGER::JFrame< JElement_t, JAllocator_t >::JFrame ( const JDAQChronometer chronometer,
const JDAQPMTIdentifier id,
const JAxis3D axis,
const JCalibration calibration 
)
inline

Constructor.

Parameters
chronometerDAQ chronometer
idPMT identifier
axisPMT axis
calibrationcalibration

Definition at line 72 of file JFrame.hh.

75  :
76  JPMTHeader (chronometer, id, axis),
77  JCalibration(calibration),
80  {}

Member Function Documentation

◆ push_back()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::push_back ( const JDAQHit hit)
inline

Append DAQ hit.

The time calibration is applied before the hit is appended.

Parameters
hitDAQ hit

Definition at line 90 of file JFrame.hh.

91  {
92  container_type::push_back(this->getHit(hit, this->getCalibration()));
93  }

◆ putEndMarker()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::putEndMarker ( )
inline

Append end marker to data.

Definition at line 99 of file JFrame.hh.

100  {
101  container_type::push_back(this->getEndMarker());
102  }

◆ u_begin() [1/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
const_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_begin ( ) const
inline

iterator without end marker

Definition at line 105 of file JFrame.hh.

◆ u_end() [1/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
const_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_end ( ) const
inline

iterator without end marker

Definition at line 106 of file JFrame.hh.

◆ u_begin() [2/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_begin ( )
inline

iterator without end marker

Definition at line 107 of file JFrame.hh.

◆ u_end() [2/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_end ( )
inline

iterator without end marker

Definition at line 108 of file JFrame.hh.

◆ u_rbegin() [1/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
const_reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_rbegin ( ) const
inline

iterator without end marker

Definition at line 110 of file JFrame.hh.

◆ u_rend() [1/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
const_reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_rend ( ) const
inline

iterator without end marker

Definition at line 111 of file JFrame.hh.

◆ u_rbegin() [2/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_rbegin ( )
inline

iterator without end marker

Definition at line 112 of file JFrame.hh.

◆ u_rend() [2/2]

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
reverse_iterator JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_rend ( )
inline

iterator without end marker

Definition at line 113 of file JFrame.hh.

◆ u_size()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
size_t JTRIGGER::JFrame< JElement_t, JAllocator_t >::u_size ( ) const
inline

size without end marker

Definition at line 115 of file JFrame.hh.

◆ reset()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::reset ( )
inline

Reset.


The contents of this frame are reduced to a single end marker.

Definition at line 122 of file JFrame.hh.

123  {
124  this->clear();
125  this->putEndMarker();
126  }

◆ applyHighRateVeto()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::applyHighRateVeto ( const double  rate_Hz)
inline

Apply high-rate veto.


If vetoed, the contents of this frame are reduced to a single end marker.

Parameters
rate_Hzhigh-rate veto [Hz]

Definition at line 135 of file JFrame.hh.

136  {
138 
139  if (this->size() * 1.0e9 / getFrameTime() > rate_Hz) {
140  this->reset();
141  }
142  }

◆ join()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::join ( const match_type match)
inline

Join consecutive hits when matched according given criterion.

Parameters
matchmatch criterion

Definition at line 150 of file JFrame.hh.

151  {
152  iterator out = this->u_begin();
153 
154  for (const_iterator p = this->u_begin(); p != this->u_end(); ) {
155 
156  *out = *p;
157 
158  while (++p != this->u_end() && match(*out,*p)) {
159  *out = join(*out,*p);
160  }
161 
162  ++out;
163  }
164 
165  if (out != this->u_end()) {
166  this->erase(out, this->end());
167  this->putEndMarker();
168  }
169  }

◆ filter()

template<class JElement_t, class JAllocator_t = std::allocator<JElement_t>>
void JTRIGGER::JFrame< JElement_t, JAllocator_t >::filter ( const match_type match)
inline

Filter-out consecutive hits when matched according given criterion.

Note that all hits which are matched are removed.

Parameters
matchmatch criterion

Definition at line 179 of file JFrame.hh.

180  {
181  iterator out = this->u_begin();
182 
183  for (const_iterator p = this->u_begin(); p != this->u_end(); ) {
184 
185  const_iterator q = p;
186 
187  for (const_iterator i = p; ++q != this->u_end() && match(*i,*q); ++i) {}
188 
189  if (std::distance(p,q) == 1) {
190  *out = *p;
191  ++out;
192  }
193 
194  p = q;
195  }
196 
197  if (out != this->u_end()) {
198  this->erase(out, this->end());
199  this->putEndMarker();
200  }
201  }

◆ getPMTHeader()

const JPMTHeader& JTRIGGER::JPMTHeader::getPMTHeader ( ) const
inlineinherited

Get PMT header.

Returns
PMT header

Definition at line 62 of file JPMTHeader.hh.

63  {
64  return static_cast<const JPMTHeader&>(*this);
65  }

◆ setPMTHeader()

void JTRIGGER::JPMTHeader::setPMTHeader ( const JPMTHeader header)
inlineinherited

Set PMT header.

Parameters
headerPMT header

Definition at line 73 of file JPMTHeader.hh.

74  {
75  static_cast<JPMTHeader&>(*this) = header;
76  }

◆ 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  ,
 
)
inherited

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

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

◆ getAxis()

const JAxis3D& JGEOMETRY3D::JAxis3D::getAxis ( ) const
inlineinherited

Get axis.

Returns
axis

Definition at line 109 of file JAxis3D.hh.

110  {
111  return *this;
112  }

◆ setAxis()

void JGEOMETRY3D::JAxis3D::setAxis ( const JAxis3D axis)
inlineinherited

Set axis.

Parameters
axisaxis

Definition at line 120 of file JAxis3D.hh.

121  {
122  *this = axis;
123  }

◆ negate()

JAxis3D& JGEOMETRY3D::JAxis3D::negate ( )
inlineinherited

Negate axis.

Returns
this axis

Definition at line 131 of file JAxis3D.hh.

132  {
133  static_cast<JPosition3D&> (*this).negate();
134  static_cast<JDirection3D&>(*this).negate();
135 
136  return *this;
137  }

◆ move()

void JGEOMETRY3D::JAxis3D::move ( const double  step)
inlineinherited

Move vertex along this axis.

Parameters
stepstep

Definition at line 145 of file JAxis3D.hh.

146  {
147  getPosition() += step * JPosition3D(getDirection());
148  }

◆ getIntersection() [1/2]

double JGEOMETRY3D::JAxis3D::getIntersection ( const JVector3D pos) const
inlineinherited

Get longitudinal position along axis of position of closest approach with given position.

Parameters
posposition
Returns
longitudinal position

Definition at line 157 of file JAxis3D.hh.

158  {
159  JPosition3D D(pos);
160 
161  D.sub(this->getPosition());
162 
163  return D.getDot(this->getDirection());
164  }

◆ getIntersection() [2/2]

double JGEOMETRY3D::JAxis3D::getIntersection ( const JAxis3D axis,
const double  precision = 1.0e-8 
) const
inlineinherited

Get longitudinal position along axis of position of closest approach with given axis.


If the axes are paralel, this position corresponds to the vertex of the given axis.

Parameters
axisaxis
precisionprecision
Returns
longitudinal position

Definition at line 175 of file JAxis3D.hh.

176  {
177  JPosition3D pos(getPosition ());
178  JDirection3D dir(getDirection());
179 
180  const JRotation3D R(axis.getDirection());
181 
182  // offset this position with position of given axis
183 
184  pos.sub(axis.getPosition());
185 
186  // rotate along given axis
187 
188  pos.rotate(R);
189  dir.rotate(R);
190 
191  // longitudinal position at minimal distance of approach
192 
193  const double alpha = pos.getX() * dir.getDX() + pos.getY() * dir.getDY();
194  const double beta = dir.getDX() * dir.getDX() + dir.getDY() * dir.getDY();
195 
196  return (fabs(beta) > precision ? -alpha/beta : -pos.getZ());
197  }

◆ getDistanceSquared()

double JGEOMETRY3D::JAxis3D::getDistanceSquared ( const JVector3D pos) const
inlineinherited

Get distance squared.

Parameters
posposition
Returns
square of distance

Definition at line 206 of file JAxis3D.hh.

207  {
208  JPosition3D D(pos);
209 
210  D.sub(this->getPosition());
211 
212  const double dz = D.getDot(this->getDirection());
213 
214  return D.getLengthSquared() - dz*dz;
215  }

◆ getDistance()

double JGEOMETRY3D::JAxis3D::getDistance ( const JVector3D pos) const
inlineinherited

Get distance.

Parameters
pososition
Returns
distance

Definition at line 224 of file JAxis3D.hh.

225  {
226  return sqrt(this->getDistanceSquared(pos));
227  }

◆ rotate() [1/5]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate ( const JRotation3D R)
inlineinherited

Rotate axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 236 of file JAxis3D.hh.

237  {
238  static_cast<JPosition3D&> (*this).rotate(R);
239  static_cast<JDirection3D&>(*this).rotate(R);
240 
241  return *this;
242  }

◆ rotate() [2/5]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate ( const JRotation3X R)
inlineinherited

Rotate around X-axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 266 of file JAxis3D.hh.

267  {
268  static_cast<JPosition3D&> (*this).rotate(R);
269  static_cast<JDirection3D&>(*this).rotate(R);
270 
271  return *this;
272  }

◆ rotate() [3/5]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate ( const JRotation3Y R)
inlineinherited

Rotate around Y-axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 296 of file JAxis3D.hh.

297  {
298  static_cast<JPosition3D&> (*this).rotate(R);
299  static_cast<JDirection3D&>(*this).rotate(R);
300 
301  return *this;
302  }

◆ rotate() [4/5]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate ( const JRotation3Z R)
inlineinherited

Rotate around Z-axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 326 of file JAxis3D.hh.

327  {
328  static_cast<JPosition3D&> (*this).rotate(R);
329  static_cast<JDirection3D&>(*this).rotate(R);
330 
331  return *this;
332  }

◆ rotate() [5/5]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate ( const JQuaternion3D Q)
inlineinherited

Rotate axis.

Parameters
Qquaternion
Returns
this axis

Definition at line 356 of file JAxis3D.hh.

357  {
358  static_cast<JPosition3D&> (*this).rotate(Q);
359  static_cast<JDirection3D&>(*this).rotate(Q);
360 
361  return *this;
362  }

◆ rotate_back() [1/6]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate_back ( const JRotation3D R)
inlineinherited

Rotate back axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 251 of file JAxis3D.hh.

252  {
253  static_cast<JPosition3D&> (*this).rotate_back(R);
254  static_cast<JDirection3D&>(*this).rotate_back(R);
255 
256  return *this;
257  }

◆ rotate_back() [2/6]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate_back ( const JRotation3X R)
inlineinherited

Rotate back around X-axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 281 of file JAxis3D.hh.

282  {
283  static_cast<JPosition3D&> (*this).rotate_back(R);
284  static_cast<JDirection3D&>(*this).rotate_back(R);
285 
286  return *this;
287  }

◆ rotate_back() [3/6]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate_back ( const JRotation3Y R)
inlineinherited

Rotate back around Y-axis.

Parameters
Rrotation matrix
Returns
this axis

Definition at line 311 of file JAxis3D.hh.

312  {
313  static_cast<JPosition3D&> (*this).rotate_back(R);
314  static_cast<JDirection3D&>(*this).rotate_back(R);
315 
316  return *this;
317  }

◆ rotate_back() [4/6]

JAxis3D& JGEOMETRY3D::JAxis3D::rotate_back ( const JRotation3Z R)
inlineinherited

Rotate back around Z-axis.

Parameters
Rrotation matrix
Returns
his axis

Definition at line 341 of file JAxis3D.hh.

342  {
343  static_cast<JPosition3D&> (*this).rotate_back(R);
344  static_cast<JDirection3D&>(*this).rotate_back(R);
345 
346  return *this;
347  }

◆ rotate_back() [5/6]

JPosition3D& JGEOMETRY3D::JPosition3D::rotate_back ( const JQuaternion3D Q)
inlineinherited

Rotate back.

Parameters
Qquaternion
Returns
this position

Definition at line 311 of file JPosition3D.hh.

312  {
313  Q.rotate_back(__x, __y, __z);
314 
315  return *this;
316  }

◆ rotate_back() [6/6]

JDirection3D& JGEOMETRY3D::JDirection3D::rotate_back ( const JQuaternion3D Q)
inlineinherited

Rotate back.

Parameters
Qquaternion
Returns
this position

Definition at line 319 of file JDirection3D.hh.

320  {
321  Q.rotate_back(__dx, __dy, __dz);
322 
323  return *this;
324  }

◆ transform() [1/6]

void JGEOMETRY3D::JAxis3D::transform ( const JAxis3D axis)
inlineinherited

Transform axis to reference frame of given axis.

Parameters
axisaxis

Definition at line 370 of file JAxis3D.hh.

371  {
372  JRotation3D R (axis.getDirection());
373  JPosition3D pos(axis.getPosition ());
374 
375  transform(R, pos.rotate(R));
376  }

◆ transform() [2/6]

void JGEOMETRY3D::JAxis3D::transform ( const JRotation3D R,
const JVector3D pos 
)
inlineinherited

Transform axis.

The final position and direction are obtained as follows:

  1. rotation of the position and the direction according rotation matrix (R);
  2. offset position with position of origin in rotated system (pos);
  3. rotation of position and direction around z-axis, such that final position is in x-z plane;
Parameters
Rrotation matrix
posposition of origin

Definition at line 390 of file JAxis3D.hh.

392  {
393  JPosition3D& u = getPosition ();
395 
396  // rotate axis to system such that direction is along z-axis
397 
398  u.rotate(R);
399  v.rotate(R);
400 
401  // offset with respect to origin
402 
403  u.sub(pos);
404 
405  // rotate axis to x-z plane such that position is in x-z plane
406 
407  const double phi = atan2(u.getY(), u.getX());
408 
409  const JRotation3Z r(-phi);
410 
411  u.rotate(r);
412  v.rotate(r);
413  }

◆ transform() [3/6]

void JGEOMETRY3D::JAxis3D::transform ( const JTransformation3D T)
inlineinherited

Transform axis.

Parameters
Ttransformation

Definition at line 448 of file JAxis3D.hh.

449  {
451  }

◆ transform() [4/6]

JVector3D& JGEOMETRY3D::JVector3D::transform
inlineinherited

Transform.

Parameters
Tmatrix
Returns
this vector

Definition at line 205 of file JVector3D.hh.

206  {
207  T.transform(__x, __y, __z);
208 
209  return *this;
210  }

◆ transform() [5/6]

JVector3D& JGEOMETRY3D::JVector3D::transform ( const JMatrix3D T)
inlineinherited

Transform.

Parameters
Tmatrix
Returns
this vector

Definition at line 205 of file JVector3D.hh.

206  {
207  T.transform(__x, __y, __z);
208 
209  return *this;
210  }

◆ transform() [6/6]

JDirection3D& JGEOMETRY3D::JDirection3D::transform ( const JMatrix3D T)
inlineinherited

Transform.

Parameters
Tmatrix
Returns
this direction

Definition at line 161 of file JDirection3D.hh.

162  {
163  T.transform(__dx, __dy, __dz);
164 
165  normalise();
166 
167  return *this;
168  }

◆ transform_back() [1/2]

void JGEOMETRY3D::JAxis3D::transform_back ( const JRotation3D R,
const JVector3D pos 
)
inlineinherited

Transform back axis.

The final position and direction are obtained as follows:

  1. offset position with position pos;
  2. rotation of position and direction according matrix R;
Parameters
Rrotation matrix
posposition of origin (before rotation)

Definition at line 426 of file JAxis3D.hh.

428  {
429  JPosition3D& u = getPosition ();
431 
432  // offset with respect to origin
433 
434  u.add(pos);
435 
436  // rotate back axis to system with original particle direction
437 
438  u.rotate_back(R);
439  v.rotate_back(R);
440  }

◆ transform_back() [2/2]

void JGEOMETRY3D::JAxis3D::transform_back ( const JTransformation3D T)
inlineinherited

Transform back axis.

Parameters
Ttransformation

Definition at line 459 of file JAxis3D.hh.

460  {
462  }

◆ getDot() [1/11]

double JGEOMETRY3D::JDirection3D::getDot
inlineinherited

Get dot product.

Parameters
angleangle
Returns
dot product

Definition at line 333 of file JDirection3D.hh.

334  {
335  return
336  getDX() * angle.getDX() +
337  getDY() * angle.getDY() +
338  getDZ() * angle.getDZ();
339  }

◆ getDot() [2/11]

double JGEOMETRY3D::JDirection3D::getDot
inlineinherited

Get dot product.

Parameters
posposition
Returns
dot product

Definition at line 348 of file JDirection3D.hh.

349  {
350  return
351  getDX() * pos.getX() +
352  getDY() * pos.getY() +
353  getDZ() * pos.getZ();
354  }

◆ getDot() [3/11]

double JGEOMETRY3D::JDirection3D::getDot
inlineinherited

Get dot product.

Parameters
dirdirection
Returns
dot product

Definition at line 363 of file JDirection3D.hh.

364  {
365  return
366  getDX() * dir.getDX() +
367  getDY() * dir.getDY() +
368  getDZ() * dir.getDZ();
369  }

◆ getDot() [4/11]

double JGEOMETRY3D::JPosition3D::getDot ( const JAngle3D angle) const
inlineinherited

Get dot product.

Parameters
angleangle
Returns
dot product

Definition at line 377 of file JPosition3D.hh.

378  {
379  return
380  getX() * angle.getDX() +
381  getY() * angle.getDY() +
382  getZ() * angle.getDZ();
383  }

◆ getDot() [5/11]

double JGEOMETRY3D::JPosition3D::getDot ( const JVersor3D dir) const
inlineinherited

Get dot product.

Parameters
dirdirection
Returns
dot product

Definition at line 392 of file JPosition3D.hh.

393  {
394  return
395  getX() * dir.getDX() +
396  getY() * dir.getDY() +
397  getZ() * dir.getDZ();
398  }

◆ getDot() [6/11]

double JGEOMETRY3D::JPosition3D::getDot ( const JVersor3Z dir) const
inlineinherited

Get dot product.

Parameters
dirdirection
Returns
dot product

Definition at line 407 of file JPosition3D.hh.

408  {
409  return
410  getX() * dir.getDX() +
411  getY() * dir.getDY() +
412  getZ() * dir.getDZ();
413  }

◆ getDot() [7/11]

double JGEOMETRY3D::JVector3D::getDot ( const JVector3D vector) const
inlineinherited

Get dot product.

Parameters
vectorvector
Returns
dot product

Definition at line 281 of file JVector3D.hh.

282  {
283  return
284  getX() * vector.getX() +
285  getY() * vector.getY() +
286  getZ() * vector.getZ();
287  }

◆ getDot() [8/11]

double JGEOMETRY3D::JDirection3D::getDot ( const JAngle3D angle) const
inlineinherited

Get dot product.

Parameters
angleangle
Returns
dot product

Definition at line 333 of file JDirection3D.hh.

334  {
335  return
336  getDX() * angle.getDX() +
337  getDY() * angle.getDY() +
338  getDZ() * angle.getDZ();
339  }

◆ getDot() [9/11]

double JGEOMETRY3D::JDirection3D::getDot ( const JVector3D pos) const
inlineinherited

Get dot product.

Parameters
posposition
Returns
dot product

Definition at line 348 of file JDirection3D.hh.

349  {
350  return
351  getDX() * pos.getX() +
352  getDY() * pos.getY() +
353  getDZ() * pos.getZ();
354  }

◆ getDot() [10/11]

double JGEOMETRY3D::JDirection3D::getDot ( const JVersor3Z dir) const
inlineinherited

Get dot product.

Parameters
dirdirection
Returns
dot product

Definition at line 363 of file JDirection3D.hh.

364  {
365  return
366  getDX() * dir.getDX() +
367  getDY() * dir.getDY() +
368  getDZ() * dir.getDZ();
369  }

◆ getDot() [11/11]

double JGEOMETRY3D::JVersor3D::getDot ( const JVersor3D versor) const
inlineinherited

Get dot product.

Parameters
versorversor
Returns
dot product

Definition at line 153 of file JVersor3D.hh.

154  {
155  return
156  getDX() * versor.getDX() +
157  getDY() * versor.getDY() +
158  getDZ() * versor.getDZ();
159  }

◆ getPosition() [1/2]

const JPosition3D& JGEOMETRY3D::JPosition3D::getPosition ( ) const
inlineinherited

Get position.

Returns
position

Definition at line 129 of file JPosition3D.hh.

130  {
131  return static_cast<const JPosition3D&>(*this);
132  }

◆ getPosition() [2/2]

JPosition3D& JGEOMETRY3D::JPosition3D::getPosition ( )
inlineinherited

Get position.

Returns
position

Definition at line 140 of file JPosition3D.hh.

141  {
142  return static_cast<JPosition3D&>(*this);
143  }

◆ setPosition()

void JGEOMETRY3D::JPosition3D::setPosition ( const JVector3D pos)
inlineinherited

Set position.

Parameters
posposition

Definition at line 151 of file JPosition3D.hh.

152  {
153  static_cast<JVector3D&>(*this) = pos;
154  }

◆ operator JAngle3D() [1/2]

JGEOMETRY3D::JPosition3D::operator JAngle3D ( ) const
inlineinherited

Type conversion operator.

Returns
angle

Definition at line 162 of file JPosition3D.hh.

163  {
164  return JAngle3D(getX(), getY(), getZ());
165  }

◆ operator JAngle3D() [2/2]

JGEOMETRY3D::JDirection3D::operator JAngle3D ( ) const
inlineinherited

Type conversion operator.

Returns
angle

Definition at line 138 of file JDirection3D.hh.

139  {
140  return JAngle3D(getDX(), getDY(), getDZ());
141  }

◆ operator JVersor3D()

JGEOMETRY3D::JPosition3D::operator JVersor3D ( ) const
inlineinherited

Type conversion operator.

Returns
direction

Definition at line 173 of file JPosition3D.hh.

174  {
175  return JVersor3D(getX(), getY(), getZ());
176  }

◆ operator JVector2D()

JGEOMETRY3D::JVector3D::operator JVector2D ( ) const
inlineinherited

Type conversion operator.

Returns
JVector2D

Definition at line 82 of file JVector3D.hh.

83  {
84  return JVector2D(this->getX(), this->getY());
85  }

◆ getX()

double JGEOMETRY3D::JVector3D::getX ( ) const
inlineinherited

Get x position.

Returns
x position

Definition at line 93 of file JVector3D.hh.

94  {
95  return __x;
96  }

◆ getY()

double JGEOMETRY3D::JVector3D::getY ( ) const
inlineinherited

Get y position.

Returns
y position

Definition at line 103 of file JVector3D.hh.

104  {
105  return __y;
106  }

◆ getZ()

double JGEOMETRY3D::JVector3D::getZ ( ) const
inlineinherited

Get z position.

Returns
z position

Definition at line 114 of file JVector3D.hh.

115  {
116  return __z;
117  }

◆ add()

JVector3D& JGEOMETRY3D::JVector3D::add ( const JVector3D vector)
inlineinherited

Add vector.

Parameters
vectorvector
Returns
this vector

Definition at line 141 of file JVector3D.hh.

142  {
143  __x += vector.getX();
144  __y += vector.getY();
145  __z += vector.getZ();
146 
147  return *this;
148  }

◆ sub()

JVector3D& JGEOMETRY3D::JVector3D::sub ( const JVector3D vector)
inlineinherited

Subtract vector.

Parameters
vectorvector
Returns
this vector

Definition at line 157 of file JVector3D.hh.

158  {
159  __x -= vector.getX();
160  __y -= vector.getY();
161  __z -= vector.getZ();
162 
163  return *this;
164  }

◆ mul() [1/3]

JVector3D& JGEOMETRY3D::JVector3D::mul ( const double  factor)
inlineinherited

Scale vector.

Parameters
factormultiplication factor
Returns
this vector

Definition at line 173 of file JVector3D.hh.

174  {
175  __x *= factor;
176  __y *= factor;
177  __z *= factor;
178 
179  return *this;
180  }

◆ mul() [2/3]

JVector3D & JMATH::JMath< JVector3D , JSecond_t >::mul ( const JSecond_t &  object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 273 of file JMath.hh.

274  {
275  return static_cast<JFirst_t&>(*this) = JCalculator<JFirst_t>::calculator.mul(static_cast<const JFirst_t&>(*this), object);
276  }

◆ mul() [3/3]

JVersor3D & JMATH::JMath< JVersor3D , JSecond_t >::mul ( const JSecond_t &  object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 273 of file JMath.hh.

274  {
275  return static_cast<JFirst_t&>(*this) = JCalculator<JFirst_t>::calculator.mul(static_cast<const JFirst_t&>(*this), object);
276  }

◆ div()

JVector3D& JGEOMETRY3D::JVector3D::div ( const double  factor)
inlineinherited

Scale vector.

Parameters
factordivision factor
Returns
this vector

Definition at line 189 of file JVector3D.hh.

190  {
191  __x /= factor;
192  __y /= factor;
193  __z /= factor;
194 
195  return *this;
196  }

◆ equals() [1/2]

bool JGEOMETRY3D::JVector3D::equals ( const JVector3D vector,
const double  precision = std::numeric_limits<double>::min() 
) const
inlineinherited

Check equality.

Parameters
vectorvector
precisionprecision
Returns
true if vectors are equal; else false

Definition at line 220 of file JVector3D.hh.

222  {
223  return (fabs(getX() - vector.getX()) <= precision &&
224  fabs(getY() - vector.getY()) <= precision &&
225  fabs(getZ() - vector.getZ()) <= precision);
226  }

◆ equals() [2/2]

bool JGEOMETRY3D::JVersor3D::equals ( const JVersor3D versor,
const double  precision = std::numeric_limits<double>::min() 
) const
inlineinherited

Check equality.

Parameters
versorversor
precisionprecision
Returns
true if versors are equal; else false

Definition at line 78 of file JVersor3D.hh.

80  {
81  return (fabs(getDX() - versor.getDX()) <= precision &&
82  fabs(getDY() - versor.getDY()) <= precision &&
83  fabs(getDZ() - versor.getDZ()) <= precision);
84  }

◆ getLengthSquared()

double JGEOMETRY3D::JVector3D::getLengthSquared ( ) const
inlineinherited

Get length squared.

Returns
square of length

Definition at line 234 of file JVector3D.hh.

235  {
236  return getX()*getX() + getY()*getY() + getZ()*getZ();
237  }

◆ getLength()

double JGEOMETRY3D::JVector3D::getLength ( ) const
inlineinherited

Get length.

Returns
length

Definition at line 245 of file JVector3D.hh.

246  {
247  return sqrt(getLengthSquared());
248  }

◆ cross()

JVector3D& JGEOMETRY3D::JVector3D::cross ( const JVector3D first,
const JVector3D second 
)
inlineinherited

Get cross product.

Note that this vector should not overlap with the first or second vector,

Parameters
firstfirst vector
secondsecond vector
Returns
this vector

Definition at line 298 of file JVector3D.hh.

300  {
301  __x = first .getY() * second.getZ() - second.getY() * first .getZ();
302  __y = second.getX() * first .getZ() - first .getX() * second.getZ();
303  __z = first .getX() * second.getY() - second.getX() * first .getY();
304 
305  return *this;
306  }

◆ getDirection() [1/2]

const JDirection3D& JGEOMETRY3D::JDirection3D::getDirection ( ) const
inlineinherited

Get direction.

Returns
direction

Definition at line 106 of file JDirection3D.hh.

107  {
108  return static_cast<const JDirection3D&>(*this);
109  }

◆ getDirection() [2/2]

JDirection3D& JGEOMETRY3D::JDirection3D::getDirection ( )
inlineinherited

Get direction.

Returns
direction

Definition at line 117 of file JDirection3D.hh.

118  {
119  return static_cast<JDirection3D&>(*this);
120  }

◆ setDirection()

void JGEOMETRY3D::JDirection3D::setDirection ( const JDirection3D dir)
inlineinherited

Set direction.

Parameters
dirdirection

Definition at line 128 of file JDirection3D.hh.

129  {
130  static_cast<JDirection3D&>(*this) = dir;
131  }

◆ operator JVector3D()

JGEOMETRY3D::JDirection3D::operator JVector3D ( ) const
inlineinherited

Type conversion operator.

Returns
position

Definition at line 149 of file JDirection3D.hh.

150  {
151  return JVector3D(getDX(), getDY(), getDZ());
152  }

◆ getDX()

double JGEOMETRY3D::JVersor3D::getDX ( ) const
inlineinherited

Get x direction.

Returns
x direction

Definition at line 92 of file JVersor3D.hh.

93  {
94  return __dx;
95  }

◆ getDY()

double JGEOMETRY3D::JVersor3D::getDY ( ) const
inlineinherited

Get y direction.

Returns
y direction

Definition at line 103 of file JVersor3D.hh.

104  {
105  return __dy;
106  }

◆ getDZ()

double JGEOMETRY3D::JVersor3D::getDZ ( ) const
inlineinherited

Get z direction.

Returns
z direction

Definition at line 114 of file JVersor3D.hh.

115  {
116  return __dz;
117  }

◆ getTheta()

double JGEOMETRY3D::JVersor3D::getTheta ( ) const
inlineinherited

Get theta angle.

Returns
theta angle [rad]

Definition at line 125 of file JVersor3D.hh.

126  {
127  if (__dz > +1.0)
128  return 0.0;
129  else if (__dz < -1.0)
130  return JTOOLS::PI;
131  else
132  return acos(__dz);
133  }

◆ getPhi()

double JGEOMETRY3D::JVersor3D::getPhi ( ) const
inlineinherited

Get phi angle.

Returns
phi angle [rad]

Definition at line 141 of file JVersor3D.hh.

142  {
143  return atan2(__dy, __dx);
144  }

◆ normalise()

JVersor3D& JGEOMETRY3D::JVersor3D::normalise ( )
inlineinherited

Normalise versor.

This operation may set the result to the unit z-vector.

Returns
this versor

Definition at line 168 of file JVersor3D.hh.

169  {
170  const double v = sqrt(getDX()*getDX() + getDY()*getDY() + getDZ()*getDZ());
171 
172  if (v != 0.0) {
173  __dx /= v;
174  __dy /= v;
175  __dz /= v;
176  }
177 
178  return *this;
179  }

◆ getCalibration()

const JCalibration& JDETECTOR::JCalibration::getCalibration ( ) const
inlineinherited

Get calibration.

Returns
calibration

Definition at line 61 of file JDetector/JCalibration.hh.

62  {
63  return *this;
64  }

◆ setCalibration()

void JDETECTOR::JCalibration::setCalibration ( const JCalibration cal)
inlineinherited

Set calibration.

Parameters
calcalibration

Definition at line 72 of file JDetector/JCalibration.hh.

73  {
74  *this = cal;
75  }

◆ getT0()

double JDETECTOR::JCalibration::getT0 ( ) const
inlineinherited

Get time offset.

Returns
time offset [ns]

Definition at line 83 of file JDetector/JCalibration.hh.

84  {
85  return t0;
86  }

◆ setT0()

void JDETECTOR::JCalibration::setT0 ( const double  t0)
inlineinherited

Set time offset.

Parameters
t0time offset [ns]

Definition at line 94 of file JDetector/JCalibration.hh.

95  {
96  this->t0 = t0;
97  }

◆ addT0()

void JDETECTOR::JCalibration::addT0 ( const double  t0)
inlineinherited

Add time offset.

Parameters
t0time offset [ns]

Definition at line 105 of file JDetector/JCalibration.hh.

106  {
107  this->t0 += t0;
108  }

◆ subT0()

void JDETECTOR::JCalibration::subT0 ( const double  t0)
inlineinherited

Subtract time offset.

Parameters
t0time offset [ns]

Definition at line 116 of file JDetector/JCalibration.hh.

117  {
118  this->t0 -= t0;
119  }

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.

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

◆ __x

double JGEOMETRY3D::JVector3D::__x
protectedinherited

Definition at line 309 of file JVector3D.hh.

◆ __y

double JGEOMETRY3D::JVector3D::__y
protectedinherited

Definition at line 310 of file JVector3D.hh.

◆ __z

double JGEOMETRY3D::JVector3D::__z
protectedinherited

Definition at line 311 of file JVector3D.hh.

◆ __dx

double JGEOMETRY3D::JVersor3D::__dx
protectedinherited

Definition at line 182 of file JVersor3D.hh.

◆ __dy

double JGEOMETRY3D::JVersor3D::__dy
protectedinherited

Definition at line 183 of file JVersor3D.hh.

◆ __dz

double JGEOMETRY3D::JVersor3D::__dz
protectedinherited

Definition at line 184 of file JVersor3D.hh.

◆ t0

double JDETECTOR::JCalibration::t0
protectedinherited

Definition at line 183 of file JDetector/JCalibration.hh.


The documentation for this class was generated from the following file:
JGEOMETRY3D::JVersor3D::getDZ
double getDZ() const
Get z direction.
Definition: JVersor3D.hh:114
JTRIGGER::JHitToolkit< JElement_t >
JGEOMETRY3D::JVersor3D::__dz
double __dz
Definition: JVersor3D.hh:184
std::iterator
Definition: JSTDTypes.hh:18
KM3NETDAQ::JDAQPMTIdentifier::getPMTAddress
int getPMTAddress() const
Get PMT identifier.
Definition: JDAQPMTIdentifier.hh:78
JGEOMETRY3D::JVersor3D::__dx
double __dx
Definition: JVersor3D.hh:182
KM3NETDAQ::JDAQChronometer::timeslice_start
JDAQUTCExtended timeslice_start
Definition: JDAQChronometer.hh:190
JGEOMETRY3D::JVector3D::__y
double __y
Definition: JVector3D.hh:310
JAANET::getHit
JHitL0 getHit(const Hit &hit)
Get transformation.
Definition: JAAnetToolkit.hh:292
JGEOMETRY3D::JVector3D::getLengthSquared
double getLengthSquared() const
Get length squared.
Definition: JVector3D.hh:234
JTRIGGER::JFrame::putEndMarker
void putEndMarker()
Append end marker to data.
Definition: JFrame.hh:99
JGEOMETRY3D::JQuaternion3D::rotate_back
void rotate_back(double &__x, double &__y, double &__z) const
Rotate back.
Definition: JQuaternion3D.hh:668
JGEOMETRY3D::JDirection3D::getDirection
const JDirection3D & getDirection() const
Get direction.
Definition: JDirection3D.hh:106
JGEOMETRY3D::JVector3D::getZ
double getZ() const
Get z position.
Definition: JVector3D.hh:114
JTRIGGER::JFrame::join
void join(const match_type &match)
Join consecutive hits when matched according given criterion.
Definition: JFrame.hh:150
JTOOLS::u
double u[N+1]
Definition: JPolint.hh:706
JGEOMETRY3D::JAxis3D::transform
void transform(const JAxis3D &axis)
Transform axis to reference frame of given axis.
Definition: JAxis3D.hh:370
KM3NETDAQ::JDAQPMTIdentifier::address
int address
Definition: JDAQPMTIdentifier.hh:141
std::vector
Definition: JSTDTypes.hh:12
JTRIGGER::JFrame::const_iterator
container_type::const_iterator const_iterator
Definition: JFrame.hh:45
JGEOMETRY3D::JPosition3D::JPosition3D
JPosition3D()
Default constructor.
Definition: JPosition3D.hh:47
JGEOMETRY3D::JDirection3D
Data structure for direction in three dimensions.
Definition: JDirection3D.hh:32
JGEOMETRY3D::JVersor3D
Data structure for normalised vector in three dimensions.
Definition: JVersor3D.hh:23
distance
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
Definition: PhysicsEvent.hh:434
KM3NETDAQ::JDAQModuleIdentifier::id
int id
Definition: JDAQModuleIdentifier.hh:112
KM3NETDAQ::getFrameTime
double getFrameTime()
Get frame time duration.
Definition: JDAQClock.hh:162
KM3NETDAQ::JDAQModuleIdentifier::getModuleIdentifier
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
Definition: JDAQModuleIdentifier.hh:50
JDETECTOR::JCalibration::t0
double t0
Definition: JDetector/JCalibration.hh:183
JGEOMETRY3D::JVector3D
Data structure for vector in three dimensions.
Definition: JVector3D.hh:33
JGEOMETRY3D::JPosition3D
Data structure for position in three dimensions.
Definition: JPosition3D.hh:35
JDETECTOR::JCalibration::getCalibration
const JCalibration & getCalibration() const
Get calibration.
Definition: JDetector/JCalibration.hh:61
JGEOMETRY3D::JAngle3D::getDX
double getDX() const
Get x direction.
Definition: JAngle3D.hh:106
JGEOMETRY3D::JVersor3D::getDX
double getDX() const
Get x direction.
Definition: JVersor3D.hh:92
JTRIGGER::JFrame::u_begin
const_iterator u_begin() const
iterator without end marker
Definition: JFrame.hh:105
KM3NETDAQ::JDAQChronometer::frame_index
int frame_index
Definition: JDAQChronometer.hh:189
JGEOMETRY3D::JVersor3D::getDY
double getDY() const
Get y direction.
Definition: JVersor3D.hh:103
JTRIGGER::JFrame::reset
void reset()
Reset.
Definition: JFrame.hh:122
JTRIGGER::JFrame::u_end
const_iterator u_end() const
iterator without end marker
Definition: JFrame.hh:106
JGEOMETRY3D::JVersor3D::__dy
double __dy
Definition: JVersor3D.hh:183
JGEOMETRY3D::JRotation3Z
Rotation around Z-axis.
Definition: JRotation3D.hh:85
JTOOLS::v
data_type v[N+1][M+1]
Definition: JPolint.hh:707
JGEOMETRY3D::JAxis3D::getDistanceSquared
double getDistanceSquared(const JVector3D &pos) const
Get distance squared.
Definition: JAxis3D.hh:206
JGEOMETRY3D::JAxis3D::transform_back
void transform_back(const JRotation3D &R, const JVector3D &pos)
Transform back axis.
Definition: JAxis3D.hh:426
JGEOMETRY3D::JAngle3D
Data structure for angles in three dimensions.
Definition: JAngle3D.hh:31
JGEOMETRY3D::JAngle3D::getDZ
double getDZ() const
Get z direction.
Definition: JAngle3D.hh:128
JGEOMETRY3D::JVersor3D::normalise
JVersor3D & normalise()
Normalise versor.
Definition: JVersor3D.hh:168
JGEOMETRY3D::JPosition3D::getPosition
const JPosition3D & getPosition() const
Get position.
Definition: JPosition3D.hh:129
JTRIGGER::JPMTHeader::JPMTHeader
JPMTHeader()
Default constructor.
Definition: JPMTHeader.hh:34
JGEOMETRY3D::JVector3D::getY
double getY() const
Get y position.
Definition: JVector3D.hh:103
JTOOLS::PI
static const double PI
Constants.
Definition: JConstants.hh:20
KM3NETDAQ::JDAQChronometer::run
int run
Definition: JDAQChronometer.hh:188
JGEOMETRY3D::JAngle3D::getDY
double getDY() const
Get y direction.
Definition: JAngle3D.hh:117
JGEOMETRY3D::JVersor3Z::getDY
double getDY() const
Get y direction.
Definition: JVersor3Z.hh:156
JGEOMETRY3D::JVector3D::__z
double __z
Definition: JVector3D.hh:311
JMATH::JCalculator
Auxiliary class for arithmetic operations on objects.
Definition: JCalculator.hh:18
JTOOLS::r
data_type r[M+1]
Definition: JPolint.hh:709
JGEOMETRY3D::JVector3D::__x
double __x
Definition: JVector3D.hh:309
JGEOMETRY3D::JVector3D::getX
double getX() const
Get x position.
Definition: JVector3D.hh:93
JGEOMETRY3D::JVersor3Z::getDZ
double getDZ() const
Get z direction.
Definition: JVersor3Z.hh:167
JDETECTOR::JCalibration::JCalibration
JCalibration()
Default constructor.
Definition: JDetector/JCalibration.hh:41
JGEOMETRY3D::JRotation3D::getRotation
const JRotation3D & getRotation() const
Get rotation.
Definition: JRotation3D.hh:272
JGEOMETRY3D::JRotation3D
Rotation matrix.
Definition: JRotation3D.hh:111
JGEOMETRY3D::JVersor3Z::getDX
double getDX() const
Get x direction.
Definition: JVersor3Z.hh:145
JMATH::JMatrix3D::sub
JMatrix3D & sub(const JMatrix3D &A)
Matrix subtraction.
Definition: JMath/JMatrix3D.hh:192
KM3NETDAQ::JDAQChronometer::detector_id
int detector_id
Definition: JDAQChronometer.hh:187