CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
l1t::CaloParamsESProducer Class Reference
Inheritance diagram for l1t::CaloParamsESProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Types

typedef boost::shared_ptr
< CaloParams
ReturnType
 
- Public Types inherited from edm::eventsetup::DataProxyProvider
typedef std::vector< std::pair
< DataKey, boost::shared_ptr
< DataProxy > > > 
KeyedProxies
 
typedef std::vector
< EventSetupRecordKey
Keys
 
typedef std::map
< EventSetupRecordKey,
KeyedProxies
RecordProxies
 

Public Member Functions

 CaloParamsESProducer (const edm::ParameterSet &)
 
ReturnType produce (const L1TCaloParamsRcd &)
 
 ~CaloParamsESProducer ()
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
virtual ~ESProducer ()
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
virtual void newInterval (const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval)
 overrides DataProxyProvider method More...
 
virtual ~ESProxyFactoryProducer ()
 
- 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 ()
 

Private Attributes

std::string m_label
 
CaloParams m_params
 

Additional Inherited Members

- 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::auto_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const eventsetup::EventSetupRecordKey &iRecord, std::auto_ptr< eventsetup::ProxyFactoryBase > &iFactory, const std::string &iLabel=std::string())
 
virtual void registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList)
 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: Produces configuration parameters for the fictitious Yellow trigger.

Implementation: Dummy producer for L1 calo upgrade configuration parameters

Author
: Jim Brooke, University of Bristol

Definition at line 44 of file CaloParamsESProducer.cc.

Member Typedef Documentation

Definition at line 49 of file CaloParamsESProducer.cc.

Constructor & Destructor Documentation

l1t::CaloParamsESProducer::CaloParamsESProducer ( const edm::ParameterSet conf)

Definition at line 69 of file CaloParamsESProducer.cc.

References edm::FileInPath::fullPath(), edm::ParameterSet::getParameter(), i, and AlCaHLTBitMon_QueryRunRegistry::string.

70 {
71 
72  //the following line is needed to tell the framework what
73  // data is being produced
74  setWhatProduced(this);
75  //setWhatProduced(this, conf.getParameter<std::string>("label"));
76 
77  // towers
78  m_params.setTowerLsbH(conf.getParameter<double>("towerLsbH"));
79  m_params.setTowerLsbE(conf.getParameter<double>("towerLsbE"));
80  m_params.setTowerLsbSum(conf.getParameter<double>("towerLsbSum"));
81  m_params.setTowerNBitsH(conf.getParameter<int>("towerNBitsH"));
82  m_params.setTowerNBitsE(conf.getParameter<int>("towerNBitsE"));
83  m_params.setTowerNBitsSum(conf.getParameter<int>("towerNBitsSum"));
84  m_params.setTowerNBitsRatio(conf.getParameter<int>("towerNBitsRatio"));
85  m_params.setTowerEncoding(conf.getParameter<bool>("towerEncoding"));
86 
87  // regions
88  m_params.setRegionLsb(conf.getParameter<double>("regionLsb"));
89  m_params.setRegionPUSType(conf.getParameter<std::string>("regionPUSType"));
90  m_params.setRegionPUSParams(conf.getParameter<std::vector<double> >("regionPUSParams"));
91 
92  // EG
93  m_params.setEgLsb(conf.getParameter<double>("egLsb"));
94  m_params.setEgSeedThreshold(conf.getParameter<double>("egSeedThreshold"));
95  m_params.setEgNeighbourThreshold(conf.getParameter<double>("egNeighbourThreshold"));
96  m_params.setEgHcalThreshold(conf.getParameter<double>("egHcalThreshold"));
97  m_params.setEgMaxHcalEt(conf.getParameter<double>("egMaxHcalEt"));
98  m_params.setEgEtToRemoveHECut(conf.getParameter<double>("egEtToRemoveHECut"));
99  m_params.setEgRelativeJetIsolationBarrelCut(conf.getParameter<double>("egRelativeJetIsolationBarrelCut"));
100  m_params.setEgRelativeJetIsolationEndcapCut(conf.getParameter<double>("egRelativeJetIsolationEndcapCut"));
101 
102  edm::FileInPath egMaxHOverELUTFile = conf.getParameter<edm::FileInPath>("egMaxHOverELUTFile");
103  std::ifstream egMaxHOverELUTStream(egMaxHOverELUTFile.fullPath());
104  std::shared_ptr<l1t::LUT> egMaxHOverELUT( new l1t::LUT(egMaxHOverELUTStream) );
105  m_params.setEgMaxHOverELUT(egMaxHOverELUT);
106 
107  edm::FileInPath egShapeIdLUTFile = conf.getParameter<edm::FileInPath>("egShapeIdLUTFile");
108  std::ifstream egShapeIdLUTStream(egShapeIdLUTFile.fullPath());
109  std::shared_ptr<l1t::LUT> egShapeIdLUT( new l1t::LUT(egShapeIdLUTStream) );
110  m_params.setEgShapeIdLUT(egShapeIdLUT);
111 
112  m_params.setEgIsoPUSType(conf.getParameter<std::string>("egIsoPUSType"));
113 
114  edm::FileInPath egIsoLUTFile = conf.getParameter<edm::FileInPath>("egIsoLUTFile");
115  std::ifstream egIsoLUTStream(egIsoLUTFile.fullPath());
116  std::shared_ptr<l1t::LUT> egIsoLUT( new l1t::LUT(egIsoLUTStream) );
117  m_params.setEgIsolationLUT(egIsoLUT);
118 
119  m_params.setEgIsoAreaNrTowersEta(conf.getParameter<unsigned int>("egIsoAreaNrTowersEta"));
120  m_params.setEgIsoAreaNrTowersPhi(conf.getParameter<unsigned int>("egIsoAreaNrTowersPhi"));
121  m_params.setEgIsoVetoNrTowersPhi(conf.getParameter<unsigned int>("egIsoVetoNrTowersPhi"));
122  m_params.setEgIsoPUEstTowerGranularity(conf.getParameter<unsigned int>("egIsoPUEstTowerGranularity"));
123  m_params.setEgIsoMaxEtaAbsForTowerSum(conf.getParameter<unsigned int>("egIsoMaxEtaAbsForTowerSum"));
124  m_params.setEgIsoMaxEtaAbsForIsoSum(conf.getParameter<unsigned int>("egIsoMaxEtaAbsForIsoSum"));
125 
126  edm::FileInPath egCalibrationLUTFile = conf.getParameter<edm::FileInPath>("egCalibrationLUTFile");
127  std::ifstream egCalibrationLUTStream(egCalibrationLUTFile.fullPath());
128  std::shared_ptr<l1t::LUT> egCalibrationLUT( new l1t::LUT(egCalibrationLUTStream) );
129  m_params.setEgCalibrationLUT(egCalibrationLUT);
130 
131  // tau
132  m_params.setTauLsb(conf.getParameter<double>("tauLsb"));
133  m_params.setTauSeedThreshold(conf.getParameter<double>("tauSeedThreshold"));
134  m_params.setTauNeighbourThreshold(conf.getParameter<double>("tauNeighbourThreshold"));
135  m_params.setSwitchOffTauVeto(conf.getParameter<double>("switchOffTauVeto"));
136  m_params.setSwitchOffTauIso(conf.getParameter<double>("switchOffTauIso"));
137  m_params.setTauIsoPUSType(conf.getParameter<std::string>("tauIsoPUSType"));
138  m_params.setTauRelativeJetIsolationLimit(conf.getParameter<double>("tauRelativeJetIsolationLimit"));
139  m_params.setTauRelativeJetIsolationCut(conf.getParameter<double>("tauRelativeJetIsolationCut"));
140 
141  edm::FileInPath tauIsoLUTFile = conf.getParameter<edm::FileInPath>("tauIsoLUTFile");
142  std::ifstream tauIsoLUTStream(tauIsoLUTFile.fullPath());
143  std::shared_ptr<l1t::LUT> tauIsoLUT( new l1t::LUT(tauIsoLUTStream) );
144  m_params.setTauIsolationLUT(tauIsoLUT);
145 
146  edm::FileInPath tauCalibrationLUTFileBarrelA = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileBarrelA");
147  edm::FileInPath tauCalibrationLUTFileBarrelB = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileBarrelB");
148  edm::FileInPath tauCalibrationLUTFileBarrelC = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileBarrelC");
149  edm::FileInPath tauCalibrationLUTFileEndcapsA = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileEndcapsA");
150  edm::FileInPath tauCalibrationLUTFileEndcapsB = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileEndcapsB");
151  edm::FileInPath tauCalibrationLUTFileEndcapsC = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileEndcapsC");
152  edm::FileInPath tauCalibrationLUTFileEta = conf.getParameter<edm::FileInPath>("tauCalibrationLUTFileEta");
153  std::ifstream tauCalibrationLUTStreamBarrelA(tauCalibrationLUTFileBarrelA.fullPath());
154  std::ifstream tauCalibrationLUTStreamBarrelB(tauCalibrationLUTFileBarrelB.fullPath());
155  std::ifstream tauCalibrationLUTStreamBarrelC(tauCalibrationLUTFileBarrelC.fullPath());
156  std::ifstream tauCalibrationLUTStreamEndcapsA(tauCalibrationLUTFileEndcapsA.fullPath());
157  std::ifstream tauCalibrationLUTStreamEndcapsB(tauCalibrationLUTFileEndcapsB.fullPath());
158  std::ifstream tauCalibrationLUTStreamEndcapsC(tauCalibrationLUTFileEndcapsC.fullPath());
159  std::ifstream tauCalibrationLUTStreamEta(tauCalibrationLUTFileEta.fullPath());
160  std::shared_ptr<l1t::LUT> tauCalibrationLUTBarrelA( new l1t::LUT(tauCalibrationLUTStreamBarrelA) );
161  std::shared_ptr<l1t::LUT> tauCalibrationLUTBarrelB( new l1t::LUT(tauCalibrationLUTStreamBarrelB) );
162  std::shared_ptr<l1t::LUT> tauCalibrationLUTBarrelC( new l1t::LUT(tauCalibrationLUTStreamBarrelC) );
163  std::shared_ptr<l1t::LUT> tauCalibrationLUTEndcapsA( new l1t::LUT(tauCalibrationLUTStreamEndcapsA) );
164  std::shared_ptr<l1t::LUT> tauCalibrationLUTEndcapsB( new l1t::LUT(tauCalibrationLUTStreamEndcapsB) );
165  std::shared_ptr<l1t::LUT> tauCalibrationLUTEndcapsC( new l1t::LUT(tauCalibrationLUTStreamEndcapsC) );
166  std::shared_ptr<l1t::LUT> tauCalibrationLUTEta( new l1t::LUT(tauCalibrationLUTStreamEta) );
167  m_params.setTauCalibrationLUTBarrelA(tauCalibrationLUTBarrelA);
168  m_params.setTauCalibrationLUTBarrelB(tauCalibrationLUTBarrelB);
169  m_params.setTauCalibrationLUTBarrelC(tauCalibrationLUTBarrelC);
170  m_params.setTauCalibrationLUTEndcapsA(tauCalibrationLUTEndcapsA);
171  m_params.setTauCalibrationLUTEndcapsB(tauCalibrationLUTEndcapsB);
172  m_params.setTauCalibrationLUTEndcapsC(tauCalibrationLUTEndcapsC);
173  m_params.setTauCalibrationLUTEta(tauCalibrationLUTEta);
174 
175  // jets
176  m_params.setJetLsb(conf.getParameter<double>("jetLsb"));
177  m_params.setJetSeedThreshold(conf.getParameter<double>("jetSeedThreshold"));
178  m_params.setJetNeighbourThreshold(conf.getParameter<double>("jetNeighbourThreshold"));
179  m_params.setJetPUSType(conf.getParameter<std::string>("jetPUSType"));
180  m_params.setJetCalibrationType(conf.getParameter<std::string>("jetCalibrationType"));
181  m_params.setJetCalibrationParams(conf.getParameter<std::vector<double> >("jetCalibrationParams"));
182 
183  // sums
184  m_params.setEtSumLsb(conf.getParameter<double>("etSumLsb"));
185 
186  std::vector<int> etSumEtaMin = conf.getParameter<std::vector<int> >("etSumEtaMin");
187  std::vector<int> etSumEtaMax = conf.getParameter<std::vector<int> >("etSumEtaMax");
188  std::vector<double> etSumEtThreshold = conf.getParameter<std::vector<double> >("etSumEtThreshold");
189 
190  if ((etSumEtaMin.size() == etSumEtaMax.size()) && (etSumEtaMin.size() == etSumEtThreshold.size())) {
191  for (unsigned i=0; i<etSumEtaMin.size(); ++i) {
192  m_params.setEtSumEtaMin(i, etSumEtaMin.at(i));
193  m_params.setEtSumEtaMax(i, etSumEtaMax.at(i));
194  m_params.setEtSumEtThreshold(i, etSumEtThreshold.at(i));
195  }
196  }
197  else {
198  edm::LogError("l1t|calo") << "Inconsistent number of EtSum parameters" << std::endl;
199  }
200 
201 }
T getParameter(std::string const &) const
int i
Definition: DBlmapReader.cc:9
void setTowerNBitsH(int n)
Definition: CaloParams.h:49
void setTowerLsbE(double lsb)
Definition: CaloParams.h:47
void setTauIsolationLUT(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:141
void setEgHcalThreshold(double thresh)
Definition: CaloParams.h:92
void setJetCalibrationParams(std::vector< double > params)
Definition: CaloParams.h:167
void setEgIsoPUEstTowerGranularity(unsigned iEgIsoPUEstTowerGranularity)
Definition: CaloParams.h:103
void setTauRelativeJetIsolationCut(double cutValue)
Definition: CaloParams.h:139
void setTauCalibrationLUTEta(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:150
void setEgIsoVetoNrTowersPhi(unsigned iEgIsoVetoNrTowersPhi)
Definition: CaloParams.h:102
void setTauCalibrationLUTBarrelA(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:144
void setSwitchOffTauVeto(double limit)
Definition: CaloParams.h:136
void setJetSeedThreshold(double thresh)
Definition: CaloParams.h:162
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
void setTauIsoPUSType(std::string type)
Definition: CaloParams.h:140
void setEtSumEtThreshold(unsigned isum, double thresh)
Definition: CaloParams.cc:30
void setEgLsb(double lsb)
Definition: CaloParams.h:89
void setEgIsoMaxEtaAbsForIsoSum(unsigned iEgIsoMaxEtaAbsForIsoSum)
Definition: CaloParams.h:105
void setEgNeighbourThreshold(double thresh)
Definition: CaloParams.h:91
void setTowerLsbSum(double lsb)
Definition: CaloParams.h:48
void setEgMaxHOverELUT(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:95
void setTauCalibrationLUTEndcapsA(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:147
void setEgEtToRemoveHECut(double thresh)
Definition: CaloParams.h:94
void setEgShapeIdLUT(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:96
void setTauSeedThreshold(double thresh)
Definition: CaloParams.h:134
void setTauCalibrationLUTBarrelC(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:146
void setRegionPUSType(std::string type)
Definition: CaloParams.h:62
Definition: LUT.h:27
void setTauCalibrationLUTBarrelB(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:145
void setEgIsoAreaNrTowersEta(unsigned iEgIsoAreaNrTowersEta)
Definition: CaloParams.h:100
void setTowerNBitsSum(int n)
Definition: CaloParams.h:51
void setTowerLsbH(double lsb)
Definition: CaloParams.h:46
void setEgMaxHcalEt(double cut)
Definition: CaloParams.h:93
void setTauCalibrationLUTEndcapsC(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:149
void setSwitchOffTauIso(double limit)
Definition: CaloParams.h:137
void setEgSeedThreshold(double thresh)
Definition: CaloParams.h:90
void setEtSumEtaMin(unsigned isum, int eta)
Definition: CaloParams.cc:20
void setEgCalibrationLUT(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:110
void setEgIsolationLUT(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:107
void setEgRelativeJetIsolationEndcapCut(double cutValue)
Definition: CaloParams.h:98
void setEgIsoPUSType(std::string type)
Definition: CaloParams.h:106
void setEtSumEtaMax(unsigned isum, int eta)
Definition: CaloParams.cc:25
void setEgIsoMaxEtaAbsForTowerSum(unsigned iEgIsoMaxEtaAbsForTowerSum)
Definition: CaloParams.h:104
void setEtSumLsb(double lsb)
Definition: CaloParams.h:176
void setJetCalibrationType(std::string type)
Definition: CaloParams.h:166
void setTauLsb(double lsb)
Definition: CaloParams.h:133
void setJetNeighbourThreshold(double thresh)
Definition: CaloParams.h:163
void setJetLsb(double lsb)
Definition: CaloParams.h:161
std::string fullPath() const
Definition: FileInPath.cc:165
void setEgIsoAreaNrTowersPhi(unsigned iEgIsoAreaNrTowersPhi)
Definition: CaloParams.h:101
void setEgRelativeJetIsolationBarrelCut(double cutValue)
Definition: CaloParams.h:97
void setJetPUSType(std::string type)
Definition: CaloParams.h:164
void setTauRelativeJetIsolationLimit(double limit)
Definition: CaloParams.h:138
void setTowerNBitsRatio(int n)
Definition: CaloParams.h:52
void setRegionLsb(double lsb)
Definition: CaloParams.h:61
void setTowerNBitsE(int n)
Definition: CaloParams.h:50
void setTowerEncoding(bool doit)
Definition: CaloParams.h:53
void setTauNeighbourThreshold(double thresh)
Definition: CaloParams.h:135
void setRegionPUSParams(std::vector< double > params)
Definition: CaloParams.h:63
void setTauCalibrationLUTEndcapsB(std::shared_ptr< LUT > lut)
Definition: CaloParams.h:148
l1t::CaloParamsESProducer::~CaloParamsESProducer ( )

Definition at line 204 of file CaloParamsESProducer.cc.

205 {
206 
207  // do anything here that needs to be done at desctruction time
208  // (e.g. close files, deallocate resources etc.)
209 
210 }

Member Function Documentation

CaloParamsESProducer::ReturnType l1t::CaloParamsESProducer::produce ( const L1TCaloParamsRcd iRecord)

Definition at line 219 of file CaloParamsESProducer.cc.

220 {
221  using namespace edm::es;
222  boost::shared_ptr<CaloParams> pCaloParams ;
223 
224  pCaloParams = boost::shared_ptr< CaloParams >(new CaloParams(m_params));
225  return pCaloParams;
226 }

Member Data Documentation

std::string l1t::CaloParamsESProducer::m_label
private

Definition at line 55 of file CaloParamsESProducer.cc.

CaloParams l1t::CaloParamsESProducer::m_params
private

Definition at line 54 of file CaloParamsESProducer.cc.