1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
//
//
#include "DataFormats/PatCandidates/interface/TriggerCondition.h"
using namespace pat;
// Constructors and Destructor
// Default constructor
TriggerCondition::TriggerCondition() : name_(), accept_(), category_(), type_() {
triggerObjectTypes_.clear();
objectKeys_.clear();
}
// Constructor from condition name "only"
TriggerCondition::TriggerCondition(const std::string& name) : name_(name), accept_(), category_(), type_() {
triggerObjectTypes_.clear();
objectKeys_.clear();
}
// Constructor from values
TriggerCondition::TriggerCondition(const std::string& name, bool accept)
: name_(name), accept_(accept), category_(), type_() {
triggerObjectTypes_.clear();
objectKeys_.clear();
}
// Methods
// Get the trigger object types
std::vector<int> TriggerCondition::triggerObjectTypes() const {
std::vector<int> triggerObjectTypes;
for (size_t iT = 0; iT < triggerObjectTypes_.size(); ++iT) {
triggerObjectTypes.push_back(int(triggerObjectTypes_.at(iT)));
}
return triggerObjectTypes;
}
// Checks, if a certain trigger object type is assigned
bool TriggerCondition::hasTriggerObjectType(trigger::TriggerObjectType triggerObjectType) const {
for (size_t iT = 0; iT < triggerObjectTypes_.size(); ++iT) {
if (triggerObjectTypes_.at(iT) == triggerObjectType)
return true;
}
return false;
}
// Checks, if a certain trigger object collection index is assigned
bool TriggerCondition::hasObjectKey(unsigned objectKey) const {
for (size_t iO = 0; iO < objectKeys_.size(); ++iO) {
if (objectKeys_.at(iO) == objectKey)
return true;
}
return false;
}
|