ATLAS Offline Software
event_selector.h
Go to the documentation of this file.
1 /* emacs: this is -*- c++ -*- */
12 #ifndef ANALYSIS_EVENT_SELECTOR_H
13 #define ANALYSIS_EVENT_SELECTOR_H
14 
15 #include <iostream>
16 #include <set>
17 
18 
19 
20 class event_selector : public std::set<int> {
21 
22 public:
23 
24  template<class T>
25  event_selector(std::vector<T> e) {
26  for (unsigned int i=0 ; i<e.size() ; i++ ) insert(int(e[i]));
27  }
28 
29  // event_selector(std::vector<double> e) {
30  // for (unsigned int i=0 ; i<e.size() ; i++ ) insert(int(e[i]));
31  // }
32 
34 
35  bool in(int event) {
36  if ( find(event)==end() ) return false;
37  std::cout << "event_selector::in() found " << event << std::endl;
38  return true;
39  }
40 
41 };
42 
43 
44 inline std::ostream& operator<<( std::ostream& s, const event_selector& es ) {
45  return s << es.size();
46 }
47 
48 
49 #endif // ANALYSIS_EVENT_SELECTOR_H
50 
51 
52 
53 
54 
55 
56 
57 
58 
59 
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
operator<<
std::ostream & operator<<(std::ostream &s, const event_selector &es)
Definition: event_selector.h:44
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
lumiFormat.i
int i
Definition: lumiFormat.py:92
event_selector
Definition: event_selector.h:20
event_selector::in
bool in(int event)
Definition: event_selector.h:35
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:224
DiTauMassTools::MaxHistStrategyV2::e
e
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
event_selector::~event_selector
~event_selector()
Definition: event_selector.h:33
event_selector::event_selector
event_selector(std::vector< T > e)
Definition: event_selector.h:25