Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
SimGeneral
MixingModule
interface
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
7
#include "
FWCore/Framework/interface/EventPrincipal.h
"
8
#include "
FWCore/Utilities/interface/InputTag.h
"
9
#include "
FWCore/Utilities/interface/ProductKindOfType.h
"
10
#include "
FWCore/Utilities/interface/TypeID.h
"
11
#include "
DataFormats/Common/interface/BasicHandle.h
"
12
#include "
DataFormats/Common/interface/ConvertHandle.h
"
13
#include "
SimDataFormats/EncodedEventId/interface/EncodedEventId.h
"
14
15
namespace
edm {
16
class
ModuleCallingContext;
17
}
18
19
class
PileUpEventPrincipal
{
20
public
:
21
PileUpEventPrincipal
(
edm::EventPrincipal
const
& ep,
edm::ModuleCallingContext
const
* mcc,
int
bcr)
22
:
principal_
(ep),
mcc_
(mcc),
bunchCrossing_
(bcr) {}
23
24
edm::EventPrincipal
const
&
principal
() {
return
principal_
; }
25
26
edm::EventPrincipal
const
&
principal
()
const
{
return
principal_
; }
27
28
edm::ModuleCallingContext
const
*
moduleCallingContext
()
const
{
return
mcc_
; }
29
30
int
bunchCrossing
()
const
{
return
bunchCrossing_
; }
31
32
template
<
typename
T>
33
bool
getByLabel
(
edm::InputTag
const
&
tag
,
edm::Handle<T>
&
result
)
const
{
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
:
40
edm::EventPrincipal
const
&
principal_
;
41
edm::ModuleCallingContext
const
*
mcc_
;
42
int
bunchCrossing_
;
43
};
44
45
#endif
PileUpEventPrincipal::bunchCrossing
int bunchCrossing() const
Definition:
PileUpEventPrincipal.h:30
edm::PRODUCT_TYPE
Definition:
ProductKindOfType.h:5
ConvertHandle.h
edm::ModuleCallingContext
Definition:
ModuleCallingContext.h:32
edm::Handle
Definition:
AssociativeIterator.h:50
edm::EventPrincipal
Definition:
EventPrincipal.h:48
edm::TypeID
Definition:
TypeID.h:22
mps_fire.result
tuple result
Definition:
mps_fire.py:311
edm::BasicHandle
Definition:
BasicHandle.h:43
PileUpEventPrincipal::principal
edm::EventPrincipal const & principal()
Definition:
PileUpEventPrincipal.h:24
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:571
EventPrincipal.h
GlobalPosition_Frontier_DevDB_cff.tag
tuple tag
Definition:
GlobalPosition_Frontier_DevDB_cff.py:11
PileUpEventPrincipal::principal_
edm::EventPrincipal const & principal_
Definition:
PileUpEventPrincipal.h:40
PileUpEventPrincipal::PileUpEventPrincipal
PileUpEventPrincipal(edm::EventPrincipal const &ep, edm::ModuleCallingContext const *mcc, int bcr)
Definition:
PileUpEventPrincipal.h:21
eostools.move
def move
Definition:
eostools.py:511
PileUpEventPrincipal::principal
edm::EventPrincipal const & principal() const
Definition:
PileUpEventPrincipal.h:26
edm::HandleBase::isValid
bool isValid() const
Definition:
HandleBase.h:70
ProductKindOfType.h
PileUpEventPrincipal::mcc_
edm::ModuleCallingContext const * mcc_
Definition:
PileUpEventPrincipal.h:41
TypeID.h
BasicHandle.h
PileUpEventPrincipal::moduleCallingContext
edm::ModuleCallingContext const * moduleCallingContext() const
Definition:
PileUpEventPrincipal.h:28
PileUpEventPrincipal
Definition:
PileUpEventPrincipal.h:19
edm::InputTag
Definition:
InputTag.h:15
PileUpEventPrincipal::getByLabel
bool getByLabel(edm::InputTag const &tag, edm::Handle< T > &result) const
Definition:
PileUpEventPrincipal.h:33
InputTag.h
PileUpEventPrincipal::bunchCrossing_
int bunchCrossing_
Definition:
PileUpEventPrincipal.h:42
EncodedEventId.h
T
long double T
Definition:
Basic3DVectorLD.h:48
Generated for CMSSW Reference Manual by
1.8.5