CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
CSCL1TPLookupTableEP Class Reference
Inheritance diagram for CSCL1TPLookupTableEP:
edm::ESProducer edm::EventSetupRecordIntervalFinder edm::ESProductResolverFactoryProducer edm::eventsetup::ESProductResolverProvider

Public Member Functions

 CSCL1TPLookupTableEP (const edm::ParameterSet &)
 
std::unique_ptr< CSCL1TPLookupTableCCLUTproduceCCLUT (const CSCL1TPLookupTableCCLUTRcd &)
 
std::unique_ptr< CSCL1TPLookupTableME11ILTproduceME11ILT (const CSCL1TPLookupTableME11ILTRcd &)
 
std::unique_ptr< CSCL1TPLookupTableME21ILTproduceME21ILT (const CSCL1TPLookupTableME21ILTRcd &)
 
 ~CSCL1TPLookupTableEP () override
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
 ESProducer (const ESProducer &)=delete
 
 ESProducer (ESProducer &&)=delete
 
ESResolverIndex const * getTokenIndices (unsigned int iIndex) const
 
ESRecordIndex const * getTokenRecordIndices (unsigned int iIndex) const
 
bool hasMayConsumes () const noexcept
 
size_t numberOfTokenIndices (unsigned int iIndex) const
 
ESProduceroperator= (const ESProducer &)=delete
 
ESProduceroperator= (ESProducer &&)=delete
 
SerialTaskQueueChainqueue ()
 
template<typename Record >
std::optional< std::vector< ESResolverIndex > > updateFromMayConsumes (unsigned int iIndex, const Record &iRecord) const
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &) final
 
 ~ESProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::ESProductResolverFactoryProducer
 ESProductResolverFactoryProducer ()
 
 ESProductResolverFactoryProducer (const ESProductResolverFactoryProducer &)=delete
 
const ESProductResolverFactoryProduceroperator= (const ESProductResolverFactoryProducer &)=delete
 
 ~ESProductResolverFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::ESProductResolverProvider
void createKeyedResolvers (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
const ComponentDescriptiondescription () const
 
 ESProductResolverProvider ()
 
 ESProductResolverProvider (const ESProductResolverProvider &)=delete
 
void fillRecordsNotAllowingConcurrentIOVs (std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
 
virtual void initConcurrentIOVs (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
bool isUsingRecord (const EventSetupRecordKey &key) const
 
KeyedResolverskeyedResolvers (const EventSetupRecordKey &iRecordKey, unsigned int iovIndex=0)
 
const ESProductResolverProvideroperator= (const ESProductResolverProvider &)=delete
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~ESProductResolverProvider () noexcept(false)
 
- Public Member Functions inherited from edm::EventSetupRecordIntervalFinder
bool concurrentFinder () const
 
const eventsetup::ComponentDescriptiondescriptionForFinder () const
 
 EventSetupRecordIntervalFinder ()
 
 EventSetupRecordIntervalFinder (const EventSetupRecordIntervalFinder &)=delete
 
std::set< eventsetup::EventSetupRecordKeyfindingForRecords () const
 
const ValidityIntervalfindIntervalFor (const eventsetup::EventSetupRecordKey &, const IOVSyncValue &)
 
bool nonconcurrentAndIOVNeedsUpdate (const eventsetup::EventSetupRecordKey &key, const IOVSyncValue &syncValue) const
 
const EventSetupRecordIntervalFinderoperator= (const EventSetupRecordIntervalFinder &)=delete
 
void resetInterval (const eventsetup::EventSetupRecordKey &)
 
void setDescriptionForFinder (const eventsetup::ComponentDescription &iDescription)
 
virtual ~EventSetupRecordIntervalFinder () noexcept(false)
 

Protected Member Functions

void setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override
 
- Protected Member Functions inherited from edm::ESProducer
ESConsumesInfoconsumesInfoPushBackNew ()
 
unsigned int consumesInfoSize () const
 
template<typename CallbackT , typename TList , typename TRecord >
void registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel)
 
template<typename CallbackT , typename TRecord >
void registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>, const eventsetup::produce::Null *, const TRecord *, const es::Label &)
 
template<typename T >
auto setWhatProduced (T *iThis, const es::Label &iLabel={})
 
template<typename T >
auto setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
auto setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
auto setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord >
auto setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord , typename TDecorator >
auto setWhatProduced (T *iThis, TReturn(T ::*iMethod)(const TRecord &), const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename TFunc >
auto setWhatProduced (TFunc &&func, const es::Label &iLabel={})
 
template<typename TReturn , typename TRecord , typename TFunc , typename TDecorator >
ESConsumesCollectorT< TRecord > setWhatProduced (TFunc &&func, TDecorator &&iDec, const es::Label &iLabel={})
 
void usesResources (std::vector< std::string > const &)
 
- Protected Member Functions inherited from edm::ESProductResolverFactoryProducer
template<class TFactory >
void registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ESProductResolverFactoryBase > iFactory, const std::string &iLabel=std::string())
 
KeyedResolversVector registerResolvers (const EventSetupRecordKey &, unsigned int iovIndex) override
 
- Protected Member Functions inherited from edm::eventsetup::ESProductResolverProvider
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &key)
 
