1 #ifndef __JTRIGGER__JBUILDL1__
2 #define __JTRIGGER__JBUILDL1__
58 TMax_ns(parameters.TMaxLocal_ns),
69 TMax_ns(parameters.TMaxLocal_ns),
84 template<
class JHit_t>
116 template<
class JOutput_t>
119 (*this)(input.begin(), input.end(), out);
132 template<
class JOutput_t>
149 template<
class JOutput_t>
152 int n = input.size();
181 template<
class JOutput_t>
186 if (!input.
empty()) {
226 template<
class JOutput_t>
233 static_cast<const JBuildL1<JHit>&
>(*this)(input, std::back_inserter(buffer));
243 hit.push_back(
JHitL0(i->getPMTIdentifier(),
265 template<
class JOutput_t>
270 if (!input.
empty()) {
313 template<
class JOutput_t>
320 static_cast<const JBuildL1<JHit>&
>(*this)(input, std::back_inserter(buffer));
331 if (i->getTimeDifference(*p) <=
TMax_ns) {
334 hit.
set(i->getJHit());
336 hit.
add(i->getJHit());
339 if (i->getT() < hit.
getT()) {
360 template<
class JOutput_t>
365 if (!input.
empty()) {
Basic data structure for L0 hit.
Basic data structure for L1 hit.
Reduced data structure for L1 hit.
Data structure for optical module.
Basic data structure for time and time over threshold information of hit.
Data structure for a composite optical module.
void setPosition(const JVector3D &pos)
Set position.
const JPosition3D & getPosition() const
Get position.
void operator()(const JDAQSuperFrame &input, const JModule &module, JOutput_t out) const
Build hits from uncalibrated DAQ data.
void operator()(const JSuperFrame2D< JHit > &input, JOutput_t out) const
Build hits from calibrated data.
JBuildL1(const JBuildL1Parameters ¶meters)
Constructor.
std::vector< JHit > buffer
JBuildL1(const JBuildL1Parameters ¶meters)
Constructor.
std::vector< JHit > buffer
void operator()(const JDAQSuperFrame &input, const JModule &module, JOutput_t out) const
Build hits from uncalibrated DAQ data.
void operator()(const JSuperFrame2D< JHit > &input, JOutput_t out) const
Build hits from calibrated data.
void operator()(const JSuperFrame1D< JHit_t > &input, JOutput_t out) const
Build hits from calibrated data.
void operator()(const JDAQSuperFrame &input, const JModule &module, JOutput_t out) const
Build hits from DAQ data.
JBuildL1(const JBuildL1Parameters ¶meters)
Constructor.
void operator()(typename JSuperFrame2D< JHit_t >::const_iterator __begin, typename JSuperFrame2D< JHit_t >::const_iterator __end, JOutput_t out) const
Build hits from set of frames with calibrated data.
void operator()(const JSuperFrame2D< JHit_t > &input, JOutput_t out) const
Build hits from calibrated data.
JContainer_t::const_iterator const_iterator
Data structure for L0 hit.
Data structure for L1 hit.
const JHitL1 & sort()
Sort L0 hits.
Reduced data structure for L1 hit.
void set(const JHit &hit, const double weight=1.0)
Set hit.
int getN() const
Get count.
JHitR1 & add(const JHit &hit, const double weight=1.0)
Add hit.
double getT() const
Get calibrated time of hit.
1-dimensional frame with time calibrated data from one optical module.
static JSuperFrame1D< JElement_t, JAllocator_t > multiplex
Multiplexer.
2-dimensional frame with time calibrated data from one optical module.
std::vector< value_type >::const_iterator const_iterator
std::vector< value_type >::const_iterator const_iterator
void fast_forward(argument_type hit) const
Increment the internal iterators until the lower bounds corresponding to the time of the given hit.
Data structure for all trigger parameters.
int getModuleID() const
Get module identifier.
Data frame of one optical module.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary classes and methods for triggering.
double getTimeDifference(const JDAQChronometer &first, const JDAQChronometer &second)
Get time difference between two chronometers.
Auxiliary class to set-up Hit.
Auxiliary class to extend hit building functionality to all DAQ data types.
Auxiliary data structure for L1 build parameters.
JBuildL1Parameters(const JTriggerParameters ¶meters)
Constructor.
JBuildL1Parameters(const JL2Parameters ¶meters)
Constructor.
JBuildL1Parameters(const double Tmax_ns, const bool combine)
Constructor.
Auxiliary base class for hit building.
JSuperFrame2D< JHit_t > & demultiplex(const JDAQSuperFrame &input, const JModule &module) const
Demultiplex and pre-process DAQ super frame.
Data structure for L2 parameters.