9 produces <unsigned int> (
"run" );
10 produces <unsigned int> (
"event" );
11 produces <unsigned int> (
"bx" );
12 produces <unsigned int> (
"lumi" );
13 produces <float> (
"instLumi" );
14 produces <float> (
"PU" );
15 #ifdef ExtendedCALIBTree 16 produces <std::vector<bool> > (
"TrigTech" );
17 produces <std::vector<bool> > (
"TrigPh" );
29 auto run = std::make_unique<unsigned int>(iEvent.
id().
run() );
30 auto event = std::make_unique<unsigned int>(iEvent.
id().
event() );
31 auto bx = std::make_unique<unsigned int>(iEvent.
bunchCrossing() );
37 #ifdef ExtendedCALIBTree 38 std::vector<bool> TrigTech_(64,
false);
39 std::vector<bool> TrigPh_(128,
false);
42 #ifdef ExtendedCALIBTree 45 if ( ! dWord.empty() ) {
47 for (
int i = 0;
i < 64; ++
i ) {
55 for (
int i = 0;
i < 64; ++
i ) {
60 auto TrigTech = std::make_unique<std::vector<bool>>(TrigTech_);
61 auto TrigPh = std::make_unique<std::vector<bool>>(TrigPh_);
66 float instLumi_=0;
float PU_=0;
68 if(lumiScalers.isValid()){
69 if (lumiScalers->begin() != lumiScalers->end()) {
70 instLumi_ = lumiScalers->begin()->instantLumi();
71 PU_ = lumiScalers->begin()->pileup();
75 <<
"LumiScalers collection not found in the event; will write dummy values";
78 auto instLumi = std::make_unique<float>(instLumi_);
79 auto PU = std::make_unique<float>(PU_);
85 #ifdef ExtendedCALIBTree
T getParameter(std::string const &) const
EventNumber_t event() const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< LumiScalersCollection > scalerToken_
int bunchCrossing() const
edm::LuminosityBlockNumber_t luminosityBlock() const
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > trig_token_
std::vector< bool > DecisionWord
typedefs
std::vector< bool > TechnicalTriggerWord
technical trigger bits (64 bits)
void produce(edm::Event &, const edm::EventSetup &) override
ShallowEventDataProducer(const edm::ParameterSet &)