CMS 3D CMS Logo

EventForOutput.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_EventForOutput_h
2 #define FWCore_Framework_EventForOutput_h
3 
4 // -*- C++ -*-
5 //
6 // Package: Framework
7 // Class : EventForOutput
8 //
12 /*----------------------------------------------------------------------
13 ----------------------------------------------------------------------*/
14 
24 
31 
32 #include <memory>
33 #include <string>
34 #include <typeinfo>
35 #include <vector>
36 
37 class testEventGetRefBeforePut;
38 
39 namespace edmtest {
40  class TestOutputModule;
41 }
42 
43 namespace edm {
44 
45  class BranchDescription;
46  class ModuleCallingContext;
47  class ProductProvenanceRetriever;
48  class EDConsumerBase;
49 
51  public:
53  ~EventForOutput() override;
54 
55  EventAuxiliary const& eventAuxiliary() const { return aux_; }
56  EventID const& id() const { return aux_.id(); }
57  EventNumber_t event() const { return aux_.event(); }
59  Timestamp const& time() const { return aux_.time(); }
60 
62  StreamID streamID() const { return streamID_; }
63 
65 
66  RunForOutput const& getRun() const;
67 
68  RunNumber_t run() const { return id().run(); }
69 
70  BranchListIndexes const& branchListIndexes() const;
71 
73 
75 
76  private:
77  friend class edmtest::TestOutputModule; // For testing
78 
79  EventPrincipal const& eventPrincipal() const;
80 
82  std::shared_ptr<LuminosityBlockForOutput const> const luminosityBlock_;
83 
85  };
86 } // namespace edm
87 #endif
edm::StreamID
Definition: StreamID.h:30
edm::RunNumber_t
unsigned int RunNumber_t
Definition: RunLumiEventNumber.h:14
edm::EventAuxiliary::event
EventNumber_t event() const
Definition: EventAuxiliary.h:72
Handle.h
edm::EventForOutput::branchListIndexes
BranchListIndexes const & branchListIndexes() const
Definition: EventForOutput.cc:40
propagate_const.h
edm::EventForOutput::~EventForOutput
~EventForOutput() override
Definition: EventForOutput.cc:24
edmtest
Definition: AlignPCLThresholdsReader.cc:12
edm::EventForOutput::streamID
StreamID streamID() const
Definition: EventForOutput.h:62
edm::EventForOutput::eventAuxiliary
EventAuxiliary const & eventAuxiliary() const
Definition: EventForOutput.h:55
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::BranchListIndexes
std::vector< BranchListIndex > BranchListIndexes
Definition: BranchListIndex.h:18
TypeID.h
edm::EventForOutput::time
Timestamp const & time() const
Definition: EventForOutput.h:59
edm::LuminosityBlockNumber_t
unsigned int LuminosityBlockNumber_t
Definition: RunLumiEventNumber.h:13
edm::EventForOutput::eventSelectionIDs
EventSelectionIDVector const & eventSelectionIDs() const
Definition: EventForOutput.cc:32
edm::EventForOutput::TestOutputModule
friend class edmtest::TestOutputModule
Definition: EventForOutput.h:77
edm::ModuleDescription
Definition: ModuleDescription.h:21
edm::OccurrenceForOutput
Definition: OccurrenceForOutput.h:45
edm::LuminosityBlockForOutput
Definition: LuminosityBlockForOutput.h:40
edm::RunForOutput
Definition: RunForOutput.h:39
edm::EventPrincipal
Definition: EventPrincipal.h:46
BranchListIndex.h
edm::EventForOutput::productProvenanceRetrieverPtr
ProductProvenanceRetriever const * productProvenanceRetrieverPtr() const
Definition: EventForOutput.cc:36
edm::EventForOutput::streamID_
StreamID streamID_
Definition: EventForOutput.h:84
EventID.h
edm::EventAuxiliary::id
EventID const & id() const
Definition: EventAuxiliary.h:63
edm::EventNumber_t
unsigned long long EventNumber_t
Definition: RunLumiEventNumber.h:12
EDGetToken.h
edm::EventID::run
RunNumber_t run() const
Definition: EventID.h:38
edm::EventForOutput::getRun
RunForOutput const & getRun() const
Definition: EventForOutput.cc:30
edm::EventForOutput::luminosityBlock_
const std::shared_ptr< LuminosityBlockForOutput const > luminosityBlock_
Definition: EventForOutput.h:82
edm::EventAuxiliary
Definition: EventAuxiliary.h:14
edm::EventForOutput::run
RunNumber_t run() const
Definition: EventForOutput.h:68
ConvertHandle.h
edm::EventForOutput::EventForOutput
EventForOutput(EventPrincipal const &ep, ModuleDescription const &md, ModuleCallingContext const *)
Definition: EventForOutput.cc:13
edm::EventAuxiliary::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventAuxiliary.h:67
edm::EventForOutput::id
EventID const & id() const
Definition: EventForOutput.h:56
edm::EventAuxiliary::time
Timestamp const & time() const
Definition: EventAuxiliary.h:66
edm::EventForOutput
Definition: EventForOutput.h:50
edm::ProductProvenanceRetriever
Definition: ProductProvenanceRetriever.h:56
Wrapper.h
edm::EventForOutput::eventPrincipal
EventPrincipal const & eventPrincipal() const
Definition: EventForOutput.cc:26
edm::EventForOutput::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventForOutput.h:58
Frameworkfwd.h
EventAuxiliary.h
BasicHandle.h
edm::EventForOutput::event
EventNumber_t event() const
Definition: EventForOutput.h:57
OccurrenceForOutput.h
edm::EventForOutput::aux_
EventAuxiliary const & aux_
Definition: EventForOutput.h:81
edm::EventID
Definition: EventID.h:31
edm::EventSelectionIDVector
std::vector< EventSelectionID > EventSelectionIDVector
Definition: EventSelectionID.h:16
StreamID.h
SiStripBadComponentsDQMServiceTemplate_cfg.ep
ep
Definition: SiStripBadComponentsDQMServiceTemplate_cfg.py:86
RunID.h
edm::EventForOutput::getLuminosityBlock
LuminosityBlockForOutput const & getLuminosityBlock() const
Definition: EventForOutput.h:64
EventSelectionID.h
edm::ModuleCallingContext
Definition: ModuleCallingContext.h:29
edm::Timestamp
Definition: Timestamp.h:30