Go to the documentation of this file. 1 #ifndef DataFormats_PatCandidates_TriggerObjectStandAlone_h
2 #define DataFormats_PatCandidates_TriggerObjectStandAlone_h
79 std::vector<std::string>
pathsOrAlgorithms(
bool pathLastFilterAccepted,
bool pathL3FilterAccepted)
const;
126 bool pathLastFilterAccepted =
true,
127 bool pathL3FilterAccepted =
true) {
139 std::vector<std::string>
pathNames(
bool pathLastFilterAccepted =
false,
bool pathL3FilterAccepted =
true)
const {
154 bool pathLastFilterAccepted =
false,
155 bool pathL3FilterAccepted =
true)
const {
180 unsigned pathLastFilterAccepted = 0,
181 unsigned pathL3FilterAccepted = 1)
const {
bool hasAlgorithmName(const std::string &algorithmName, bool algoCondAccepted=true) const
Checks, if a certain L1 algorithm name is assigned.
bool hasPathName(const std::string &pathName, bool pathLastFilterAccepted=false, bool pathL3FilterAccepted=true) const
Checks, if a certain HLT path name is assigned.
void unpackFilterLabels(const std::vector< std::string > &labels)
unpack filter labels from indices
edm::RefVectorIterator< TriggerObjectStandAloneCollection > TriggerObjectStandAloneRefVectorIterator
Const iterator over vector of persistent references to items in the same TriggerObjectStandAloneColle...
void packP4()
reduce the precision on the 4-vector
edm::Association< TriggerObjectStandAloneCollection > TriggerObjectStandAloneMatch
Association of TriggerObjectStandAlones to store matches to Candidates.
const std::vector< std::string > & conditionNames() const
Gets all L1 condition names.
Analysis-level trigger object class (stand-alone)
void addPathName(const std::string &pathName, bool pathLastFilterAccepted=true, bool pathL3FilterAccepted=true)
Adds a new HLT path name.
bool hasFilterOrCondition(const std::string &name) const
Checks, if a certain HLT filter label or L1 condition name is assigned.
bool checkIfFiltersAreUnpacked(bool throwIfPacked=true) const
Check if trigger names have been packed by calling packFilterLabels() and not yet unpacked.
const std::vector< std::string > * allLabels(edm::ParameterSetID const &psetid, const edm::EventBase &event, const edm::TriggerResults &res) const
edm::RefProd< TriggerObjectStandAloneCollection > TriggerObjectStandAloneRefProd
Persistent reference to a TriggerObjectStandAloneCollection product.
bool hasFilterLabel(const std::string &filterLabel) const
Checks, if a certain HLT filter label is assigned.
bool coll(const std::string &collName) const override
Calls 'hasCollection(...)' (method override)
void setPSetID(const edm::ParameterSetID &psetId)
set the psetid of the trigger process
edm::RefVector< TriggerObjectStandAloneCollection > TriggerObjectStandAloneRefVector
Vector of persistent references to items in the same TriggerObjectStandAloneCollection.
math::XYZTLorentzVector LorentzVector
Lorentz vector.
void addFilterOrCondition(const std::string &name)
Adds a new HLT filter label or L1 condition name.
bool path(const std::string &pathName, unsigned pathLastFilterAccepted=0, unsigned pathL3FilterAccepted=1) const
Calls 'hasPathName(...)'.
void addPathOrAlgorithm(const std::string &name, bool pathLastFilterAccepted, bool pathL3FilterAccepted)
Adds a new HLT path or L1 algorithm name.
void packPathNames(const edm::TriggerNames &names)
pack trigger names into indices
const std::vector< std::string > & filterLabels() const
Gets all HLT filter labels.
std::vector< uint16_t > filterLabelIndices_
bool hasPathOrAlgorithm(const std::string &name, bool pathLastFilterAccepted, bool pathL3FilterAccepted) const
Checks, if a certain HLT path or L1 algorithm name is assigned.
TriggerObject triggerObject()
Gets the pat::TriggerObject (parent class)
bool hasLastFilter() const
Check, if the usage indicator vectors have been filled.
edm::Ref< TriggerObjectStandAloneCollection > TriggerObjectStandAloneRef
Persistent reference to an item in a TriggerObjectStandAloneCollection.
const std::string names[nVars_]
bool hasPathLastFilterAccepted() const
Checks, if the usage indicator vector has been filled.
TriggerObjectStandAlone()
Constructors and Destructor.
TriggerObjectStandAlone copy() const
Methods.
bool algo(const std::string &algorithmName, unsigned algoCondAccepted=1) const
Calls 'hasAlgorithmName(...)'.
std::vector< bool > pathL3FilterAccepted_
bool hasPathL3FilterAccepted() const
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
bool hasConditionName(const std::string &conditionName) const
Checks, if a certain L1 condition name is assigned.
Single trigger physics object (e.g., an isolated muon)
edm::ParameterSetID psetId_
static const char wildcard_
Constants.
bool hasCollection(const edm::InputTag &collName) const override
std::vector< std::string > pathsOrAlgorithms(bool pathLastFilterAccepted, bool pathL3FilterAccepted) const
Gets all HLT path or L1 algorithm names.
void addAlgorithmName(const std::string &algorithmName, bool algoCondAccepted=true)
Adds a new L1 algorithm name.
std::vector< TriggerObjectStandAlone > TriggerObjectStandAloneCollection
Collection of TriggerObjectStandAlone.
void unpackPathNames(const edm::TriggerNames &names)
unpack trigger names into indices
void addConditionName(const std::string &conditionName)
Adds a new L1 condition name.
bool hasAlgoCondAccepted() const
std::vector< std::string > filterLabels_
Vector of labels of all HLT filters or names of L1 conditions the trigger objects has been used in.
const std::vector< std::string > & filtersOrConditions() const
Gets all HLT filter labels or L1 condition names.
~TriggerObjectStandAlone() override
Destructor.
void unpackNamesAndLabels(const edm::EventBase &event, const edm::TriggerResults &res)
unpack both filter labels and trigger names
bool hasCollection(const std::string &collName) const override
Checks, if a certain label of original collection is assigned (method overrides)
std::vector< bool > pathLastFilterAccepted_
std::vector< std::string > algorithmNames(bool algoCondAccepted=true) const
Gets all L1 algorithm names.
void addFilterLabel(const std::string &filterLabel)
Adds a new HLT filter label.
bool hasAnyName(const std::string &name, const std::vector< std::string > &nameVec) const
Private methods.
std::vector< std::string > pathNames_
Vector of names of all HLT paths or L1 algorithms the trigger objects has been used in.
const edm::ParameterSetID & psetID() const
bool filter(const std::string &filterLabel) const
Calls 'hasFilterLabel(...)'.
std::vector< uint16_t > pathIndices_
bool cond(const std::string &conditionName) const
Calls 'hasConditionName(...)'.
void packFilterLabels(const edm::EventBase &event, const edm::TriggerResults &res)
bool checkIfPathsAreUnpacked(bool throwIfPacked=true) const
Check if trigger names have been packed by calling packPathNames() and not yet unpacked.
std::vector< std::string > pathNames(bool pathLastFilterAccepted=false, bool pathL3FilterAccepted=true) const
Gets all HLT path names.