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:
54  ~EventForOutput() override;
55 
56  EventAuxiliary const& eventAuxiliary() const { return aux_; }
57  EventID const& id() const { return aux_.id(); }
58  EventNumber_t event() const { return aux_.event(); }
60  Timestamp const& time() const { return aux_.time(); }
61 
63  StreamID streamID() const { return streamID_; }
64 
66 
67  RunForOutput const& getRun() const;
68 
69  RunNumber_t run() const { return id().run(); }
70 
71  BranchListIndexes const& branchListIndexes() const;
72 
74 
76 
78 
79  private:
80  friend class edmtest::TestOutputModule; // For testing
81 
82  EventPrincipal const& eventPrincipal() const;
83 
85  std::shared_ptr<LuminosityBlockForOutput const> const luminosityBlock_;
86 
88  };
89 } // namespace edm
90 #endif
edm::EventTransitionInfo
Definition: TransitionInfoTypes.h:26
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::EventToProcessBlockIndexes
Definition: EventToProcessBlockIndexes.h:12
propagate_const.h
edmtest
Definition: AlignPCLThresholdsReader.cc:11
edm::EventForOutput::streamID
StreamID streamID() const
Definition: EventForOutput.h:63
edm::EventForOutput::eventAuxiliary
EventAuxiliary const & eventAuxiliary() const
Definition: EventForOutput.h:56
edm::EventForOutput::eventPrincipal
EventPrincipal const & eventPrincipal() const
Definition: EventForOutput.cc:32
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:60
edm::LuminosityBlockNumber_t
unsigned int LuminosityBlockNumber_t
Definition: RunLumiEventNumber.h:13
edm::EventForOutput::TestOutputModule
friend class edmtest::TestOutputModule
Definition: EventForOutput.h:80
edm::EventForOutput::getRun
RunForOutput const & getRun() const
Definition: EventForOutput.cc:36
edm::EventForOutput::EventForOutput
EventForOutput(EventTransitionInfo const &, ModuleDescription const &, ModuleCallingContext const *)
Definition: EventForOutput.cc:14
edm::ModuleDescription
Definition: ModuleDescription.h:21
edm::EventForOutput::~EventForOutput
~EventForOutput() override
Definition: EventForOutput.cc:30
edm::OccurrenceForOutput
Definition: OccurrenceForOutput.h:45
edm::LuminosityBlockForOutput
Definition: LuminosityBlockForOutput.h:40
edm::RunForOutput
Definition: RunForOutput.h:40
edm::EventPrincipal
Definition: EventPrincipal.h:48
BranchListIndex.h
edm::EventForOutput::streamID_
StreamID streamID_
Definition: EventForOutput.h:87
EventID.h
edm::EventForOutput::branchListIndexes
BranchListIndexes const & branchListIndexes() const
Definition: EventForOutput.cc:46
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::EventForOutput::productProvenanceRetrieverPtr
ProductProvenanceRetriever const * productProvenanceRetrieverPtr() const
Definition: EventForOutput.cc:42
edm::EventID::run
RunNumber_t run() const
Definition: EventID.h:38
edm::EventForOutput::luminosityBlock_
const std::shared_ptr< LuminosityBlockForOutput const > luminosityBlock_
Definition: EventForOutput.h:85
edm::EventAuxiliary
Definition: EventAuxiliary.h:14
edm::EventForOutput::run
RunNumber_t run() const
Definition: EventForOutput.h:69
edm::EventForOutput::eventSelectionIDs
EventSelectionIDVector const & eventSelectionIDs() const
Definition: EventForOutput.cc:38
ConvertHandle.h
edm::EventAuxiliary::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventAuxiliary.h:67
edm::EventForOutput::eventToProcessBlockIndexes
EventToProcessBlockIndexes const & eventToProcessBlockIndexes() const
Definition: EventForOutput.cc:48
edm::EventForOutput::id
EventID const & id() const
Definition: EventForOutput.h:57
edm::EventAuxiliary::time
Timestamp const & time() const
Definition: EventAuxiliary.h:66
edm::EventForOutput
Definition: EventForOutput.h:50
edm::ProductProvenanceRetriever
Definition: ProductProvenanceRetriever.h:37
Wrapper.h
edm::EventForOutput::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventForOutput.h:59
Frameworkfwd.h
EventAuxiliary.h
BasicHandle.h
edm::EventForOutput::event
EventNumber_t event() const
Definition: EventForOutput.h:58
OccurrenceForOutput.h
edm::EventForOutput::aux_
EventAuxiliary const & aux_
Definition: EventForOutput.h:84
edm::EventID
Definition: EventID.h:31
edm::EventSelectionIDVector
std::vector< EventSelectionID > EventSelectionIDVector
Definition: EventSelectionID.h:16
StreamID.h
RunID.h
edm::EventForOutput::getLuminosityBlock
LuminosityBlockForOutput const & getLuminosityBlock() const
Definition: EventForOutput.h:65
EventSelectionID.h
edm::ModuleCallingContext
Definition: ModuleCallingContext.h:29
edm::Timestamp
Definition: Timestamp.h:30