1#ifndef __JTRIGGEREDEVENT__
2#define __JTRIGGEREDEVENT__
81 const double TMaxLocal_ns,
121 if (snapshot.is_valid()) {
123 const JTimeRange timeRange(hit.
getT1() + snapshot.getLowerLimit() - TMaxLocal_ns,
124 hit.
getT1() + snapshot.getUpperLimit() + TMaxLocal_ns);
126 for (JDAQTimeslice::const_iterator super_frame = timesliceRouter->begin(); super_frame != timesliceRouter->end(); ++super_frame) {
128 if (!super_frame->empty()) {
130 if (moduleRouter.
hasModule(super_frame->getModuleID())) {
167 const double TMaxLocal_ns,
182 for (JEvent::const_iterator hit = event.begin(); hit != event.end(); ++hit) {
218 out->addTriggerMask(*i);
229 if (snapshot.is_valid()) {
231 const JTimeRange timeRange(event.
begin()->getT1() + snapshot.getLowerLimit() - TMaxLocal_ns,
232 event.rbegin()->getT1() + snapshot.getUpperLimit() + TMaxLocal_ns);
234 for (JDAQTimeslice::const_iterator super_frame = timesliceRouter->begin(); super_frame != timesliceRouter->end(); ++super_frame) {
236 if (!super_frame->empty()) {
238 if (moduleRouter.
hasModule(super_frame->getModuleID())) {
Time calibration (including definition of sign of time offset).
Reduced data structure for L1 hit.
Direct access to module in detector data structure.
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
Data structure for time calibration.
Router for direct addressing of module data in detector data structure.
bool hasModule(const JObjectID &id) const
Has module.
const JModule & getModule(const JObjectID &id) const
Get module parameters.
Data structure for a composite optical module.
const JPosition3D & getPosition() const
Get position.
Reduced data structure for L1 hit.
double getT1() const
Get leading edge of hit.
Auxiliary class to build JDAQEvent for a triggered event.
JTriggeredEvent(const JDAQChronometer &chronometer, const KM3NETDAQ::JTriggerMask_t &mask, const JHitR1 &hit, const JTimesliceRouter ×liceRouter, const JModuleRouter &moduleRouter, const double TMaxLocal_ns, const double DMax_m, const JTimeRange &snapshot=JTimeRange::DEFAULT_RANGE())
Constructor based on an L1 coincidence hit.
JTriggeredEvent(const JEvent &event, const JTimesliceRouter ×liceRouter, const JModuleRouter &moduleRouter, const double TMaxLocal_ns, const JTimeRange &snapshot=JTimeRange::DEFAULT_RANGE())
Constructor.
JTriggeredEvent()
Default constructor.
const JDAQChronometer & getDAQChronometer() const
Get DAQ chronometer.
void setDAQChronometer(const JDAQChronometer &chronometer)
Set DAQ chronometer.
const_iterator< T > begin() const
Get begin of data.
std::vector< JDAQSnapshotHit > snapshotHits
std::vector< JDAQTriggeredHit > triggeredHits
bool testFIFOStatus() const
Test FIFO status.
bool testHighRateVeto() const
Test high-rate veto status.
const_iterator end() const
const_iterator begin() const
int getModuleID() const
Get module identifier.
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
Data frame of one optical module.
JTriggerMask_t trigger_mask
JTimeRange getTimeRange(const JTimeRange &timeRange, const JModule &module)
Get de-calibrated time range.
double getDistance(const JFirst_t &first, const JSecond_t &second)
Get distance between objects.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
const char * getTime()
Get current local time conform ISO-8601 standard.
Auxiliary classes and methods for triggering.
JDAQKeyHit JDAQSnapshotHit
unsigned long long int JTriggerMask_t
Type definition of trigger mask.
Router for fast addressing of hits in KM3NETDAQ::JDAQTimeslice data structure as a function of the op...
JDAQFrameSubset getFrameSubset(const JDAQModuleIdentifier &module, const JTimeRange &timeRange) const
Get subset of frame given module identifier and range of hit times.
const JDAQSuperFrame & getSuperFrame(const JDAQModuleIdentifier &module) const
Get super frame.