- Protected Member Functions inherited from edm::EventSetupRecordIntervalFinder
template<class T >
void findingRecord ()
 
void findingRecordWithKey (const eventsetup::EventSetupRecordKey &)
 

Private Member Functions

std::vector< unsigned > load (std::string fileName) const
 

Private Attributes

const edm::ParameterSet pset_
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::eventsetup::ESProductResolverProvider
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Types inherited from edm::ESProductResolverFactoryProducer
using EventSetupRecordKey = eventsetup::EventSetupRecordKey
 
- Protected Types inherited from edm::eventsetup::ESProductResolverProvider
using KeyedResolversVector = std::vector< std::pair< DataKey, std::shared_ptr< ESProductResolver > >>
 

Detailed Description

Definition at line 23 of file CSCL1TPLookupTableEP.cc.

Constructor & Destructor Documentation

◆ CSCL1TPLookupTableEP()

CSCL1TPLookupTableEP::CSCL1TPLookupTableEP ( const edm::ParameterSet pset)

Definition at line 42 of file CSCL1TPLookupTableEP.cc.

References produceCCLUT(), produceME11ILT(), produceME21ILT(), and edm::ESProducer::setWhatProduced().

42  : pset_(pset) {
46  findingRecord<CSCL1TPLookupTableCCLUTRcd>();
47  findingRecord<CSCL1TPLookupTableME11ILTRcd>();
48  findingRecord<CSCL1TPLookupTableME21ILTRcd>();
49 }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:166
const edm::ParameterSet pset_
std::unique_ptr< CSCL1TPLookupTableCCLUT > produceCCLUT(const CSCL1TPLookupTableCCLUTRcd &)
std::unique_ptr< CSCL1TPLookupTableME21ILT > produceME21ILT(const CSCL1TPLookupTableME21ILTRcd &)
std::unique_ptr< CSCL1TPLookupTableME11ILT > produceME11ILT(const CSCL1TPLookupTableME11ILTRcd &)

◆ ~CSCL1TPLookupTableEP()

CSCL1TPLookupTableEP::~CSCL1TPLookupTableEP ( )
inlineoverride

Definition at line 26 of file CSCL1TPLookupTableEP.cc.

26 {}

Member Function Documentation

◆ load()

std::vector< unsigned > CSCL1TPLookupTableEP::load ( std::string  fileName) const
private

Definition at line 277 of file CSCL1TPLookupTableEP.cc.

