CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TriggerCondition.h
Go to the documentation of this file.
1 #ifndef DataFormats_PatCandidates_TriggerCondition_h
2 #define DataFormats_PatCandidates_TriggerCondition_h
3 
4 
5 // -*- C++ -*-
6 //
7 // Package: PatCandidates
8 // Class: pat::TriggerCondition
9 //
10 //
23 #include <string>
24 #include <vector>
25 
33 
34 namespace pat {
35 
37 
39 
43  bool accept_;
51  std::vector< trigger::TriggerObjectType > triggerObjectTypes_;
54  std::vector< unsigned > objectKeys_;
55 
56  public:
57 
59 
65  TriggerCondition( const std::string & name, bool accept );
66 
68  virtual ~TriggerCondition() {};
69 
71 
73  void setName( const std::string & name ) { name_ = name; };
75  void setAccept( bool accept ) { accept_ = accept; };
78  void setCategory( int category ) { category_ = L1GtConditionCategory( category ); };
81  void setType( int type ) { type_ = L1GtConditionType( type ); };
83  void addTriggerObjectType( trigger::TriggerObjectType triggerObjectType ) { triggerObjectTypes_.push_back( triggerObjectType ); }; // explicitely NOT checking for existence
84  void addTriggerObjectType( int triggerObjectType ) { addTriggerObjectType( trigger::TriggerObjectType( triggerObjectType ) ); };
86  void addObjectKey( unsigned objectKey ) { if ( ! hasObjectKey( objectKey ) ) objectKeys_.push_back( objectKey ); };
88  const std::string & name() const { return name_; };
90  bool wasAccept() const { return accept_; };
92  int category() const { return int( category_ ); };
94  int type() const { return int( type_ ); };
96  std::vector< int > triggerObjectTypes() const;
98  bool hasTriggerObjectType( trigger::TriggerObjectType triggerObjectType ) const;
99  bool hasTriggerObjectType( int triggerObjectType ) const { return hasTriggerObjectType( trigger::TriggerObjectType( triggerObjectType ) ); };
101  const std::vector< unsigned > & objectKeys() const { return objectKeys_; };
103  bool hasObjectKey( unsigned objectKey ) const;
104 
105  };
106 
107 
109  typedef std::vector< TriggerCondition > TriggerConditionCollection;
118 
119 }
120 
121 
122 #endif
type
Definition: HCALResponse.h:21
bool hasObjectKey(unsigned objectKey) const
Checks, if a certain trigger object collection index is assigned.
edm::RefVectorIterator< TriggerConditionCollection > TriggerConditionRefVectorIterator
Const iterator over vector of persistent references to items in the same TriggerConditionCollection.
L1GtConditionType type_
L1 condition type as defined in CondFormats/L1TObjects/interface/L1GtFwd.h.
void addTriggerObjectType(int triggerObjectType)
int type() const
Get the condition type.
void setAccept(bool accept)
Set the success flag.
bool wasAccept() const
Get the success flag.
void addTriggerObjectType(trigger::TriggerObjectType triggerObjectType)
Add a new trigger object type.
std::vector< int > triggerObjectTypes() const
Get the trigger object types.
edm::RefVector< TriggerConditionCollection > TriggerConditionRefVector
Vector of persistent references to items in the same TriggerConditionCollection.
L1GtConditionType
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:25
void setCategory(int category)
TriggerCondition()
Constructors and Desctructor.
edm::Ref< TriggerConditionCollection > TriggerConditionRef
Persistent reference to an item in a TriggerConditionCollection.
std::vector< trigger::TriggerObjectType > triggerObjectTypes_
Analysis-level L1 trigger condition class.
const std::string & name() const
Get the filter label.
edm::RefProd< TriggerConditionCollection > TriggerConditionRefProd
Persistent reference to a TriggerConditionCollection product.
L1GtConditionCategory
condition categories
std::string name_
Data Members.
void setType(int type)
int category() const
Get the condition category.
void setCategory(L1GtConditionCategory category)
Set the condition category.
L1GtConditionCategory category_
L1 condition category as defined in CondFormats/L1TObjects/interface/L1GtFwd.h.
void addObjectKey(unsigned objectKey)
Add a new trigger object collection index.
std::vector< unsigned > objectKeys_
bool hasTriggerObjectType(int triggerObjectType) const
virtual ~TriggerCondition()
Destructor.
bool hasTriggerObjectType(trigger::TriggerObjectType triggerObjectType) const
Checks, if a certain trigger object type is assigned.
void setName(const std::string &name)
Methods.
std::vector< TriggerCondition > TriggerConditionCollection
Collection of TriggerCondition.
bool accept_
Did condition succeed?
const std::vector< unsigned > & objectKeys() const
Get all trigger object collection indeces.
void setType(L1GtConditionType type)
Set the condition type.