Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
JTRIGGER::JBuildL0< JElement_t > Class Template Reference

Template L0 hit builder. More...

#include <JBuildL0.hh>

Inheritance diagram for JTRIGGER::JBuildL0< JElement_t >:
JTRIGGER::JHitToolkit< JElement_t > JTRIGGER::JBuildHelper< JBuildL0< JElement_t > >

Public Types

typedef JElement_t value_type
 

Public Member Functions

 JBuildL0 ()
 Default constructor. More...
 
template<class JOutput_t >
void operator() (const JSuperFrame2D< JElement_t > &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() (const JDAQTimeslice &timeslice, 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...
 

Detailed Description

template<class JElement_t>
class JTRIGGER::JBuildL0< JElement_t >

Template L0 hit builder.

An L0 hit is a hit from a PMT.

Definition at line 35 of file JBuildL0.hh.

Member Typedef Documentation

template<class JElement_t>
typedef JElement_t JTRIGGER::JBuildL0< JElement_t >::value_type

Definition at line 43 of file JBuildL0.hh.

Constructor & Destructor Documentation

template<class JElement_t>
JTRIGGER::JBuildL0< JElement_t >::JBuildL0 ( )
inline

Default constructor.

Definition at line 49 of file JBuildL0.hh.

50  {}

Member Function Documentation

template<class JElement_t>
template<class JOutput_t >
void JTRIGGER::JBuildL0< JElement_t >::operator() ( const JSuperFrame2D< JElement_t > &  input,
JOutput_t  out 
) const
inline

Build hits from calibrated data.

Note that the output data are not time sorted.

Parameters
inputinput L0 data
outoutput L0 data

Definition at line 62 of file JBuildL0.hh.

63  {
64  for (typename JSuperFrame2D<JElement_t>::const_iterator frame = input.begin(); frame != input.end(); ++frame) {
65 
66  int n = frame->size() - 1; // remove end marker
67 
68  for (typename JSuperFrame2D<JElement_t>::value_type::const_iterator i = frame->begin(); n != 0; ++i, --n) {
69  *out = *i;
70  ++out;
71  }
72  }
73  }
std::vector< frame_type >::const_iterator const_iterator
2-dimensional frame with time calibrated data from one optical module.
template<class JElement_t>
template<class JOutput_t >
void JTRIGGER::JBuildL0< JElement_t >::operator() ( const JDAQSuperFrame input,
const JModule module,
JOutput_t  out 
) const
inline

Build hits from uncalibrated DAQ data.

The time calibration is applied. Note that the output data are not time sorted.

Parameters
inputDAQ super frame
modulemodule
outoutput L0 data

Definition at line 87 of file JBuildL0.hh.

90  {
91  if (!input.empty()) {
92  (*this)(JSuperFrame2D<JElement_t>::demultiplex(input, module), out);
93  }
94  }
static JSuperFrame2D< JElement_t > demultiplex
Demultiplexer.
void JTRIGGER::JBuildHelper< JBuildL0< JElement_t > >::operator() ( const JDAQTimeslice timeslice,
const JModuleRouter router,
JOutput_t  out 
) const
inlineinherited

Build hits from uncalibrated DAQ data.

The time calibration is applied. Note that the output data are not time sorted.

Parameters
timesliceDAQ time slice
routermodule router
outoutput data

Definition at line 57 of file JBuildHelper.hh.

60  {
61  for (JDAQTimeslice::const_iterator i = timeslice.begin(); i != timeslice.end(); ++i) {
62  if (router.hasModule(i->getModuleID())) {
63  static_cast<const JBuild_t&>(*this)(*i, router.getModule(i->getModuleID()), out);
64  }
65  }
66  }
void JTRIGGER::JBuildHelper< JBuildL0< JElement_t > >::operator() ( const JDAQEvent event,
const JModuleRouter router,
bool  snapshot,
JOutput_t  out 
) const
inlineinherited

Build hits from uncalibrated DAQ data.

The time calibration is applied. Note that the output data are not time sorted.

Parameters
eventDAQ event
routermodule router
snapshotuse shapshot hits (else use triggered hits)
outoutput data

Definition at line 81 of file JBuildHelper.hh.

85  {
86  static_cast<const JBuild_t&>(*this)(JDAQTimeslice(event, snapshot), router, out);
87  }
Structure to store the ToT mean and standard deviation of the hits produced by a nanobeacon in a sour...
void JTRIGGER::JBuildHelper< JBuildL0< JElement_t > >::operator() ( const JDAQEvent event,
const JModuleRouter router,
JOutput_t  out 
) const
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.

Parameters
eventDAQ event
routermodule router
outoutput data

Definition at line 102 of file JBuildHelper.hh.

105  {
106  static_cast<const JBuild_t&>(*this)(JDAQTimeslice(event, true), router, out);
107  }
Structure to store the ToT mean and standard deviation of the hits produced by a nanobeacon in a sour...

The documentation for this class was generated from the following file: