CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
L1ScalesTrivialProducer Class Reference

#include <L1TriggerConfig/L1ScalesProducers/interface/L1ScalesTrivialProducer.h>

Inheritance diagram for L1ScalesTrivialProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Member Functions

 L1ScalesTrivialProducer (const edm::ParameterSet &)
 
std::unique_ptr< L1CaloEtScaleproduceEmScale (const L1EmEtScaleRcd &)
 
std::unique_ptr< L1CaloEtScaleproduceHfRingScale (const L1HfRingEtScaleRcd &)
 
std::unique_ptr< L1CaloEtScaleproduceHtMissScale (const L1HtMissScaleRcd &)
 
std::unique_ptr< L1CaloEtScaleproduceJetScale (const L1JetEtScaleRcd &)
 
 ~L1ScalesTrivialProducer ()
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
 ~ESProducer ()(false) override
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
void newInterval (const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval) override
 overrides DataProxyProvider method More...
 
 ~ESProxyFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
 DataProxyProvider ()
 
const ComponentDescriptiondescription () const
 
bool isUsingRecord (const EventSetupRecordKey &) const
 
const KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey) const
 
void resetProxies (const EventSetupRecordKey &iRecordType)
 
void resetProxiesIfTransient (const EventSetupRecordKey &iRecordType)
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider () noexcept(false)
 

Private Attributes

double m_emEtScaleInputLsb
 
std::vector< double > m_emEtThresholds
 
std::vector< double > m_hfRingThresholds
 
std::vector< double > m_htMissThresholds
 
double m_jetEtScaleInputLsb
 
std::vector< double > m_jetEtThresholds
 

Additional Inherited Members

- Public Types inherited from edm::eventsetup::DataProxyProvider
typedef std::vector< std::pair< DataKey, edm::propagate_const< std::shared_ptr< DataProxy > > > > KeyedProxies
 
typedef std::vector< EventSetupRecordKeyKeys
 
typedef std::map< EventSetupRecordKey, KeyedProxiesRecordProxies
 
- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::ESProducer
template<typename T >
void setWhatProduced (T *iThis, const es::Label &iLabel=es::Label())
 
template<typename T >
void setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
void setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
void setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord , typename TArg >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel=es::Label())
 
- Protected Member Functions inherited from edm::ESProxyFactoryProducer
template<class TFactory >
void registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const eventsetup::EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string())
 
void registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList) override
 override DataProxyProvider method More...
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
void eraseAll (const EventSetupRecordKey &iRecordKey)
 deletes all the Proxies in aStream More...
 
void invalidateProxies (const EventSetupRecordKey &iRecordKey)
 
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &)
 

Detailed Description

Description: A Producer for the L1 scales available via EventSetup

Implementation: <Notes on="" implementation>="">

Definition at line 44 of file L1ScalesTrivialProducer.h.

Constructor & Destructor Documentation

L1ScalesTrivialProducer::L1ScalesTrivialProducer ( const edm::ParameterSet ps)

Definition at line 15 of file L1ScalesTrivialProducer.cc.

References edm::ParameterSet::getParameter(), m_emEtScaleInputLsb, m_emEtThresholds, m_hfRingThresholds, m_htMissThresholds, m_jetEtScaleInputLsb, m_jetEtThresholds, produceEmScale(), produceHfRingScale(), produceHtMissScale(), produceJetScale(), and edm::ESProducer::setWhatProduced().

16 {
17 
18  //the following line is needed to tell the framework what
19  // data is being produced
24 
25  //now do what ever other initialization is needed
26 
27  // get numbers from the config file - all units are GeV
28  m_emEtScaleInputLsb = ps.getParameter<double>("L1CaloEmEtScaleLSB");
29  m_emEtThresholds = ps.getParameter< std::vector<double> >("L1CaloEmThresholds");
30 
31  m_jetEtScaleInputLsb = ps.getParameter<double>("L1CaloRegionEtScaleLSB");
32  m_jetEtThresholds = ps.getParameter< std::vector<double> >("L1CaloJetThresholds");
33 
34  m_htMissThresholds = ps.getParameter< std::vector<double> >("L1HtMissThresholds");
35  m_hfRingThresholds = ps.getParameter< std::vector<double> >("L1HfRingThresholds");
36 
37 }
T getParameter(std::string const &) const
std::vector< double > m_hfRingThresholds
std::vector< double > m_emEtThresholds
std::unique_ptr< L1CaloEtScale > produceEmScale(const L1EmEtScaleRcd &)
std::unique_ptr< L1CaloEtScale > produceJetScale(const L1JetEtScaleRcd &)
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
std::vector< double > m_jetEtThresholds
std::unique_ptr< L1CaloEtScale > produceHtMissScale(const L1HtMissScaleRcd &)
std::vector< double > m_htMissThresholds
std::unique_ptr< L1CaloEtScale > produceHfRingScale(const L1HfRingEtScaleRcd &)
L1ScalesTrivialProducer::~L1ScalesTrivialProducer ( )

