RdEventPreSelector.h
Go to the documentation of this file.
1 #ifndef _RdEventPreSelector_RdEventPreSelector_h_
2 #define _RdEventPreSelector_RdEventPreSelector_h_
3 
4 #include <fwk/VModule.h>
5 
6 #include <utl/AugerUnits.h>
7 #include <utl/TimeStamp.h>
8 
9 #include <set>
10 #include <vector>
11 
12 
13 namespace revt {
14  class EventTrigger;
15 }
16 
17 
18 namespace RdEventPreSelector {
19 
30 
31  public:
32  fwk::VModule::ResultFlag Init() override;
33  fwk::VModule::ResultFlag Run(evt::Event& event) override;
35 
36  private:
38  int fMinEventId = 0;
39 
41  int fMaxEventId = 0;
42 
43  bool fUseTriggerInformation = false;
44  bool fUseSelfTriggeredEvent = false;
48  bool fUseSDTriggeredEvent = false;
49  bool fUseGUITriggeredEvent = false;
50  bool fUseFDTriggeredEvent = false;
51  bool fUseHEATTriggeredEvent = false;
56 
58  std::set<int> fSelectedEventIds;
59 
61  std::set<int> fDeselectedEventIds;
62 
64  std::set<utl::TimeStamp> fSelectedEventDates;
65 
67  std::set<std::pair<int, int> > fSelectedRunEventIds;
68 
70  std::set<std::pair<int, int> > fDeselectedRunEventIds;
71 
74 
77 
79  std::vector<int> fAllParticipatingStationIds;
80 
83 
85  std::vector<int> fNotParticipatingStationIds;
86 
89 
92 
94  unsigned int fNRejectedEventRejectionList = 0;
95 
97  unsigned int fNRejectedTriggerConditions = 0;
98 
100  unsigned int fNumberOfEvents = 0;
101 
103  unsigned int fNRejected = 0;
104 
106  unsigned int fNAccepted = 0;
107 
110 
113 
114  // min ADC signal to noise ratio
115  double fMinSignalToNoise = 0;
116 
117  // min number of station with pulse
119 
120  // max number of stations available in event with most stations still rejected by MinNumberOfStations cut
122 
125 
126  // minimum allowed SD angle
127  double fMinSDZenith = 0 * utl::deg;
128 
129  // maximum allowed SD angle
130  double fMaxSDZenith = 90 * utl::deg;
131 
132  // minimum allowed SD energy
133  double fMinSDEnergy = 0;
134 
135  std::vector<unsigned long> fEventGPSSeconds;
137 
139  bool fFDInput = false;
140 
142  unsigned int fWhichEye = 6;
143 
145  double fMaxFDZenith = 90 * utl::deg;
146 
147  bool CheckTrigger(const revt::EventTrigger& evtrig);
148 
149  // counts the number of stations with pulse
150  unsigned int CountStationWithPulse(evt::Event& event) const;
151 
152  bool CloseTo(const double a, const double b, const double tolerance) const;
153 
154  REGISTER_MODULE("RdEventPreSelector", RdEventPreSelector);
155  };
156 
157 }
158 
159 
160 #endif
161 
Interface class to access the Event Trigger (T3)
unsigned int CountStationWithPulse(evt::Event &event) const
std::vector< unsigned long > fEventGPSSeconds
REGISTER_MODULE("RdEventPreSelector", RdEventPreSelector)
bool CloseTo(const double a, const double b, const double tolerance) const
int fMinNumberOfStations
Minimal number of stations which must be in the event.
unsigned int fNRejectedStationRejectionList
number of events deselected because event contains station in station rejection list ...
bool fBreakLoopAtMaxDateTime
break loop in ModuleSequence instead of continue
std::set< utl::TimeStamp > fSelectedEventDates
List of allowed event dates.
unsigned int fNRejectedMinNumberOfStationsWithPulse
number of events deselected due to the SNR cut
int fMaxNumberOfStations
Maximal number of stations which must be in the event (if 0, this cut is ignored) ...
fwk::VModule::ResultFlag Finish() override
Finish: invoked at end of the run (NOT end of the event)
fwk::VModule::ResultFlag Run(evt::Event &event) override
Run: invoked once per event.
std::vector< int > fNotParticipatingStationIds
List of station IDs which must not be part of the event.
double fMaxFDZenith
maximum allowed FD angle
bool CheckTrigger(const revt::EventTrigger &evtrig)
A TimeStamp holds GPS second and nanosecond for some event.
Definition: TimeStamp.h:110
constexpr double deg
Definition: AugerUnits.h:140
std::set< std::pair< int, int > > fDeselectedRunEventIds
List of not allowed combination of run and event IDs.
bool fFDInput
selects if FD should be used as input for radio
fwk::VModule::ResultFlag Init() override
Initialize: invoked at beginning of run (NOT beginning of event)
std::set< std::pair< int, int > > fSelectedRunEventIds
List of allowed allowed combination of run and event IDs.
unsigned int fNRejectedEventRejectionList
number of events deselected because event in event rejection list
Preselects events by certain cuts (like number of stations or WCD reconstruction) ...
int fMaxEventId
Maximal event ID (0, this cut is ignored)
unsigned int fNRejectedMinNumberOfStations
number of events deselected because of not sufficient number of stations
std::set< int > fDeselectedEventIds
List of not allowed event IDs (attention: ID = ID in Run, which is not an unique identifier) ...
Module interface.
Definition: VModule.h:53
unsigned int fWhichEye
selects the reconstructed FD eye as input
constexpr double minute
Definition: AugerUnits.h:149
std::set< int > fSelectedEventIds
List of allowed event IDs (attention: ID = ID in Run, which is not an unique identifier) ...
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60
unsigned int fNumberOfEvents
total number of events
unsigned int fNRejected
total number of rejected events
unsigned int fNRejectedTriggerConditions
number of events deselected because event in event rejection list
std::vector< int > fAllParticipatingStationIds
List of station IDs which must be part of the event (additional stations are allowed) ...
std::vector< int > fAtLeastOneParticipatingStationIds
List of station IDs of which at least one must be part of the event (additional stations are allowed)...
unsigned int fNAccepted
total number of accepted events

, generated on Tue Sep 26 2023.