References mps_splice::entry, MillePedeFileConverter_cfg::fileName, spr::find(), contentValuesFiles::fullPath, mps_splice::line, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by MatrixToProcess.MatrixToProcess::getProcess(), MatrixToProcess.MatrixToProcess::listAll(), ConfigBuilder.ConfigBuilder::prepare_FILTER(), produceCCLUT(), produceME11ILT(), and produceME21ILT().

277  {
278  std::vector<unsigned> returnV;
279  std::ifstream fstream;
280  fstream.open(edm::FileInPath(fileName.c_str()).fullPath());
281  // empty file, return empty lut
282  if (!fstream.good()) {
283  fstream.close();
284  return returnV;
285  }
286 
288 
289  while (std::getline(fstream, line)) {
290  //ignore comments
291  line.erase(std::find(line.begin(), line.end(), '#'), line.end());
292  std::istringstream lineStream(line);
293  std::pair<unsigned, unsigned> entry;
294  while (lineStream >> entry.first >> entry.second) {
295  returnV.push_back(entry.second);
296  }
297  }
298  return returnV;
299 }
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19

◆ produceCCLUT()

std::unique_ptr< CSCL1TPLookupTableCCLUT > CSCL1TPLookupTableEP::produceCCLUT ( const CSCL1TPLookupTableCCLUTRcd )

Definition at line 58 of file CSCL1TPLookupTableEP.cc.

References edm::ParameterSet::getParameter(), mps_fire::i, load(), eostools::move(), and pset_.

Referenced by CSCL1TPLookupTableEP().

