1 #ifndef DQMOffline_Trigger_UtilFuncs_h 2 #define DQMOffline_Trigger_UtilFuncs_h 19 constexpr
float kMaxDR2 = 0.1 * 0.1;
26 for (
unsigned short trigKey : trigKeys) {
39 const std::vector<std::string>& filterNames,
43 if (filterNames.empty())
65 if (trigPattern.empty())
68 std::vector<std::string> trigNamesToPass;
73 trigNamesToPass.push_back(*
name);
75 trigNamesToPass.push_back(trigPattern);
77 for (
auto&
trigName : trigNamesToPass) {
79 if (pathIndex < trigResults.
size() && trigResults.
accept(pathIndex))
bool accept() const
Has at least one path accepted the event?
const Keys & filterKeys(trigger::size_type index) const
The single EDProduct to be saved for each event (AOD case)
trigger::size_type sizeFilters() const
bool is_glob(std::string const &pattern)
Single trigger physics object (e.g., an isolated muon)
unsigned int size() const
Get number of paths stored.
const TriggerObjectCollection & getObjects() const
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
static const char *const trigNames[]
constexpr auto deltaR2(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
trigger::size_type filterIndex(const edm::InputTag &filterTag) const
find index of filter in data-member vector from filter tag
std::vector< size_type > Keys
std::vector< std::vector< std::string >::const_iterator > regexMatch(std::vector< std::string > const &strings, std::regex const ®exp)
bool passTrig(const float objEta, float objPhi, const trigger::TriggerEvent &trigEvt, const std::string &filterName, const std::string &processName)