Jpp
|
Local coincidence cluster builder. More...
#include <JClusterBuilder.hh>
Classes | |
class | MinimalMultiplicityFunctor |
functor that compares the multiplicity of a JCluster to some fixed given multiplicity. More... | |
Public Types | |
typedef JHitL1 | value_type |
typedef JMatch< value_type > | match_type |
typedef JDAQHitSelector | selector_type |
Public Member Functions | |
JClusterBuilder (const double window, const bool combine) | |
default constructor More... | |
JClusterBuilder (const JDAQSuperFrame &frame, const JModule &module, const double window, const bool combine) | |
constructor More... | |
void | reset (const JDAQSuperFrame &frame, const JModule &module) |
This is a way to re-use the allocated memory. More... | |
vector< JCluster >::const_iterator | begin_m (unsigned int multiplicity) const |
returns begin iterator for clusters with exactly the given multiplicity More... | |
vector< JCluster >::const_iterator | end_m (unsigned int multiplicity) const |
returns end iterator for clusters with exactly the given multiplicity More... | |
vector< JCluster >::const_iterator | begin_inclusive_m (unsigned int multiplicity) const |
returns begin iterator for clusters with at least the given multiplicity More... | |
vector< JCluster >::const_iterator | end_inclusive_m (unsigned int multiplicity) const |
returns end iterator for clusters with at least the given multiplicity More... | |
unsigned int | getNclusters (const unsigned int multiplicity) const |
return the number of clusters with exactly the given multiplicity More... | |
unsigned int | getInclusiveNclusters (const unsigned int multiplicity) const |
return the number of clusters with at least the given multiplicity More... | |
template<class JOutput_t > | |
void | operator() (const JSuperFrame2D< JHit > &input, JOutput_t out) const |
Build hits from calibrated data. More... | |
template<class JOutput_t > | |
void | operator() (const JDAQSuperFrame &input, const JModule &module, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (typename JSuperFrame2D< JHit >::const_iterator __begin, typename JSuperFrame2D< JHit >::const_iterator __end, JOutput_t out) const |
Build hits from set of frames with calibrated data. More... | |
void | operator() (const JSuperFrame1D< JHit > &input, JOutput_t out) const |
Build hits from calibrated data. More... | |
void | operator() (const JDAQTimeslice ×lice, const JModuleRouter &router, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (const JDAQEvent &event, const JModuleRouter &router, bool snapshot, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (const JDAQEvent &event, const JModuleRouter &router, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (const JDAQTimeslice ×lice, const JModuleRouter &router, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (const JDAQEvent &event, const JModuleRouter &router, bool snapshot, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | operator() (const JDAQEvent &event, const JModuleRouter &router, JOutput_t out) const |
Build hits from uncalibrated DAQ data. More... | |
void | setPreprocessor (const JPreprocessor::JOption_t option, const match_type &match) |
Set pre-processor of consecutive hits. More... | |
void | resetPreprocessor () |
Reset pre-processor of consecutive hits. More... | |
void | setDAQHitSelector (const JDAQHitSelector &selector) |
Set DAQ hit selector. More... | |
void | resetDAQHitSelector () |
Reset DAQ hit selector. More... | |
JSuperFrame2D< JHit > & | demultiplex (const JDAQSuperFrame &input, const JModule &module) const |
Demultiplex and pre-process DAQ super frame. More... | |
const JPMT & | getPMT (const int index) const |
Get PMT. More... | |
JPMT & | getPMT (const int index) |
Get PMT. More... | |
void | setPMT (const int index, const JPMT &pmt) |
Set PMT. More... | |
void | compile () |
Compile position of module from the positions and directions of the PMTs. More... | |
void | rotate (const JRotation3D &R) |
Rotate module. More... | |
void | rotate (const JQuaternion3D &Q) |
Rotate module. More... | |
JPosition3D & | rotate (const JRotation3X &R) |
Rotate around X-axis. More... | |
JPosition3D & | rotate (const JRotation3Y &R) |
Rotate around Y-axis. More... | |
JPosition3D & | rotate (const JRotation3Z &R) |
Rotate around Z-axis. More... | |
void | rotate_back (const JRotation3D &R) |
Rotate back module. More... | |
void | rotate_back (const JQuaternion3D &Q) |
Rotate back module. More... | |
JPosition3D & | rotate_back (const JRotation3X &R) |
Rotate back around X-axis. More... | |
JPosition3D & | rotate_back (const JRotation3Y &R) |
Rotate back around Y-axis. More... | |
JPosition3D & | rotate_back (const JRotation3Z &R) |
Rotate back around Z-axis. More... | |
void | transform (const JRotation3D &R, const JVector3D &pos) |
Transformation of geometry (see method JGEOMETRY3D::JPosition3D::transform(const JRotation3D&, const JVector3D&)). More... | |
void | transform (const JTransformation3D &T) |
Transformation of geometry. More... | |
JVector3D & | transform (const JMatrix3D &T) |
Transform. More... | |
JModule & | set (const JVector3D &pos) |
Set position. More... | |
JModule & | set (const double t0) |
Set time offset. More... | |
JModule & | add (const JVector3D &pos) |
Add position. More... | |
JModule & | add (const double t0) |
Add time offset. More... | |
JModule & | sub (const JVector3D &pos) |
Subtract position. More... | |
JModule & | sub (const double t0) |
Subtract time offset. More... | |
JModule & | operator+= (const JVector3D &pos) |
Add position. More... | |
JModule & | operator-= (const JVector3D &pos) |
Subtract position. More... | |
int | getID () const |
Get identifier. More... | |
void | setID (const int id) |
Set identifier. More... | |
bool | less (const JObjectID &object) const |
Less than method. More... | |
bool | less (const int id) const |
Less than method. More... | |
bool | less (const JLocation &location) const |
Less than method. More... | |
bool | more (const int id) const |
More than method. More... | |
const JLocation & | getLocation () const |
Get location. More... | |
JLocation & | getLocation () |
Get location. More... | |
void | setLocation (const JLocation &location) |
Set location. More... | |
std::string | toString () const |
Convert module location to string. More... | |
std::string | toString (const std::string &fmt, const std::string target="%") const |
Convert module loation to string. More... | |
int | getString () const |
Get string number. More... | |
int | getFloor () const |
Get floor number. More... | |
const JPosition3D & | getPosition () const |
Get position. More... | |
JPosition3D & | getPosition () |
Get position. More... | |
void | setPosition (const JVector3D &pos) |
Set position. More... | |
operator JAngle3D () const | |
Type conversion operator. More... | |
operator JVersor3D () const | |
Type conversion operator. More... | |
void | transform_back (const JRotation3D &R, const JVector3D &pos) |
Transform back position. 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... | |
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... | |
JVector3D & | negate () |
Negate vector. More... | |
JVector3D & | mul (const double factor) |
Scale vector. More... | |
JVector3D & | mul (const JNullType &object) |
Multiply with object. More... | |
JVector3D & | div (const double factor) |
Scale vector. More... | |
bool | equals (const JVector3D &vector, 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... | |
double | getDistanceSquared (const JVector3D &pos) const |
Get squared of distance to point. More... | |
double | getDistance (const JVector3D &pos) const |
Get distance to point. More... | |
JVector3D & | cross (const JVector3D &first, const JVector3D &second) |
Get cross product. More... | |
Static Public Member Functions | |
static const JModule & | getInstance () |
Get reference to unique instance of this class object. More... | |
static bool | compare (const JModule &first, const JModule &second, const double precision=1.0e-3) |
Compare modules. More... | |
Public Attributes | |
double | TMax_ns |
bool | combine |
JPreprocessor::JOption_t | option |
pre-processor option More... | |
JLANG::JSharedPointer< match_type > | match |
pre-processor match criterion More... | |
JLANG::JSharedPointer < selector_type > | selector |
DAQ hit selector. More... | |
Protected Member Functions | |
void | setEndIterators () |
Use std::partition to sort the clusters in order of decreasing multiplicity. More... | |
Protected Attributes | |
const unsigned int | max_multiplicity |
the highest allowed value for the multiplicity More... | |
vector< vector< JCluster > ::iterator > | end_iterators |
iterators pointing to the first element whose multiplicity is lower than the index More... | |
int | __id |
int | string |
int | floor |
double | __x |
double | __y |
double | __z |
Local coincidence cluster builder.
A coincidence cluster is defined as two or more hits on the same DOM within the defined time window.
Given a JDAQSuperframe (for the hits) and the corresponding JModule (for the timing) all the coincidence clusters are extracted and sorted by multiplicity.
Internally, the clusters are stored as a vector of JClusters
frame | JDAQSuperframe containing the hits |
module | module corresponding to the JDAQSuperframe |
window | time window used for clustering |
Definition at line 47 of file JClusterBuilder.hh.
|
inherited |
Definition at line 205 of file JBuildL1.hh.
|
inherited |
|
inherited |
|
inline |
default constructor
Definition at line 52 of file JClusterBuilder.hh.
|
inline |
constructor
Definition at line 58 of file JClusterBuilder.hh.
|
inline |
This is a way to re-use the allocated memory.
It behaves like the constructor, but new memory does not have to be allocated for vector<JCluster> all the time.
Definition at line 72 of file JClusterBuilder.hh.
|
inline |
returns begin iterator for clusters with exactly the given multiplicity
Definition at line 82 of file JClusterBuilder.hh.
|
inline |
returns end iterator for clusters with exactly the given multiplicity
Definition at line 90 of file JClusterBuilder.hh.
|
inline |
returns begin iterator for clusters with at least the given multiplicity
Definition at line 98 of file JClusterBuilder.hh.
|
inline |
returns end iterator for clusters with at least the given multiplicity
Definition at line 103 of file JClusterBuilder.hh.
|
inline |
return the number of clusters with exactly the given multiplicity
Definition at line 108 of file JClusterBuilder.hh.
|
inline |
return the number of clusters with at least the given multiplicity
Definition at line 113 of file JClusterBuilder.hh.
|
inlineprotected |
Use std::partition to sort the clusters in order of decreasing multiplicity.
The end_iterators denote the boundaries.
Definition at line 123 of file JClusterBuilder.hh.
|
inlineinherited |
Build hits from calibrated data.
The output data are time sorted.
input | input L0 data |
out | output L1 data |
Definition at line 227 of file JBuildL1.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The time calibration is applied. The output data are time sorted.
input | DAQ super frame |
module | module |
out | output L1 data |
Definition at line 266 of file JBuildL1.hh.
|
inlineinherited |
Build hits from set of frames with calibrated data.
The output data are time sorted.
__begin | begin of input L0 data |
__end | end of input L0 data |
out | output L1 data |
Definition at line 133 of file JBuildL1.hh.
|
inlineinherited |
Build hits from calibrated data.
The output data are time sorted.
input | input L0 data |
out | output L1 data |
Definition at line 150 of file JBuildL1.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The time calibration is applied. Note that the output data are not time sorted.
timeslice | DAQ time slice |
router | module router |
out | output data |
Definition at line 57 of file JBuildHelper.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The time calibration is applied. Note that the output data are not time sorted.
event | DAQ event |
router | module router |
snapshot | use shapshot hits (else use triggered hits) |
out | output data |
Definition at line 81 of file JBuildHelper.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The snapshot data of the DAQ event are used. The time calibration is applied. Note that the output data are not time sorted.
event | DAQ event |
router | module router |
out | output data |
Definition at line 102 of file JBuildHelper.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The time calibration is applied. Note that the output data are not time sorted.
timeslice | DAQ time slice |
router | module router |
out | output data |
Definition at line 57 of file JBuildHelper.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The time calibration is applied. Note that the output data are not time sorted.
event | DAQ event |
router | module router |
snapshot | use shapshot hits (else use triggered hits) |
out | output data |
Definition at line 81 of file JBuildHelper.hh.
|
inlineinherited |
Build hits from uncalibrated DAQ data.
The snapshot data of the DAQ event are used. The time calibration is applied. Note that the output data are not time sorted.
event | DAQ event |
router | module router |
out | output data |
Definition at line 102 of file JBuildHelper.hh.
|
inlineinherited |
Set pre-processor of consecutive hits.
option | option |
match | match criterion |
Definition at line 59 of file JBuild.hh.
|
inlineinherited |
Reset pre-processor of consecutive hits.
Definition at line 69 of file JBuild.hh.
|
inlineinherited |
Set DAQ hit selector.
selector | DAQ hit selector |
Definition at line 81 of file JBuild.hh.
|
inlineinherited |
Reset DAQ hit selector.
Definition at line 90 of file JBuild.hh.
|
inlineinherited |
Demultiplex and pre-process DAQ super frame.
input | DAQ super frame |
module | module data |
Definition at line 103 of file JBuild.hh.
|
inlinestaticinherited |
Get reference to unique instance of this class object.
This method returns a module with the standard configuration of PMTs.
Definition at line 90 of file JModule.hh.
|
inlinestaticinherited |
Compare modules.
The comparison only covers the orientations of the modules.
first | first module |
second | second module |
precision | precision |
Definition at line 148 of file JModule.hh.
|
inlineinherited |
Get PMT.
index | readout channel (TDC) |
Definition at line 174 of file JModule.hh.
|
inlineinherited |
Get PMT.
index | readout channel (TDC) |
Definition at line 186 of file JModule.hh.
|
inlineinherited |
Set PMT.
index | readout channel (TDC) |
pmt | PMT |
Definition at line 198 of file JModule.hh.
|
inlineinherited |
Compile position of module from the positions and directions of the PMTs.
Definition at line 211 of file JModule.hh.
|
inlineinherited |
Rotate module.
R | rotation matrix |
Definition at line 242 of file JModule.hh.
|
inlineinherited |
Rotate module.
Q | quaternion |
Definition at line 304 of file JModule.hh.
|
inlineinherited |
Rotate around X-axis.
R | rotation matrix |
Definition at line 213 of file JPosition3D.hh.
|
inlineinherited |
Rotate around Y-axis.
R | rotation matrix |
Definition at line 241 of file JPosition3D.hh.
|
inlineinherited |
Rotate around Z-axis.
R | rotation matrix |
Definition at line 269 of file JPosition3D.hh.
|
inlineinherited |
Rotate back module.
R | rotation matrix |
Definition at line 257 of file JModule.hh.
|
inlineinherited |
Rotate back module.
Q | quaternion |
Definition at line 319 of file JModule.hh.
|
inlineinherited |
Rotate back around X-axis.
R | rotation matrix |
Definition at line 227 of file JPosition3D.hh.
|
inlineinherited |
Rotate back around Y-axis.
R | rotation matrix |
Definition at line 255 of file JPosition3D.hh.
|
inlineinherited |
Rotate back around Z-axis.
R | rotation matrix |
Definition at line 283 of file JPosition3D.hh.
|
inlineinherited |
Transformation of geometry (see method JGEOMETRY3D::JPosition3D::transform(const JRotation3D&, const JVector3D&)).
R | rotation matrix |
pos | position of origin (after rotation) |
Definition at line 273 of file JModule.hh.
|
inlineinherited |
Transformation of geometry.
T | transformation |
Definition at line 289 of file JModule.hh.
|
inlineinherited |
Set time offset.
t0 | time offset [ns] |
Definition at line 383 of file JModule.hh.
Add position.
pos | position |
Definition at line 347 of file JModule.hh.
|
inlineinherited |
Add time offset.
t0 | time offset [ns] |
Definition at line 399 of file JModule.hh.
Subtract position.
pos | position |
Definition at line 365 of file JModule.hh.
|
inlineinherited |
Subtract time offset.
t0 | time offset [ns] |
Definition at line 415 of file JModule.hh.
Subtract position.
pos | position |
Definition at line 443 of file JModule.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Less than method.
object | object identifier |
Definition at line 78 of file JObjectID.hh.
|
inlineinherited |
Less than method.
id | identifier |
Definition at line 90 of file JObjectID.hh.
|
inlineinherited |
Less than method.
location | module location |
Definition at line 157 of file JLocation.hh.
|
inlineinherited |
More than method.
id | identifier |
Definition at line 102 of file JObjectID.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Convert module location to string.
Definition at line 102 of file JLocation.hh.
|
inlineinherited |
Convert module loation to string.
The targets target
in the format string fmt
are consecutively replaced by floor
and string
.
fmt | format |
target | target |
Definition at line 118 of file JLocation.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Get position.
Definition at line 129 of file JPosition3D.hh.
|
inlineinherited |
Get position.
Definition at line 140 of file JPosition3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Type conversion operator.
Definition at line 173 of file JPosition3D.hh.
|
inlineinherited |
Transform back position.
The final position is obtained as follows:
R | rotation matrix |
pos | position of origin (before rotation) |
Definition at line 358 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
angle | angle |
Definition at line 377 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
dir | direction |
Definition at line 392 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
dir | direction |
Definition at line 407 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
vector | vector |
Definition at line 281 of file JVector3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Scale vector.
factor | multiplication factor |
Definition at line 173 of file JVector3D.hh.
|
inlineinherited |
Multiply with object.
object | object |
Definition at line 273 of file JMath.hh.
|
inlineinherited |
Scale vector.
factor | division factor |
Definition at line 189 of file JVector3D.hh.
|
inlineinherited |
Check equality.
vector | vector |
precision | precision |
Definition at line 220 of file JVector3D.hh.
|
inlineinherited |
|
inlineinherited |
Get length.
Definition at line 245 of file JVector3D.hh.
|
inlineinherited |
Get squared of distance to point.
pos | position |
Definition at line 257 of file JVector3D.hh.
|
inlineinherited |
Get distance to point.
pos | position |
Definition at line 269 of file JVector3D.hh.
|
inlineinherited |
Get cross product.
Note that this vector should not overlap with the first or second vector,
first | first vector |
second | second vector |
Definition at line 298 of file JVector3D.hh.
|
protected |
the highest allowed value for the multiplicity
Definition at line 150 of file JClusterBuilder.hh.
iterators pointing to the first element whose multiplicity is lower than the index
Definition at line 156 of file JClusterBuilder.hh.
|
inherited |
Definition at line 74 of file JBuildL1.hh.
|
inherited |
Definition at line 75 of file JBuildL1.hh.
|
inherited |
|
inherited |
|
inherited |
|
protectedinherited |
Definition at line 160 of file JObjectID.hh.
|
protectedinherited |
Definition at line 234 of file JLocation.hh.
|
protectedinherited |
Definition at line 235 of file JLocation.hh.
|
protectedinherited |
Definition at line 309 of file JVector3D.hh.
|
protectedinherited |
Definition at line 310 of file JVector3D.hh.
|
protectedinherited |
Definition at line 311 of file JVector3D.hh.