58  {
59  // make the LUT object
60  std::unique_ptr<CSCL1TPLookupTableCCLUT> lut = std::make_unique<CSCL1TPLookupTableCCLUT>();
61 
62  // get the text files
63  std::vector<std::string> positionLUTFiles_ = pset_.getParameter<std::vector<std::string>>("positionLUTFiles");
64  std::vector<std::string> slopeLUTFiles_ = pset_.getParameter<std::vector<std::string>>("slopeLUTFiles");
65 
66  std::unordered_map<unsigned, std::vector<unsigned>> cclutPosition;
67  std::unordered_map<unsigned, std::vector<unsigned>> cclutSlope;
68 
69  // read the text files and extract the data
70  for (int i = 0; i < 5; ++i) {
71  cclutPosition[i] = load(positionLUTFiles_[i]);
72  cclutSlope[i] = load(slopeLUTFiles_[i]);
73  }
74 
75  // set the data in the LUT object
76  lut->set_cclutPosition(std::move(cclutPosition));
77  lut->set_cclutSlope(std::move(cclutSlope));
78 
79  return lut;
80 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
const edm::ParameterSet pset_
std::vector< unsigned > load(std::string fileName) const
def move(src, dest)
Definition: eostools.py:511

◆ produceME11ILT()

std::unique_ptr< CSCL1TPLookupTableME11ILT > CSCL1TPLookupTableEP::produceME11ILT ( const CSCL1TPLookupTableME11ILTRcd )

Definition at line 82 of file CSCL1TPLookupTableEP.cc.

References edm::ParameterSet::getParameter(), load(), eostools::move(), and pset_.

Referenced by CSCL1TPLookupTableEP().

82  {
83  // make the LUT object
84  std::unique_ptr<CSCL1TPLookupTableME11ILT> lut = std::make_unique<CSCL1TPLookupTableME11ILT>();
85 
86  // get the text files
87  std::vector<std::string> padToEsME11aFiles_ = pset_.getParameter<std::vector<std::string>>("padToEsME11aFiles");
88  std::vector<std::string> padToEsME11bFiles_ = pset_.getParameter<std::vector<std::string>>("padToEsME11bFiles");
89 
90  std::vector<std::string> rollToMaxWgME11Files_ = pset_.getParameter<std::vector<std::string>>("rollToMaxWgME11Files");
91  std::vector<std::string> rollToMinWgME11Files_ = pset_.getParameter<std::vector<std::string>>("rollToMinWgME11Files");
92 
93  std::vector<std::string> gemCscSlopeCosiFiles_ = pset_.getParameter<std::vector<std::string>>("gemCscSlopeCosiFiles");
94  std::vector<std::string> gemCscSlopeCosiCorrectionFiles_ =
95  pset_.getParameter<std::vector<std::string>>("gemCscSlopeCosiCorrectionFiles");
96  std::vector<std::string> gemCscSlopeCorrectionFiles_ =
97  pset_.getParameter<std::vector<std::string>>("gemCscSlopeCorrectionFiles");
98 
99  std::vector<std::string> esDiffToSlopeME11aFiles_ =
100  pset_.getParameter<std::vector<std::string>>("esDiffToSlopeME11aFiles");
101  std::vector<std::string> esDiffToSlopeME11bFiles_ =
102  pset_.getParameter<std::vector<std::string>>("esDiffToSlopeME11bFiles");
103 
104  // read the text files and extract the data
105  auto GEM_pad_CSC_es_ME11a_even_ = load(padToEsME11aFiles_[0]);
106  auto GEM_pad_CSC_es_ME11a_odd_ = load(padToEsME11aFiles_[1]);
107  auto GEM_pad_CSC_es_ME11b_even_ = load(padToEsME11bFiles_[0]);
108  auto GEM_pad_CSC_es_ME11b_odd_ = load(padToEsME11bFiles_[1]);
109 
110  auto GEM_roll_CSC_min_wg_ME11_even_ = load(rollToMinWgME11Files_[0]);
111  auto GEM_roll_CSC_min_wg_ME11_odd_ = load(rollToMinWgME11Files_[1]);
112  auto GEM_roll_CSC_max_wg_ME11_even_ = load(rollToMaxWgME11Files_[0]);
113  auto GEM_roll_CSC_max_wg_ME11_odd_ = load(rollToMaxWgME11Files_[1]);
114 
115  auto CSC_slope_cosi_2to1_L1_ME11a_even_ = load(gemCscSlopeCosiFiles_[0]);
116  auto CSC_slope_cosi_2to1_L1_ME11a_odd_ = load(gemCscSlopeCosiFiles_[1]);
117  auto CSC_slope_cosi_3to1_L1_ME11a_even_ = load(gemCscSlopeCosiFiles_[2]);
118  auto CSC_slope_cosi_3to1_L1_ME11a_odd_ = load(gemCscSlopeCosiFiles_[3]);
119 
120  auto CSC_slope_cosi_2to1_L1_ME11b_even_ = load(gemCscSlopeCosiFiles_[4]);
121  auto CSC_slope_cosi_2to1_L1_ME11b_odd_ = load(gemCscSlopeCosiFiles_[5]);
122  auto CSC_slope_cosi_3to1_L1_ME11b_even_ = load(gemCscSlopeCosiFiles_[6]);
123  auto CSC_slope_cosi_3to1_L1_ME11b_odd_ = load(gemCscSlopeCosiFiles_[7]);
124 
125  auto CSC_slope_cosi_corr_L1_ME11a_even_ = load(gemCscSlopeCosiCorrectionFiles_[0]);
126  auto CSC_slope_cosi_corr_L1_ME11b_even_ = load(gemCscSlopeCosiCorrectionFiles_[1]);
127  auto CSC_slope_cosi_corr_L1_ME11a_odd_ = load(gemCscSlopeCosiCorrectionFiles_[3]);
128  auto CSC_slope_cosi_corr_L1_ME11b_odd_ = load(gemCscSlopeCosiCorrectionFiles_[4]);
129 
130  auto CSC_slope_corr_L1_ME11a_even_ = load(gemCscSlopeCorrectionFiles_[0]);
131  auto CSC_slope_corr_L1_ME11b_even_ = load(gemCscSlopeCorrectionFiles_[1]);
132  auto CSC_slope_corr_L1_ME11a_odd_ = load(gemCscSlopeCorrectionFiles_[3]);
133  auto CSC_slope_corr_L1_ME11b_odd_ = load(gemCscSlopeCorrectionFiles_[4]);
134  auto CSC_slope_corr_L2_ME11a_even_ = load(gemCscSlopeCorrectionFiles_[6]);
135  auto CSC_slope_corr_L2_ME11b_even_ = load(gemCscSlopeCorrectionFiles_[7]);
136  auto CSC_slope_corr_L2_ME11a_odd_ = load(gemCscSlopeCorrectionFiles_[9]);
137  auto CSC_slope_corr_L2_ME11b_odd_ = load(gemCscSlopeCorrectionFiles_[10]);
138 
139  auto es_diff_slope_L1_ME11a_even_ = load(esDiffToSlopeME11aFiles_[0]);
140  auto es_diff_slope_L1_ME11a_odd_ = load(esDiffToSlopeME11aFiles_[1]);
141  auto es_diff_slope_L2_ME11a_even_ = load(esDiffToSlopeME11aFiles_[2]);
142  auto es_diff_slope_L2_ME11a_odd_ = load(esDiffToSlopeME11aFiles_[3]);
143 
144  auto es_diff_slope_L1_ME11b_even_ = load(esDiffToSlopeME11bFiles_[0]);
145  auto es_diff_slope_L1_ME11b_odd_ = load(esDiffToSlopeME11bFiles_[1]);
146  auto es_diff_slope_L2_ME11b_even_ = load(esDiffToSlopeME11bFiles_[2]);
147  auto es_diff_slope_L2_ME11b_odd_ = load(esDiffToSlopeME11bFiles_[3]);
148 
149  // set the data in the LUT object
150  lut->set_GEM_pad_CSC_es_ME11b_even(std::move(GEM_pad_CSC_es_ME11b_even_));
151  lut->set_GEM_pad_CSC_es_ME11a_even(std::move(GEM_pad_CSC_es_ME11a_even_));
152  lut->set_GEM_pad_CSC_es_ME11b_odd(std::move(GEM_pad_CSC_es_ME11b_odd_));
153  lut->set_GEM_pad_CSC_es_ME11a_odd(std::move(GEM_pad_CSC_es_ME11a_odd_));
154 
155  lut->set_GEM_roll_CSC_min_wg_ME11_even(std::move(GEM_roll_CSC_min_wg_ME11_even_));
156  lut->set_GEM_roll_CSC_min_wg_ME11_odd(std::move(GEM_roll_CSC_min_wg_ME11_odd_));
157  lut->set_GEM_roll_CSC_max_wg_ME11_even(std::move(GEM_roll_CSC_max_wg_ME11_even_));
158  lut->set_GEM_roll_CSC_max_wg_ME11_odd(std::move(GEM_roll_CSC_max_wg_ME11_odd_));
159 
160  // GEM-CSC trigger: slope correction
161  lut->set_CSC_slope_cosi_2to1_L1_ME11a_even(std::move(CSC_slope_cosi_2to1_L1_ME11a_even_));
162  lut->set_CSC_slope_cosi_2to1_L1_ME11a_odd(std::move(CSC_slope_cosi_2to1_L1_ME11a_odd_));
163  lut->set_CSC_slope_cosi_3to1_L1_ME11a_even(std::move(CSC_slope_cosi_3to1_L1_ME11a_even_));
164  lut->set_CSC_slope_cosi_3to1_L1_ME11a_odd(std::move(CSC_slope_cosi_3to1_L1_ME11a_odd_));
165 
166  lut->set_CSC_slope_cosi_2to1_L1_ME11b_even(std::move(CSC_slope_cosi_2to1_L1_ME11b_even_));
167  lut->set_CSC_slope_cosi_2to1_L1_ME11b_odd(std::move(CSC_slope_cosi_2to1_L1_ME11b_odd_));
168  lut->set_CSC_slope_cosi_3to1_L1_ME11b_even(std::move(CSC_slope_cosi_3to1_L1_ME11b_even_));
169  lut->set_CSC_slope_cosi_3to1_L1_ME11b_odd(std::move(CSC_slope_cosi_3to1_L1_ME11b_odd_));
170 
171  lut->set_CSC_slope_corr_L1_ME11a_even(std::move(CSC_slope_corr_L1_ME11a_even_));
172  lut->set_CSC_slope_corr_L1_ME11a_odd(std::move(CSC_slope_corr_L1_ME11a_odd_));
173  lut->set_CSC_slope_corr_L1_ME11b_even(std::move(CSC_slope_corr_L1_ME11b_even_));
174  lut->set_CSC_slope_corr_L1_ME11b_odd(std::move(CSC_slope_corr_L1_ME11b_odd_));
175  lut->set_CSC_slope_corr_L2_ME11a_even(std::move(CSC_slope_corr_L2_ME11a_even_));
176  lut->set_CSC_slope_corr_L2_ME11a_odd(std::move(CSC_slope_corr_L2_ME11a_odd_));
177  lut->set_CSC_slope_corr_L2_ME11b_even(std::move(CSC_slope_corr_L2_ME11b_even_));
178  lut->set_CSC_slope_corr_L2_ME11b_odd(std::move(CSC_slope_corr_L2_ME11b_odd_));
179 
180  // GEM-CSC trigger: 1/8-strip difference to slope
181  lut->set_es_diff_slope_L1_ME11a_even(std::move(es_diff_slope_L1_ME11a_even_));
182  lut->set_es_diff_slope_L1_ME11a_odd(std::move(es_diff_slope_L1_ME11a_odd_));
183  lut->set_es_diff_slope_L2_ME11a_even(std::move(es_diff_slope_L2_ME11a_even_));
184  lut->set_es_diff_slope_L2_ME11a_odd(std::move(es_diff_slope_L2_ME11a_odd_));
185 
186  lut->set_es_diff_slope_L1_ME11b_even(std::move(es_diff_slope_L1_ME11b_even_));
187  lut->set_es_diff_slope_L1_ME11b_odd(std::move(es_diff_slope_L1_ME11b_odd_));
188  lut->set_es_diff_slope_L2_ME11b_even(std::move(es_diff_slope_L2_ME11b_even_));
189  lut->set_es_diff_slope_L2_ME11b_odd(std::move(es_diff_slope_L2_ME11b_odd_));
190 
191  return lut;
192 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
const edm::ParameterSet pset_
std::vector< unsigned > load(std::string fileName) const
def move(src, dest)
Definition: eostools.py:511

◆ produceME21ILT()

std::unique_ptr< CSCL1TPLookupTableME21ILT > CSCL1TPLookupTableEP::produceME21ILT ( const CSCL1TPLookupTableME21ILTRcd )

Definition at line 194 of file CSCL1TPLookupTableEP.cc.

References edm::ParameterSet::getParameter(), load(), eostools::move(), and pset_.

Referenced by CSCL1TPLookupTableEP().

194  {
195  // make the LUT object
196  std::unique_ptr<CSCL1TPLookupTableME21ILT> lut = std::make_unique<CSCL1TPLookupTableME21ILT>();
197 
198  // get the text files
199  std::vector<std::string> padToEsME21Files_ = pset_.getParameter<std::vector<std::string>>("padToEsME21Files");
200 
201  std::vector<std::string> rollToMaxWgME21Files_ = pset_.getParameter<std::vector<std::string>>("rollToMaxWgME21Files");
202  std::vector<std::string> rollToMinWgME21Files_ = pset_.getParameter<std::vector<std::string>>("rollToMinWgME21Files");
203 
204  std::vector<std::string> gemCscSlopeCosiFiles_ = pset_.getParameter<std::vector<std::string>>("gemCscSlopeCosiFiles");
205  std::vector<std::string> gemCscSlopeCosiCorrectionFiles_ =
206  pset_.getParameter<std::vector<std::string>>("gemCscSlopeCosiCorrectionFiles");
207  std::vector<std::string> gemCscSlopeCorrectionFiles_ =
208  pset_.getParameter<std::vector<std::string>>("gemCscSlopeCorrectionFiles");
209 
210  std::vector<std::string> esDiffToSlopeME21Files_ =
211  pset_.getParameter<std::vector<std::string>>("esDiffToSlopeME21Files");
212 
213  // read the text files and extract the data
214  auto GEM_pad_CSC_es_ME21_even_ = load(padToEsME21Files_[0]);
215  auto GEM_pad_CSC_es_ME21_odd_ = load(padToEsME21Files_[1]);
216 
217  auto GEM_roll_L1_CSC_min_wg_ME21_even_ = load(rollToMinWgME21Files_[0]);
218  auto GEM_roll_L1_CSC_min_wg_ME21_odd_ = load(rollToMinWgME21Files_[1]);
219  auto GEM_roll_L2_CSC_min_wg_ME21_even_ = load(rollToMinWgME21Files_[2]);
220  auto GEM_roll_L2_CSC_min_wg_ME21_odd_ = load(rollToMinWgME21Files_[3]);
221 
222  auto GEM_roll_L1_CSC_max_wg_ME21_even_ = load(rollToMaxWgME21Files_[0]);
223  auto GEM_roll_L1_CSC_max_wg_ME21_odd_ = load(rollToMaxWgME21Files_[1]);
224  auto GEM_roll_L2_CSC_max_wg_ME21_even_ = load(rollToMaxWgME21Files_[2]);
225  auto GEM_roll_L2_CSC_max_wg_ME21_odd_ = load(rollToMaxWgME21Files_[3]);
226 
227  auto es_diff_slope_L1_ME21_even_ = load(esDiffToSlopeME21Files_[0]);
228  auto es_diff_slope_L1_ME21_odd_ = load(esDiffToSlopeME21Files_[1]);
229  auto es_diff_slope_L2_ME21_even_ = load(esDiffToSlopeME21Files_[2]);
230  auto es_diff_slope_L2_ME21_odd_ = load(esDiffToSlopeME21Files_[3]);
231 
232  auto CSC_slope_cosi_2to1_L1_ME21_even_ = load(gemCscSlopeCosiFiles_[8]);
233  auto CSC_slope_cosi_2to1_L1_ME21_odd_ = load(gemCscSlopeCosiFiles_[9]);
234  auto CSC_slope_cosi_3to1_L1_ME21_even_ = load(gemCscSlopeCosiFiles_[10]);
235  auto CSC_slope_cosi_3to1_L1_ME21_odd_ = load(gemCscSlopeCosiFiles_[11]);
236 
237  auto CSC_slope_cosi_corr_L1_ME21_even_ = load(gemCscSlopeCosiCorrectionFiles_[2]);
238  auto CSC_slope_cosi_corr_L1_ME21_odd_ = load(gemCscSlopeCosiCorrectionFiles_[5]);
239 
240  auto CSC_slope_corr_L1_ME21_even_ = load(gemCscSlopeCorrectionFiles_[2]);
241  auto CSC_slope_corr_L1_ME21_odd_ = load(gemCscSlopeCorrectionFiles_[5]);
242  auto CSC_slope_corr_L2_ME21_even_ = load(gemCscSlopeCorrectionFiles_[8]);
243  auto CSC_slope_corr_L2_ME21_odd_ = load(gemCscSlopeCorrectionFiles_[11]);
244 
245  // set the data in the LUT object
246  lut->set_GEM_pad_CSC_es_ME21_even(std::move(GEM_pad_CSC_es_ME21_even_));
247  lut->set_GEM_pad_CSC_es_ME21_odd(std::move(GEM_pad_CSC_es_ME21_odd_));
248 
249  lut->set_GEM_roll_L1_CSC_min_wg_ME21_even(std::move(GEM_roll_L1_CSC_min_wg_ME21_even_));
250  lut->set_GEM_roll_L1_CSC_max_wg_ME21_even(std::move(GEM_roll_L1_CSC_max_wg_ME21_even_));
251  lut->set_GEM_roll_L1_CSC_min_wg_ME21_odd(std::move(GEM_roll_L1_CSC_min_wg_ME21_odd_));
252  lut->set_GEM_roll_L1_CSC_max_wg_ME21_odd(std::move(GEM_roll_L1_CSC_max_wg_ME21_odd_));
253 
254  lut->set_GEM_roll_L2_CSC_min_wg_ME21_even(std::move(GEM_roll_L2_CSC_min_wg_ME21_even_));
255  lut->set_GEM_roll_L2_CSC_max_wg_ME21_even(std::move(GEM_roll_L2_CSC_max_wg_ME21_even_));
256  lut->set_GEM_roll_L2_CSC_min_wg_ME21_odd(std::move(GEM_roll_L2_CSC_min_wg_ME21_odd_));
257  lut->set_GEM_roll_L2_CSC_max_wg_ME21_odd(std::move(GEM_roll_L2_CSC_max_wg_ME21_odd_));
258 
259  lut->set_es_diff_slope_L1_ME21_even(std::move(es_diff_slope_L1_ME21_even_));
260  lut->set_es_diff_slope_L1_ME21_odd(std::move(es_diff_slope_L1_ME21_odd_));
261  lut->set_es_diff_slope_L2_ME21_even(std::move(es_diff_slope_L2_ME21_even_));
262  lut->set_es_diff_slope_L2_ME21_odd(std::move(es_diff_slope_L2_ME21_odd_));
263 
264  lut->set_CSC_slope_cosi_2to1_L1_ME21_even(std::move(CSC_slope_cosi_2to1_L1_ME21_even_));
265  lut->set_CSC_slope_cosi_2to1_L1_ME21_odd(std::move(CSC_slope_cosi_2to1_L1_ME21_odd_));
266  lut->set_CSC_slope_cosi_3to1_L1_ME21_even(std::move(CSC_slope_cosi_3to1_L1_ME21_even_));
267  lut->set_CSC_slope_cosi_3to1_L1_ME21_odd(std::move(CSC_slope_cosi_3to1_L1_ME21_odd_));
268 
269  lut->set_CSC_slope_corr_L1_ME21_even(std::move(CSC_slope_corr_L1_ME21_even_));
270  lut->set_CSC_slope_corr_L1_ME21_odd(std::move(CSC_slope_corr_L1_ME21_odd_));
271  lut->set_CSC_slope_corr_L2_ME21_even(std::move(CSC_slope_corr_L2_ME21_even_));
272  lut->set_CSC_slope_corr_L2_ME21_odd(std::move(CSC_slope_corr_L2_ME21_odd_));
273 
274  return lut;
275 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
const edm::ParameterSet pset_
std::vector< unsigned > load(std::string fileName) const
def move(src, dest)
Definition: eostools.py:511

◆ setIntervalFor()

void CSCL1TPLookupTableEP::setIntervalFor ( const edm::eventsetup::EventSetupRecordKey iKey,
const edm::IOVSyncValue iosv,
edm::ValidityInterval oValidity 
)
overrideprotectedvirtual

Implements edm::EventSetupRecordIntervalFinder.

Definition at line 51 of file CSCL1TPLookupTableEP.cc.

References edm::IOVSyncValue::beginOfTime(), edm::IOVSyncValue::endOfTime(), and infinity.

53  {
55  oValidity = infinity;
56 }
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:82
static const IOVSyncValue & beginOfTime()
Definition: IOVSyncValue.cc:88
const double infinity

Member Data Documentation

◆ pset_

const edm::ParameterSet CSCL1TPLookupTableEP::pset_
private

Definition at line 39 of file CSCL1TPLookupTableEP.cc.

Referenced by produceCCLUT(), produceME11ILT(), and produceME21ILT().