CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
L1UpgradeTreeProducer Class Reference

#include <L1TriggerDPG/L1Ntuples/src/L1UpgradeTreeProducer.cc>

Inheritance diagram for L1UpgradeTreeProducer:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 L1UpgradeTreeProducer (const edm::ParameterSet &)
 
 ~L1UpgradeTreeProducer () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex >
const & 
esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector
< ProductResolverIndexAndSkipBit >
const & 
itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Public Attributes

L1Analysis::L1AnalysisL1Upgradel1Upgrade
 
L1Analysis::L1AnalysisL1UpgradeDataFormatl1UpgradeData
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob (void) override
 
void endJob () override
 

Private Attributes

edm::EDGetTokenT
< l1t::EGammaBxCollection
egToken_
 
edm::Service< TFileServicefs_
 
edm::EDGetTokenT
< l1t::JetBxCollection
jetToken_
 
unsigned maxL1Upgrade_
 
edm::EDGetTokenT
< l1t::MuonBxCollection
muonToken_
 
edm::EDGetTokenT
< l1t::EtSumBxCollection
sumToken_
 
std::vector< edm::EDGetTokenT
< l1t::TauBxCollection > > 
tauTokens_
 
TTree * tree_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsInputProcessBlocks ()
 
static bool wantsProcessBlocks ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Description: Produce L1 Extra tree

Implementation:

Definition at line 49 of file L1UpgradeTreeProducer.cc.

Constructor & Destructor Documentation

L1UpgradeTreeProducer::L1UpgradeTreeProducer ( const edm::ParameterSet iConfig)
explicit

Definition at line 80 of file L1UpgradeTreeProducer.cc.

References egToken_, fs_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), jetToken_, l1Upgrade, l1UpgradeData, TFileService::make(), maxL1Upgrade_, muonToken_, sumToken_, metsig::tau, runTauDisplay::taus, tauTokens_, and tree_.

80  {
81  egToken_ = consumes<l1t::EGammaBxCollection>(iConfig.getUntrackedParameter<edm::InputTag>("egToken"));
82  //tauToken_ = consumes<l1t::TauBxCollection>(iConfig.getUntrackedParameter<edm::InputTag>("tauToken"));
83  jetToken_ = consumes<l1t::JetBxCollection>(iConfig.getUntrackedParameter<edm::InputTag>("jetToken"));
84  sumToken_ = consumes<l1t::EtSumBxCollection>(iConfig.getUntrackedParameter<edm::InputTag>("sumToken"));
85  muonToken_ = consumes<l1t::MuonBxCollection>(iConfig.getUntrackedParameter<edm::InputTag>("muonToken"));
86 
87  const auto& taus = iConfig.getUntrackedParameter<std::vector<edm::InputTag>>("tauTokens");
88  for (const auto& tau : taus) {
89  tauTokens_.push_back(consumes<l1t::TauBxCollection>(tau));
90  }
91 
92  maxL1Upgrade_ = iConfig.getParameter<unsigned int>("maxL1Upgrade");
93 
95  l1UpgradeData = l1Upgrade->getData();
96 
97  // set up output
98  tree_ = fs_->make<TTree>("L1UpgradeTree", "L1UpgradeTree");
99  tree_->Branch("L1Upgrade", "L1Analysis::L1AnalysisL1UpgradeDataFormat", &l1UpgradeData, 32000, 3);
100 }
T getUntrackedParameter(std::string const &, T const &) const
std::vector< edm::EDGetTokenT< l1t::TauBxCollection > > tauTokens_
edm::Service< TFileService > fs_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
L1Analysis::L1AnalysisL1Upgrade * l1Upgrade
L1Analysis::L1AnalysisL1UpgradeDataFormat * l1UpgradeData
edm::EDGetTokenT< l1t::EGammaBxCollection > egToken_
edm::EDGetTokenT< l1t::EtSumBxCollection > sumToken_
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::EDGetTokenT< l1t::MuonBxCollection > muonToken_
edm::EDGetTokenT< l1t::JetBxCollection > jetToken_
L1UpgradeTreeProducer::~L1UpgradeTreeProducer ( )
override

Definition at line 102 of file L1UpgradeTreeProducer.cc.

102  {
103  // do anything here that needs to be done at desctruction time
104  // (e.g. close files, deallocate resources etc.)
105 }

Member Function Documentation

void L1UpgradeTreeProducer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::EDAnalyzer.

Definition at line 112 of file L1UpgradeTreeProducer.cc.

