CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EventWithHistoryFilter.h
Go to the documentation of this file.
1 #ifndef DPGAnalysis_SiStripTools_EventWithHistoryFilter_H
2 #define DPGAnalysis_SiStripTools_EventWithHistoryFilter_H
3 
4 #include <string>
5 #include <vector>
7 
8 namespace edm {
9  class ParameterSet;
10  class Event;
11 }
12 class EventWithHistory;
13 
15 
16  public:
19 
20  void set(const edm::ParameterSet& iConfig);
21  const bool selected(const EventWithHistory& he, const edm::EventSetup& iSetup) const;
22  const bool selected(const EventWithHistory& he, const edm::Event& iEvent, const edm::EventSetup& iSetup) const;
23  const bool selected(const edm::Event& event, const edm::EventSetup& iSetup) const;
24 
25  private:
26 
27  const bool is_selected(const EventWithHistory& he, const edm::EventSetup& iSetup, const std::vector<int> apvphases) const;
28  const int getAPVLatency( const edm::EventSetup& iSetup) const;
29  const int getAPVMode( const edm::EventSetup& iSetup) const;
30  const std::vector<int> getAPVPhase(const edm::Event& iEvent) const;
31  const bool isAPVLatencyNotNeeded() const;
32  const bool isAPVPhaseNotNeeded() const;
33  const bool isAPVModeNotNeeded() const;
34  const bool isCutInactive(const std::vector<int>& range) const;
35  const bool isInRange(const long long bx, const std::vector<int>& range, const bool extra) const;
36  void printConfig() const;
37 
39  std::string m_partition;
40  std::string m_APVPhaseLabel;
41  std::vector<int> m_apvmodes;
42  std::vector<int> m_dbxrange;
43  std::vector<int> m_dbxrangelat;
44  std::vector<int> m_bxrange;
45  std::vector<int> m_bxrangelat;
46  std::vector<int> m_bxcyclerange;
47  std::vector<int> m_bxcyclerangelat;
48  std::vector<int> m_dbxcyclerange;
49  std::vector<int> m_dbxcyclerangelat;
50  std::vector<int> m_dbxtrpltrange;
51  std::vector<int> m_dbxgenericrange;
52  unsigned int m_dbxgenericfirst;
53  unsigned int m_dbxgenericlast;
55 
56 };
57 
58 #endif // DPGAnalysis_SiStripTools_EventWithHistoryFilter_H
const bool is_selected(const EventWithHistory &he, const edm::EventSetup &iSetup, const std::vector< int > apvphases) const
std::vector< int > m_dbxcyclerange
std::vector< int > m_bxcyclerange
const bool isAPVPhaseNotNeeded() const
const std::vector< int > getAPVPhase(const edm::Event &iEvent) const
std::vector< int > m_dbxgenericrange
const bool isAPVModeNotNeeded() const
std::vector< int > m_dbxrangelat
int iEvent
Definition: GenABIO.cc:243
const int getAPVMode(const edm::EventSetup &iSetup) const
std::vector< int > m_dbxtrpltrange
const int getAPVLatency(const edm::EventSetup &iSetup) const
const bool selected(const EventWithHistory &he, const edm::EventSetup &iSetup) const
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
const bool isInRange(const long long bx, const std::vector< int > &range, const bool extra) const
std::vector< int > m_bxrangelat
const bool isAPVLatencyNotNeeded() const
std::vector< int > m_bxcyclerangelat
std::vector< int > m_dbxcyclerangelat
void set(const edm::ParameterSet &iConfig)
const bool isCutInactive(const std::vector< int > &range) const
std::vector< int > m_apvmodes
std::vector< int > m_dbxrange
std::vector< int > m_bxrange