CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TriggerResultInserter.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_TriggerResultsInserter_h
2 #define FWCore_Framework_TriggerResultsInserter_h
3 
4 /*
5  Author: Jim Kowalkowski 15-1-06
6 
7  This is an unusual module in that it is always present in the
8  schedule and it is not configurable.
9  The ownership of the bitmask is shared with the scheduler
10  Its purpose is to create a TriggerResults instance and insert it into
11  the event.
12 
13 */
14 
15 #include <vector>
16 
19 
20 #include <memory>
21 
22 namespace edm
23 {
24  class ParameterSet;
25  class Event;
26  class EventSetup;
27  class HLTGlobalStatus;
28 
30  {
31  public:
32 
33  typedef std::shared_ptr<HLTGlobalStatus> TrigResPtr;
34 
35  // standard constructor not supported for this module
36  explicit TriggerResultInserter(edm::ParameterSet const& ps);
37 
38  // the pset needed here is the one that defines the trigger path names
39  TriggerResultInserter(edm::ParameterSet const& ps, unsigned int iNStreams);
40 
41  void setTrigResultForStream(unsigned int iStreamIndex,
42  const TrigResPtr& trptr);
43  void produce(StreamID id, edm::Event& e, edm::EventSetup const& c) const override final;
44 
45  private:
46  std::vector<TrigResPtr> resultsPerStream_;
47 
49  };
50 }
51 #endif
std::shared_ptr< HLTGlobalStatus > TrigResPtr
TriggerResultInserter(edm::ParameterSet const &ps)
void setTrigResultForStream(unsigned int iStreamIndex, const TrigResPtr &trptr)
void produce(StreamID id, edm::Event &e, edm::EventSetup const &c) const overridefinal
std::vector< TrigResPtr > resultsPerStream_