CMS 3D CMS Logo

HLTL1TSeed.h
Go to the documentation of this file.
1 #ifndef HLTfilters_HLTL1TSeed_h
2 #define HLTfilters_HLTL1TSeed_h
3 
17 // system include files
18 #include <string>
19 #include <vector>
20 
21 // user include files
22 
23 // base class
26 
32 
34 
35 // forward declarations
36 class L1GtTriggerMenu;
37 class L1GtTriggerMask;
39 
41 namespace edm {
43 }
44 
45 // class declaration
46 class HLTL1TSeed : public HLTStreamFilter {
47 public:
49  explicit HLTL1TSeed(const edm::ParameterSet&);
50 
52  ~HLTL1TSeed() override;
53 
55  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
56 
58  bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs& filterproduct) override;
59 
60 private:
63  void inline updateAlgoLogicParser(const L1GtTriggerMenu*, const AlgorithmMap&){};
64 
67  void inline updateAlgoLogicParser(const std::vector<bool>& gtWord,
68  const std::vector<unsigned int>& triggerMask,
69  const int physicsDaqPartition){};
70 
73 
76 
77 private:
80 
82  std::vector<GlobalLogicParser::OperandToken> m_l1AlgoSeeds;
83 
85  std::vector<const std::vector<GlobalLogicParser::TokenRPN>*> m_l1AlgoSeedsRpn;
86 
88  std::vector<std::vector<const std::vector<l1t::GlobalObject>*> > m_l1AlgoSeedsObjType;
89 
90 private:
94 
98 
102 
106 
107  //edm::InputTag dummyTag;
112 
117 
122 
127 
132 
135 
138 };
139 
140 #endif // HLTfilters_HLTL1TSeed_h
trigger::TriggerFilterObjectWithRefs
Definition: TriggerFilterObjectWithRefs.h:35
HLTL1TSeed::hltFilter
bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) override
filter the event
Definition: HLTL1TSeed.cc:105
HLTL1TSeed::m_l1GlobalDecision
bool m_l1GlobalDecision
flag to pass if L1TGlobal accept
Definition: HLTL1TSeed.h:134
GlobalObjectMapRecord
Definition: GlobalObjectMapRecord.h:29
L1GlobalTriggerReadoutSetupFwd.h
edm::EDGetTokenT< GlobalObjectMapRecord >
edm
HLT enums.
Definition: AlignableModifier.h:19
HLTL1TSeed::m_l1EtSumToken
edm::EDGetTokenT< l1t::EtSumBxCollection > m_l1EtSumToken
Definition: HLTL1TSeed.h:131
HLTL1TSeed::m_l1GtObjectMapToken
edm::EDGetTokenT< GlobalObjectMapRecord > m_l1GtObjectMapToken
Definition: HLTL1TSeed.h:101
HLTL1TSeed::m_l1SeedsLogicalExpression
std::string m_l1SeedsLogicalExpression
Definition: HLTL1TSeed.h:97
HLTL1TSeed::updateAlgoLogicParser
void updateAlgoLogicParser(const L1GtTriggerMenu *, const AlgorithmMap &)
Definition: HLTL1TSeed.h:63
HLTL1TSeed::HLTL1TSeed
HLTL1TSeed(const edm::ParameterSet &)
constructor
Definition: HLTL1TSeed.cc:32
HLTL1TSeed::seedsL1TriggerObjectMaps
bool seedsL1TriggerObjectMaps(edm::Event &, trigger::TriggerFilterObjectWithRefs &)
seeding is done via L1 trigger object maps, considering the objects which fired in L1
Definition: HLTL1TSeed.cc:404
GlobalObject.h
TriggerFilterObjectWithRefs.h
HLTL1TSeed::dumpTriggerFilterObjectWithRefs
void dumpTriggerFilterObjectWithRefs(trigger::TriggerFilterObjectWithRefs &) const
detailed print of filter content
Definition: HLTL1TSeed.cc:140
HLTL1TSeed::m_l1AlgoSeedsRpn
std::vector< const std::vector< GlobalLogicParser::TokenRPN > * > m_l1AlgoSeedsRpn
vector of Rpn vectors for the required algorithms for seeding
Definition: HLTL1TSeed.h:85
L1GlobalTriggerReadoutRecord
Definition: L1GlobalTriggerReadoutRecord.h:46
HLTL1TSeed::~HLTL1TSeed
~HLTL1TSeed() override
destructor
Definition: HLTL1TSeed.cc:79
GlobalLogicParser.h
HLTL1TSeed::m_l1JetTag
edm::InputTag m_l1JetTag
Definition: HLTL1TSeed.h:120
HLTL1TSeed::m_l1AlgoLogicParser
GlobalLogicParser m_l1AlgoLogicParser
logic parser for m_l1SeedsLogicalExpression
Definition: HLTL1TSeed.h:79
AlgorithmMap
std::map< std::string, L1GtAlgorithm > AlgorithmMap
map containing the algorithms
Definition: L1GtTriggerMenuFwd.h:31
L1GtTriggerMask
Definition: L1GtTriggerMask.h:33
HLTL1TSeed::m_l1TauTag
edm::InputTag m_l1TauTag
Definition: HLTL1TSeed.h:125
GlobalLogicParser
Definition: GlobalLogicParser.h:17
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HLTL1TSeed::updateAlgoLogicParser
void updateAlgoLogicParser(const std::vector< bool > &gtWord, const std::vector< unsigned int > &triggerMask, const int physicsDaqPartition)
Definition: HLTL1TSeed.h:67
HLTL1TSeed
Definition: HLTL1TSeed.h:46
edm::ParameterSet
Definition: ParameterSet.h:36
L1GtTriggerMenu
Definition: L1GtTriggerMenu.h:48
HLTL1TSeed::m_l1GtObjectMapTag
edm::InputTag m_l1GtObjectMapTag
InputTag for L1 Global Trigger object maps. This is done per menu. Should be part of Run.
Definition: HLTL1TSeed.h:100
HLTL1TSeed::m_l1EGammaToken
edm::EDGetTokenT< l1t::EGammaBxCollection > m_l1EGammaToken
Definition: HLTL1TSeed.h:116
HLTL1TSeed::m_l1EtSumTag
edm::InputTag m_l1EtSumTag
Definition: HLTL1TSeed.h:130
HLTL1TSeed::m_l1NrBxInEvent
int m_l1NrBxInEvent
Definition: HLTL1TSeed.h:93
HLTStreamFilter
Definition: HLTStreamFilter.h:29
HLTL1TSeed::m_l1JetToken
edm::EDGetTokenT< l1t::JetBxCollection > m_l1JetToken
Definition: HLTL1TSeed.h:121
GlobalAlgBlk.h
edm::EventSetup
Definition: EventSetup.h:57
HLTL1TSeed::m_l1EtSumCollectionsTag
edm::InputTag m_l1EtSumCollectionsTag
Meta InputTag for L1 Egamma collection.
Definition: HLTL1TSeed.h:129
HLTL1TSeed::m_l1GlobalToken
edm::EDGetTokenT< GlobalAlgBlkBxCollection > m_l1GlobalToken
Definition: HLTL1TSeed.h:105
InputTag.h
HLTL1TSeed::m_isDebugEnabled
bool m_isDebugEnabled
cache edm::isDebugEnabled()
Definition: HLTL1TSeed.h:137
HLTL1TSeed::m_l1AlgoSeeds
std::vector< GlobalLogicParser::OperandToken > m_l1AlgoSeeds
list of required algorithms for seeding
Definition: HLTL1TSeed.h:82
HLTL1TSeed::m_l1TauCollectionsTag
edm::InputTag m_l1TauCollectionsTag
Meta InputTag for L1 Egamma collection.
Definition: HLTL1TSeed.h:124
HLTStreamFilter.h
ConfigurationDescriptions
HLTL1TSeed::m_l1AlgoSeedsObjType
std::vector< std::vector< const std::vector< l1t::GlobalObject > * > > m_l1AlgoSeedsObjType
vector of object-type vectors for each condition in the required algorithms for seeding
Definition: HLTL1TSeed.h:88
HLTL1TSeed::m_l1MuonToken
edm::EDGetTokenT< l1t::MuonBxCollection > m_l1MuonToken
Definition: HLTL1TSeed.h:111
HLTL1TSeed::m_l1GlobalTag
edm::InputTag m_l1GlobalTag
InputTag for L1 Global Trigger.
Definition: HLTL1TSeed.h:104
HLTL1TSeed::m_l1EGammaTag
edm::InputTag m_l1EGammaTag
Definition: HLTL1TSeed.h:115
L1GtTriggerMenuFwd.h
HLTL1TSeed::m_l1TauToken
edm::EDGetTokenT< l1t::TauBxCollection > m_l1TauToken
Definition: HLTL1TSeed.h:126
edm::Event
Definition: Event.h:73
HLTL1TSeed::m_l1MuonCollectionsTag
edm::InputTag m_l1MuonCollectionsTag
Meta InputTag for L1 Muon collection.
Definition: HLTL1TSeed.h:109
edm::InputTag
Definition: InputTag.h:15
HLTL1TSeed::m_l1MuonTag
edm::InputTag m_l1MuonTag
Definition: HLTL1TSeed.h:110
HLTL1TSeed::m_l1EGammaCollectionsTag
edm::InputTag m_l1EGammaCollectionsTag
Meta InputTag for L1 Egamma collection.
Definition: HLTL1TSeed.h:114
HLTL1TSeed::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
parameter description
Definition: HLTL1TSeed.cc:85
HLTL1TSeed::m_l1JetCollectionsTag
edm::InputTag m_l1JetCollectionsTag
Meta InputTag for L1 Egamma collection.
Definition: HLTL1TSeed.h:119