References egToken_, edm::Event::getByToken(), edm::HandleBase::isValid(), metsig::jet, jetToken_, l1Upgrade, maxL1Upgrade_, HLT_FULL_cff::muon, muonToken_, L1Analysis::L1AnalysisL1Upgrade::Reset(), L1Analysis::L1AnalysisL1Upgrade::SetEm(), L1Analysis::L1AnalysisL1Upgrade::SetJet(), L1Analysis::L1AnalysisL1Upgrade::SetMuon(), L1Analysis::L1AnalysisL1Upgrade::SetSum(), L1Analysis::L1AnalysisL1Upgrade::SetTau(), sumToken_, metsig::tau, tauTokens_, and tree_.

112  {
113  l1Upgrade->Reset();
114 
119 
120  iEvent.getByToken(egToken_, eg);
121  iEvent.getByToken(jetToken_, jet);
122  iEvent.getByToken(sumToken_, sums);
123  iEvent.getByToken(muonToken_, muon);
124 
125  if (eg.isValid()) {
127  } else {
128  edm::LogWarning("MissingProduct") << "L1Upgrade Em not found. Branch will not be filled" << std::endl;
129  }
130  if (jet.isValid()) {
132  } else {
133  edm::LogWarning("MissingProduct") << "L1Upgrade Jets not found. Branch will not be filled" << std::endl;
134  }
135 
136  if (sums.isValid()) {
138  } else {
139  edm::LogWarning("MissingProduct") << "L1Upgrade EtSums not found. Branch will not be filled" << std::endl;
140  }
141 
142  if (muon.isValid()) {
144  } else {
145  edm::LogWarning("MissingProduct") << "L1Upgrade Muons not found. Branch will not be filled" << std::endl;
146  }
147 
148  for (auto& tautoken : tauTokens_) {
150  iEvent.getByToken(tautoken, tau);
151  if (tau.isValid()) {
153  } else {
154  edm::LogWarning("MissingProduct") << "L1Upgrade Tau not found. Branch will not be filled" << std::endl;
155  }
156  }
157 
158  tree_->Fill();
159 }
std::vector< edm::EDGetTokenT< l1t::TauBxCollection > > tauTokens_
void SetMuon(const edm::Handle< l1t::MuonBxCollection > muon, unsigned maxL1Upgrade)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:539
void SetJet(const edm::Handle< l1t::JetBxCollection > jet, unsigned maxL1Upgrade)
void SetEm(const edm::Handle< l1t::EGammaBxCollection > em, unsigned maxL1Upgrade)
L1Analysis::L1AnalysisL1Upgrade * l1Upgrade
edm::EDGetTokenT< l1t::EGammaBxCollection > egToken_
edm::EDGetTokenT< l1t::EtSumBxCollection > sumToken_
bool isValid() const
Definition: HandleBase.h:70
void SetTau(const edm::Handle< l1t::TauBxCollection > tau, unsigned maxL1Upgrade)
edm::EDGetTokenT< l1t::MuonBxCollection > muonToken_
edm::EDGetTokenT< l1t::JetBxCollection > jetToken_
Log< level::Warning, false > LogWarning
void SetSum(const edm::Handle< l1t::EtSumBxCollection > sums, unsigned maxL1Upgrade)
void L1UpgradeTreeProducer::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 162 of file L1UpgradeTreeProducer.cc.

162 {}
void L1UpgradeTreeProducer::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 165 of file L1UpgradeTreeProducer.cc.

165 {}

Member Data Documentation

edm::EDGetTokenT<l1t::EGammaBxCollection> L1UpgradeTreeProducer::egToken_
private

Definition at line 73 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

edm::Service<TFileService> L1UpgradeTreeProducer::fs_
private

Definition at line 67 of file L1UpgradeTreeProducer.cc.

Referenced by L1UpgradeTreeProducer().

edm::EDGetTokenT<l1t::JetBxCollection> L1UpgradeTreeProducer::jetToken_
private

Definition at line 75 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

L1Analysis::L1AnalysisL1Upgrade* L1UpgradeTreeProducer::l1Upgrade

Definition at line 60 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

L1Analysis::L1AnalysisL1UpgradeDataFormat* L1UpgradeTreeProducer::l1UpgradeData

Definition at line 61 of file L1UpgradeTreeProducer.cc.

Referenced by L1UpgradeTreeProducer().

unsigned L1UpgradeTreeProducer::maxL1Upgrade_
private

Definition at line 64 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

edm::EDGetTokenT<l1t::MuonBxCollection> L1UpgradeTreeProducer::muonToken_
private

Definition at line 77 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

edm::EDGetTokenT<l1t::EtSumBxCollection> L1UpgradeTreeProducer::sumToken_
private

Definition at line 76 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

std::vector<edm::EDGetTokenT<l1t::TauBxCollection> > L1UpgradeTreeProducer::tauTokens_
private

Definition at line 74 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().

TTree* L1UpgradeTreeProducer::tree_
private

Definition at line 70 of file L1UpgradeTreeProducer.cc.

Referenced by analyze(), and L1UpgradeTreeProducer().