CMS 3D CMS Logo

PileUpEventPrincipal.h
Go to the documentation of this file.
1 #ifndef SimGeneral_MixingModule_PileUpEventPrincipal_h
2 #define SimGeneral_MixingModule_PileUpEventPrincipal_h
3 
4 #include <set>
5 #include <string>
6 
14 
15 namespace edm {
16  class ModuleCallingContext;
17 }
18 
20 public:
22  : principal_(ep), mcc_(mcc), bunchCrossing_(bcr) {}
23 
25 
26  edm::EventPrincipal const& principal() const { return principal_; }
27 
29 
30  int bunchCrossing() const { return bunchCrossing_; }
31 
32  template <typename T>
34  edm::BasicHandle bh = principal_.getByLabel(edm::PRODUCT_TYPE, edm::TypeID(typeid(T)), tag, nullptr, nullptr, mcc_);
35  result = edm::convert_handle<T>(std::move(bh));
36  return result.isValid();
37  }
38 
39 private:
43 };
44 
45 #endif
edm::PRODUCT_TYPE
Definition: ProductKindOfType.h:5
edm::BasicHandle
Definition: BasicHandle.h:43
PileUpEventPrincipal::PileUpEventPrincipal
PileUpEventPrincipal(edm::EventPrincipal const &ep, edm::ModuleCallingContext const *mcc, int bcr)
Definition: PileUpEventPrincipal.h:21
edm
HLT enums.
Definition: AlignableModifier.h:19
TypeID.h
PileUpEventPrincipal::bunchCrossing
int bunchCrossing() const
Definition: PileUpEventPrincipal.h:30
PileUpEventPrincipal
Definition: PileUpEventPrincipal.h:19
edm::Handle
Definition: AssociativeIterator.h:50
PileUpEventPrincipal::bunchCrossing_
int bunchCrossing_
Definition: PileUpEventPrincipal.h:42
PileUpEventPrincipal::moduleCallingContext
edm::ModuleCallingContext const * moduleCallingContext() const
Definition: PileUpEventPrincipal.h:28
edm::EventPrincipal
Definition: EventPrincipal.h:46
PileUpEventPrincipal::principal_
edm::EventPrincipal const & principal_
Definition: PileUpEventPrincipal.h:40
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
EventPrincipal.h
PileUpEventPrincipal::principal
edm::EventPrincipal const & principal()
Definition: PileUpEventPrincipal.h:24
ConvertHandle.h
InputTag.h
edm::TypeID
Definition: TypeID.h:22
eostools.move
def move(src, dest)
Definition: eostools.py:511
T
long double T
Definition: Basic3DVectorLD.h:48
BasicHandle.h
edm::Principal::getByLabel
BasicHandle getByLabel(KindOfType kindOfType, TypeID const &typeID, InputTag const &inputTag, EDConsumerBase const *consumes, SharedResourcesAcquirer *sra, ModuleCallingContext const *mcc) const
Definition: Principal.cc:558
PileUpEventPrincipal::mcc_
edm::ModuleCallingContext const * mcc_
Definition: PileUpEventPrincipal.h:41
mps_fire.result
result
Definition: mps_fire.py:311
PileUpEventPrincipal::getByLabel
bool getByLabel(edm::InputTag const &tag, edm::Handle< T > &result) const
Definition: PileUpEventPrincipal.h:33
ProductKindOfType.h
SiStripBadComponentsDQMServiceTemplate_cfg.ep
ep
Definition: SiStripBadComponentsDQMServiceTemplate_cfg.py:86
edm::InputTag
Definition: InputTag.h:15
PileUpEventPrincipal::principal
edm::EventPrincipal const & principal() const
Definition: PileUpEventPrincipal.h:26
edm::ModuleCallingContext
Definition: ModuleCallingContext.h:29
EncodedEventId.h