1#ifndef __JTRIGGER__JBUILDL2__ 
    2#define __JTRIGGER__JBUILDL2__ 
   44  template<
class JHit_t>
 
   80    template<
class JOutput_t>
 
   82                    const std::vector  <JHit_t>& inputL1,
 
   87      for (
typename std::vector<JHit_t>::const_iterator p = inputL1.begin(); p != inputL1.end(); ++p) {
 
 
  112    template<
class T, 
class JOutput_t>
 
  115                    const std::vector  <JHit_t>& inputL1,
 
  120      for (
typename std::vector<JHit_t>::const_iterator p = inputL1.begin(); p != inputL1.end(); ++p) {
 
  124        if (
isL2(clone,*p)) {
 
 
  142    template<
class JOutput_t>
 
  163    template<
class JOutput_t>
 
  168      if (!input.
empty()) {
 
 
  202                if (
getDot(i->getDirection(), 
j->getDirection()) >= 
ctMin) {
 
 
 
  259    template<
class JOutput_t>
 
  261                    const std::vector  <JHit>& inputL2,
 
  266      for (
typename std::vector<JHit>::const_iterator p = inputL2.begin(); p != inputL2.end(); ++p) {
 
  274            hit.push_back(
JHitL0(i->getPMTIdentifier(),
 
 
  296    template<
class JOutput_t>
 
  301      static_cast<const JBuildL2<JHit>&
>(*this)(inputL0, std::back_inserter(bufferL2));
 
  303      (*this)(inputL0, bufferL2, out);
 
 
  317    template<
class JOutput_t>
 
  322      if (!input.
empty()) {
 
  326        (*this)(bufferL0, out);
 
 
 
  372    template<
class JOutput_t>
 
  374                    const std::vector  <JHit>& inputL2,
 
  379      for (
typename std::vector<JHit>::const_iterator p = inputL2.begin(); p != inputL2.end(); ++p) {
 
  391              hit.
set(i->getJHit());
 
  393              hit.
add(i->getJHit());
 
  395            if (i->getT() < hit.
getT()) {
 
 
  417    template<
class JOutput_t>
 
  422      static_cast<const JBuildL2<JHit>&
>(*this)(inputL0, std::back_inserter(bufferL2));
 
  424      (*this)(inputL0, bufferL2, out);
 
 
  438    template<
class JOutput_t>
 
  443      if (!input.
empty()) {
 
  447        (*this)(bufferL0, out);
 
 
 
Basic data structure for L0 hit.
 
Basic data structure for L2 hit.
 
Basic data structure for R2 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.
 
std::vector< JHit > bufferL2
 
void operator()(const JSuperFrame2D< JHit > &inputL0, 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.
 
JBuildL2(const JL2Parameters ¶meters)
Constructor.
 
void operator()(const JSuperFrame2D< JHit > &inputL0, const std::vector< JHit > &inputL2, JOutput_t out) const
Build hits from calibrated data.
 
void operator()(const JSuperFrame2D< JHit > &inputL0, 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.
 
void operator()(const JSuperFrame2D< JHit > &inputL0, const std::vector< JHit > &inputL2, JOutput_t out) const
Build hits from calibrated data.
 
JBuildL2(const JL2Parameters ¶meters)
Constructor.
 
std::vector< JHit > bufferL2
 
void operator()(const JSuperFrame2D< JHit_t > &inputL0, const std::vector< JHit_t > &inputL1, JOutput_t out) const
Build hits from calibrated data.
 
JBuildL2(const JL2Parameters ¶meters)
Constructor.
 
void operator()(T __begin, T __end, const std::vector< JHit_t > &inputL1, JOutput_t out) const
Build hits from calibrated data.
 
std::vector< JHit_t > bufferL1
 
void operator()(const JDAQSuperFrame &input, const JModule &module, JOutput_t out) const
Build hits from DAQ data.
 
bool isL2(const JSuperFrameClone2D< JHit_t > &clone, const JHit_t &hit) const
Test if requirements for given hit are satisfied.
 
void operator()(const JSuperFrame2D< JHit_t > &inputL0, 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.
 
JHitR1 & add(const JHit &hit, const double weight=1.0)
Add hit.
 
int getN() const
Get count.
 
double getT() const
Get calibrated time of hit.
 
2-dimensional frame with time calibrated data from one optical module.
 
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.
 
int getModuleID() const
Get module identifier.
 
Data frame of one optical module.
 
double getDot(const JNeutrinoDirection &first, const JNeutrinoDirection &second)
Dot product.
 
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.
 
JSuperFrame2D< JHit_t > & demultiplex(const JDAQSuperFrame &input, const JModule &module) const
Demultiplex and pre-process DAQ super frame.
 
Data structure for L2 parameters.
 
double ctMin
minimal cosine space angle between PMT axes
 
double TMaxLocal_ns
maximal time difference [ns]
 
int numberOfHits
minimal number of hits