Definition at line 40 of file L1ScalesTrivialProducer.cc.

41 {
42 
43  // do anything here that needs to be done at destruction time
44  // (e.g. close files, deallocate resources etc.)
45 
46 }

Member Function Documentation

std::unique_ptr< L1CaloEtScale > L1ScalesTrivialProducer::produceEmScale ( const L1EmEtScaleRcd iRecord)

Definition at line 54 of file L1ScalesTrivialProducer.cc.

References m_emEtScaleInputLsb, and m_emEtThresholds.

Referenced by L1ScalesTrivialProducer().

55 {
56  using namespace edm::es;
57 
58  std::unique_ptr<L1CaloEtScale> emScale = std::unique_ptr<L1CaloEtScale>( new L1CaloEtScale(m_emEtScaleInputLsb, m_emEtThresholds) );
59 
60  return emScale ;
61 }
std::vector< double > m_emEtThresholds
std::unique_ptr< L1CaloEtScale > L1ScalesTrivialProducer::produceHfRingScale ( const L1HfRingEtScaleRcd iRecord)

Definition at line 83 of file L1ScalesTrivialProducer.cc.

References m_hfRingThresholds, and m_jetEtScaleInputLsb.

Referenced by L1ScalesTrivialProducer().

84 {
85  using namespace edm::es;
86 
87  std::unique_ptr<L1CaloEtScale> hfRingEtScale = std::unique_ptr<L1CaloEtScale>( new L1CaloEtScale(0xff, 0x7, m_jetEtScaleInputLsb, m_hfRingThresholds) );
88 
89  return hfRingEtScale ;
90 }
std::vector< double > m_hfRingThresholds
std::unique_ptr< L1CaloEtScale > L1ScalesTrivialProducer::produceHtMissScale ( const L1HtMissScaleRcd iRecord)

Definition at line 73 of file L1ScalesTrivialProducer.cc.

References m_htMissThresholds, and m_jetEtScaleInputLsb.

Referenced by L1ScalesTrivialProducer().

74 {
75  using namespace edm::es;
76 
77  std::unique_ptr<L1CaloEtScale> htMissScale = std::unique_ptr<L1CaloEtScale>( new L1CaloEtScale(0, 0x7f, m_jetEtScaleInputLsb, m_htMissThresholds) );
78 
79  return htMissScale ;
80 }
std::vector< double > m_htMissThresholds
std::unique_ptr< L1CaloEtScale > L1ScalesTrivialProducer::produceJetScale ( const L1JetEtScaleRcd iRecord)

Definition at line 63 of file L1ScalesTrivialProducer.cc.

References m_jetEtScaleInputLsb, and m_jetEtThresholds.

Referenced by L1ScalesTrivialProducer().

64 {
65  using namespace edm::es;
66 
67  std::unique_ptr<L1CaloEtScale> jetEtScale = std::unique_ptr<L1CaloEtScale>( new L1CaloEtScale(m_jetEtScaleInputLsb, m_jetEtThresholds) );
68 
69  return jetEtScale ;
70 }
std::vector< double > m_jetEtThresholds

Member Data Documentation

double L1ScalesTrivialProducer::m_emEtScaleInputLsb
private

Definition at line 57 of file L1ScalesTrivialProducer.h.

Referenced by L1ScalesTrivialProducer(), and produceEmScale().

std::vector<double> L1ScalesTrivialProducer::m_emEtThresholds
private

Definition at line 58 of file L1ScalesTrivialProducer.h.

Referenced by L1ScalesTrivialProducer(), and produceEmScale().

std::vector<double> L1ScalesTrivialProducer::m_hfRingThresholds
private

Definition at line 64 of file L1ScalesTrivialProducer.h.

Referenced by L1ScalesTrivialProducer(), and produceHfRingScale().

std::vector<double> L1ScalesTrivialProducer::m_htMissThresholds
private

Definition at line 63 of file L1ScalesTrivialProducer.h.

Referenced by L1ScalesTrivialProducer(), and produceHtMissScale().

double L1ScalesTrivialProducer::m_jetEtScaleInputLsb
private
std::vector<double> L1ScalesTrivialProducer::m_jetEtThresholds
private

Definition at line 61 of file L1ScalesTrivialProducer.h.

Referenced by L1ScalesTrivialProducer(), and produceJetScale().