CMS 3D CMS Logo

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

#include <L1RCTLookupTables.h>

Public Member Functions

bool activityBit (float ecal, float hcal) const
 
unsigned int eGammaETCode (float ecal, float hcal, int iAbsEta) const
 
unsigned int emRank (unsigned short energy) const
 
bool hOeFGVetoBit (float ecal, float hcal, bool fgbit) const
 
unsigned int jetMETETCode (float ecal, float hcal, int iAbsEta) const
 
 L1RCTLookupTables ()
 
unsigned int lookup (unsigned short ecalInput, unsigned short hcalInput, unsigned short fgbit, unsigned short crtNo, unsigned short crdNo, unsigned short twrNo) const
 
unsigned int lookup (unsigned short hfInput, unsigned short crtNo, unsigned short crdNo, unsigned short twrNo) const
 
const L1RCTParametersrctParameters () const
 
void setChannelMask (const L1RCTChannelMask *channelMask)
 
void setEcalScale (const L1CaloEcalScale *ecalScale)
 
void setHcalScale (const L1CaloHcalScale *hcalScale)
 
void setL1CaloEtScale (const L1CaloEtScale *etScale)
 
void setNoisyChannelMask (const L1RCTNoisyChannelMask *channelMask)
 
void setRCTParameters (const L1RCTParameters *rctParameters)
 

Private Member Functions

float convertEcal (unsigned short ecal, unsigned short iAbsEta, short sign) const
 
float convertHcal (unsigned short hcal, unsigned short iAbsEta, short sign) const
 
unsigned long convertToInteger (float et, float lsb, int precision) const
 

Private Attributes

const L1RCTChannelMaskchannelMask_
 
const L1CaloEcalScaleecalScale_
 
const L1CaloEtScaleetScale_
 
const L1CaloHcalScalehcalScale_
 
const L1RCTNoisyChannelMasknoisyChannelMask_
 
const L1RCTParametersrctParameters_
 

Detailed Description

Definition at line 11 of file L1RCTLookupTables.h.

Constructor & Destructor Documentation

L1RCTLookupTables::L1RCTLookupTables ( )
inline

Definition at line 17 of file L1RCTLookupTables.h.

const L1RCTChannelMask * channelMask_
const L1CaloEcalScale * ecalScale_
const L1RCTParameters * rctParameters_
const L1CaloHcalScale * hcalScale_
const L1CaloEtScale * etScale_

Member Function Documentation

bool L1RCTLookupTables::activityBit ( float  ecal,
float  hcal 
) const

Definition at line 234 of file L1RCTLookupTables.cc.

References L1RCTParameters::eActivityCut(), L1RCTParameters::eMaxForHoECut(), L1RCTParameters::eMinForHoECut(), edm::hlt::Exception, L1RCTParameters::hActivityCut(), L1RCTParameters::hOeCut(), and rctParameters_.

Referenced by lookup().

235 {
236  // Redefined for upgrade as EM activity only
237  if(rctParameters_ == 0)
238  throw cms::Exception("L1RCTParameters Invalid")
239  << "L1RCTParameters should be set every event" << rctParameters_;
240  bool aBit = false;
242  // For RCT operations HoE cut and tauVeto are used
243  aBit = ((ecal > rctParameters_->eActivityCut()) ||
245  }
246  else {
247  // We redefine tauVeto() for upgrade as EM activity only --
248  // both EG and Tau make it through the EIC and JSC to CTP cards
249  // In the CTP card we want to rechannel EG/Tau candidates to EG and Tau
250  if(ecal > rctParameters_->eActivityCut()) {
251  if((hcal/ecal) < rctParameters_->hOeCut()) {
252  aBit = true;
253  }
254  }
255  }
256  return aBit;
257 }
double eActivityCut() const
double hActivityCut() const
double eMinForHoECut() const
const L1RCTParameters * rctParameters_
double hOeCut() const
double eMaxForHoECut() const
float L1RCTLookupTables::convertEcal ( unsigned short  ecal,
unsigned short  iAbsEta,
short  sign 
) const
private

Definition at line 273 of file L1RCTLookupTables.cc.

References patCandidatesForDimuonsSequences_cff::ecal, ecalScale_, L1RCTParameters::eGammaLSB(), L1CaloEcalScale::et(), and rctParameters_.

Referenced by lookup().

274 {
275  if(ecalScale_)
276  {
277  //std::cout << "[luts] energy " << ecal << " sign " << sign
278  //<< " iAbsEta " << iAbsEta << " iPhi " << iPhi << std::endl;
279  float dummy = 0;
280  dummy = float (ecalScale_->et( ecal, iAbsEta, sign ));
281  /*
282  if (ecal > 0)
283  {
284  std::cout << "[luts] ecal converted from " << ecal << " to "
285  << dummy << " with iAbsEta " << iAbsEta << std::endl;
286  }
287  */
288  return dummy;
289  }
290  //else if(rctParameters_ == 0)
291  // {
292  // throw cms::Exception("L1RCTParameters Invalid")
293  // << "L1RCTParameters should be set every event" << rctParameters_;
294  // }
295  else
296  {
297  return ((float) ecal) * rctParameters_->eGammaLSB();
298  }
299 }
double sign(double x)
double et(unsigned short rank, unsigned short eta, short etaSign) const
convert from rank to physically meaningful quantity
const L1CaloEcalScale * ecalScale_
const L1RCTParameters * rctParameters_
double eGammaLSB() const
float L1RCTLookupTables::convertHcal ( unsigned short  hcal,
unsigned short  iAbsEta,
short  sign 
) const
private

Definition at line 302 of file L1RCTLookupTables.cc.

References L1CaloHcalScale::et(), patCandidatesForDimuonsSequences_cff::hcal, hcalScale_, L1RCTParameters::jetMETLSB(), and rctParameters_.

Referenced by lookup().

303 {
304  if (hcalScale_ != 0)
305  {
306  return (hcalScale_->et( hcal, iAbsEta, sign ));
307  }
308  else
309  {
310  // edm::LogInfo("L1RegionalCaloTrigger")
311  // << "CaloTPGTranscoder was not used" << std::endl;
312  return ((float) hcal) * rctParameters_->jetMETLSB();
313  }
314 }
double sign(double x)
double et(unsigned short rank, unsigned short eta, short etaSign) const
convert from rank to physically meaningful quantity
double jetMETLSB() const
const L1RCTParameters * rctParameters_
const L1CaloHcalScale * hcalScale_
unsigned long L1RCTLookupTables::convertToInteger ( float  et,
float  lsb,
int  precision 
) const
private

Definition at line 317 of file L1RCTLookupTables.cc.

Referenced by eGammaETCode(), jetMETETCode(), and lookup().

320 {
321  unsigned long etBits = (unsigned long)(et/lsb);
322  unsigned long maxValue = (1 << precision) - 1;
323  if(etBits > maxValue)
324  return maxValue;
325  else
326  return etBits;
327 }
unsigned int L1RCTLookupTables::eGammaETCode ( float  ecal,
float  hcal,
int  iAbsEta 
) const

Definition at line 329 of file L1RCTLookupTables.cc.

References convertToInteger(), L1RCTParameters::eGammaLSB(), L1RCTParameters::EGammaTPGSum(), edm::hlt::Exception, and rctParameters_.

Referenced by lookup().

330 {
331  if(rctParameters_ == 0)
332  throw cms::Exception("L1RCTParameters Invalid")
333  << "L1RCTParameters should be set every event" << rctParameters_;
334  float etLinear = rctParameters_->EGammaTPGSum(ecal,hcal,iAbsEta);
335  return convertToInteger(etLinear, rctParameters_->eGammaLSB(), 7);
336 }
unsigned long convertToInteger(float et, float lsb, int precision) const
float EGammaTPGSum(const float &ecal, const float &hcal, const unsigned &iAbsEta) const
const L1RCTParameters * rctParameters_
double eGammaLSB() const
unsigned int L1RCTLookupTables::emRank ( unsigned short  energy) const

Definition at line 260 of file L1RCTLookupTables.cc.

References relval_parameters_module::energy, etScale_, and L1CaloEtScale::rank().

Referenced by L1RCTJetSummaryCard::asicCompare(), L1RCT::getIsolatedEGObjects(), L1RCT::getNonisolatedEGObjects(), and L1RCTLutWriter::writeEicLutFile().

261 {
262  if(etScale_)
263  {
264  return etScale_->rank(energy);
265  }
266  else
267  // edm::LogInfo("L1RegionalCaloTrigger")
268  // << "CaloEtScale was not used - energy instead of rank" << std::endl;
269  return energy;
270 }
uint16_t rank(const uint16_t linear) const
convert from linear Et scale to rank scale
const L1CaloEtScale * etScale_
bool L1RCTLookupTables::hOeFGVetoBit ( float  ecal,
float  hcal,
bool  fgbit 
) const

Definition at line 210 of file L1RCTLookupTables.cc.

References L1RCTParameters::eMaxForFGCut(), L1RCTParameters::eMaxForHoECut(), L1RCTParameters::eMinForFGCut(), L1RCTParameters::eMinForHoECut(), edm::hlt::Exception, L1RCTParameters::hMinForHoECut(), L1RCTParameters::hOeCut(), and rctParameters_.

Referenced by lookup().

211 {
212  if(rctParameters_ == 0)
213  throw cms::Exception("L1RCTParameters Invalid")
214  << "L1RCTParameters should be set every event" << rctParameters_;
215  bool veto = false;
216  if(ecal > rctParameters_->eMinForFGCut() &&
218  {
219  if(fgbit) veto = true;
220  }
221  if(ecal >= rctParameters_->eMinForHoECut() &&
223  {
224  if((hcal / ecal) > rctParameters_->hOeCut()) veto = true;
225  }
226  // else
227  if (ecal < rctParameters_->eMinForHoECut())
228  {
229  if(hcal >= rctParameters_->hMinForHoECut()) veto = true; // Changed from eMinForHoECut() - JLL 2008-Feb-13
230  }
231  return veto;
232 }
double eMaxForFGCut() const
double eMinForFGCut() const
double eMinForHoECut() const
const L1RCTParameters * rctParameters_
double hOeCut() const
double eMaxForHoECut() const
double hMinForHoECut() const
unsigned int L1RCTLookupTables::jetMETETCode ( float  ecal,
float  hcal,
int  iAbsEta 
) const

Definition at line 338 of file L1RCTLookupTables.cc.

References convertToInteger(), edm::hlt::Exception, L1RCTParameters::jetMETLSB(), L1RCTParameters::JetMETTPGSum(), and rctParameters_.

Referenced by lookup().

339 {
340  if(rctParameters_ == 0)
341  throw cms::Exception("L1RCTParameters Invalid")
342  << "L1RCTParameters should be set every event" << rctParameters_;
343  float etLinear = rctParameters_->JetMETTPGSum(ecal,hcal,iAbsEta);
344  return convertToInteger(etLinear, rctParameters_->jetMETLSB(), 9);
345 }
unsigned long convertToInteger(float et, float lsb, int precision) const
double jetMETLSB() const
const L1RCTParameters * rctParameters_
float JetMETTPGSum(const float &ecal, const float &hcal, const unsigned &iAbsEta) const
unsigned int L1RCTLookupTables::lookup ( unsigned short  ecalInput,
unsigned short  hcalInput,
unsigned short  fgbit,
unsigned short  crtNo,
unsigned short  crdNo,
unsigned short  twrNo 
) const

Definition at line 21 of file L1RCTLookupTables.cc.

References funct::abs(), activityBit(), L1RCTParameters::calcIEta(), L1RCTParameters::calcIPhi(), channelMask_, convertEcal(), convertHcal(), patCandidatesForDimuonsSequences_cff::ecal, L1RCTChannelMask::ecalMask, L1RCTNoisyChannelMask::ecalMask, L1RCTParameters::eGammaECalScaleFactors(), eGammaETCode(), L1RCTParameters::eGammaHCalScaleFactors(), edm::hlt::Exception, patCandidatesForDimuonsSequences_cff::hcal, L1RCTChannelMask::hcalMask, L1RCTNoisyChannelMask::hcalMask, L1RCTNoisyChannelMask::hcalThreshold, hOeFGVetoBit(), L1RCTParameters::jetMETECalScaleFactors(), jetMETETCode(), L1RCTParameters::jetMETHCalScaleFactors(), L1RCTParameters::noiseVetoHB(), L1RCTParameters::noiseVetoHEminus(), L1RCTParameters::noiseVetoHEplus(), noisyChannelMask_, convertSQLitetoXML_cfg::output, rctParameters_, and jetcorrextractor::sign().

Referenced by L1RCTSaveInput::analyze(), L1RCTJetSummaryCard::fillHFRegionSums(), L1RCTReceiverCard::fillInput(), L1RCTInputProducer::produce(), and L1RCTLutWriter::writeJscLutFile().

27 {
28  if(rctParameters_ == 0)
29  throw cms::Exception("L1RCTParameters Invalid")
30  << "L1RCTParameters should be set every event" << rctParameters_;
31  if(channelMask_ == 0)
32  throw cms::Exception("L1RCTChannelMask Invalid")
33  << "L1RCTChannelMask should be set every event" << channelMask_;
34  if(noisyChannelMask_ == 0)
35  throw cms::Exception("L1RCTNoisyChannelMask Invalid")
36  << "L1RCTNoisyChannelMask should be set every event" << noisyChannelMask_;
37  if(ecalInput > 0xFF)
38  throw cms::Exception("Invalid Data")
39  << "ECAL compressedET should be less than 0xFF, is " << ecalInput;
40  if(hcalInput > 0xFF)
41  throw cms::Exception("Invalid Data")
42  << "HCAL compressedET should be less than 0xFF, is " << hcalInput;
43  if(fgbit > 1)
44  throw cms::Exception("Invalid Data")
45  << "ECAL finegrain should be a single bit, is " << fgbit;
46  short iEta = (short) rctParameters_->calcIEta(crtNo, crdNo, twrNo);
47  unsigned short iAbsEta = (unsigned short) abs(iEta);
48  short sign = iEta/iAbsEta;
49  unsigned short iPhi = rctParameters_->calcIPhi(crtNo, crdNo, twrNo);
50  unsigned short phiSide = (iPhi/4)%2;
51  if(iAbsEta < 1 || iAbsEta > 28)
52  throw cms::Exception("Invalid Data")
53  << "1 <= |IEta| <= 28, is " << iAbsEta;
54 
55 
56  //Pre Input bits
57  unsigned short ecalAfterMask=0;
58  unsigned short hcalAfterMask=0;
59 
60 
61  // using channel mask to mask off ecal channels
62  //Mike: Introducing the hot channel mask
63  //If the Et is above the threshold then mask it as well
64 
65 
66 
67  float ecalBeforeMask = convertEcal(ecalInput, iAbsEta, sign);
68 
69 
70  bool resetECAL = (channelMask_->ecalMask[crtNo][phiSide][iAbsEta-1]) || //channel mask
71  (noisyChannelMask_->ecalMask[crtNo][phiSide][iAbsEta-1] &&
72  ecalBeforeMask<noisyChannelMask_->ecalThreshold)||//hot mask
73  (rctParameters_->eGammaECalScaleFactors()[iAbsEta-1] == 0.&&
74  rctParameters_->jetMETECalScaleFactors()[iAbsEta-1] == 0.);
75 
76 
77 
78  if (resetECAL) {
79  ecalAfterMask=0;
80  }
81  else {
82  ecalAfterMask=ecalInput;
83  }
84 
85  float ecal = convertEcal(ecalAfterMask, iAbsEta, sign);
86 
87 
88  // masking off hcal for channels in channel mask
89  float hcalBeforeMask = convertHcal(hcalInput, iAbsEta, sign);
90 
91  bool resetHCAL = channelMask_->hcalMask[crtNo][phiSide][iAbsEta-1]||
92  (noisyChannelMask_->hcalMask[crtNo][phiSide][iAbsEta-1] &&
93  hcalBeforeMask<noisyChannelMask_->hcalThreshold)||//hot mask
94  (rctParameters_->eGammaHCalScaleFactors()[iAbsEta-1] == 0.&&
95  rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1] == 0.);
96 
97  if (resetHCAL) {
98  hcalAfterMask=0;
99  }
100  else {
101  hcalAfterMask=hcalInput;
102  }
103 
104  float hcal = convertHcal(hcalAfterMask, iAbsEta, sign);
105 
106  unsigned long etIn7Bits;
107  unsigned long etIn9Bits;
108 
109  if((ecalAfterMask == 0 && hcalAfterMask > 0) &&
110  ((rctParameters_->noiseVetoHB() && iAbsEta > 0 && iAbsEta < 18)
111  || (rctParameters_->noiseVetoHEplus() && iAbsEta>17 && crtNo>8)
112  || (rctParameters_->noiseVetoHEminus() && iAbsEta>17 && crtNo<9)))
113  {
114  etIn7Bits = 0;
115  etIn9Bits = 0;
116  }
117  else
118  {
119  etIn7Bits = eGammaETCode(ecal, hcal, iAbsEta);
120  etIn9Bits = jetMETETCode(ecal, hcal, iAbsEta);
121  }
122  // Saturated input towers cause tower ET pegging at the highest value
123  if((ecalAfterMask == 0xFF &&
124  rctParameters_->eGammaECalScaleFactors()[iAbsEta-1] != 0. )
125  || (hcalAfterMask == 0xFF &&
126  rctParameters_->eGammaHCalScaleFactors()[iAbsEta-1] != 0. )
127  )
128  {
129  etIn7Bits = 0x7F; // egamma path
130  }
131  if((ecalAfterMask == 0xFF &&
132  rctParameters_->jetMETECalScaleFactors()[iAbsEta-1] != 0. )
133  || (hcalAfterMask == 0xFF &&
134  rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1] != 0. ))
135  {
136  etIn9Bits = 0x1FF; // sums path
137  }
138 
139  unsigned long shiftEtIn9Bits = etIn9Bits<<8;
140  unsigned long shiftHE_FGBit = hOeFGVetoBit(ecal, hcal, fgbit)<<7;
141  unsigned long shiftActivityBit = 0;
142  if ( rctParameters_->jetMETECalScaleFactors()[iAbsEta-1] == 0.
143  && rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1] == 0. )
144  {
145  // do nothing, it's already zero
146  }
147  else if (rctParameters_->jetMETECalScaleFactors()[iAbsEta-1] == 0. )
148  {
149  shiftActivityBit = activityBit(0., hcal)<<17;
150  }
151  else if (rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1] == 0. )
152  {
153  shiftActivityBit = activityBit(ecal, 0.)<<17;
154  }
155  else
156  {
157  shiftActivityBit = activityBit(ecal, hcal)<<17;
158  }
159  unsigned long output=etIn7Bits+shiftHE_FGBit+shiftEtIn9Bits+shiftActivityBit;
160  return output;
161 }
bool hOeFGVetoBit(float ecal, float hcal, bool fgbit) const
const std::vector< double > & eGammaHCalScaleFactors() const
const std::vector< double > & jetMETHCalScaleFactors() const
const std::vector< double > & eGammaECalScaleFactors() const
short calcIEta(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
double sign(double x)
bool noiseVetoHEminus() const
bool ecalMask[18][2][28]
const L1RCTChannelMask * channelMask_
unsigned int eGammaETCode(float ecal, float hcal, int iAbsEta) const
unsigned int jetMETETCode(float ecal, float hcal, int iAbsEta) const
const L1RCTNoisyChannelMask * noisyChannelMask_
bool noiseVetoHEplus() const
const std::vector< double > & jetMETECalScaleFactors() const
float convertHcal(unsigned short hcal, unsigned short iAbsEta, short sign) const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
bool noiseVetoHB() const
unsigned short calcIPhi(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
const L1RCTParameters * rctParameters_
bool activityBit(float ecal, float hcal) const
bool hcalMask[18][2][28]
float convertEcal(unsigned short ecal, unsigned short iAbsEta, short sign) const
unsigned int L1RCTLookupTables::lookup ( unsigned short  hfInput,
unsigned short  crtNo,
unsigned short  crdNo,
unsigned short  twrNo 
) const

Definition at line 163 of file L1RCTLookupTables.cc.

References funct::abs(), L1RCTParameters::calcIEta(), channelMask_, convertHcal(), convertToInteger(), edm::hlt::Exception, L1RCTChannelMask::hfMask, L1RCTNoisyChannelMask::hfMask, L1RCTParameters::jetMETHCalScaleFactors(), L1RCTParameters::jetMETLSB(), noisyChannelMask_, rctParameters_, query::result, and jetcorrextractor::sign().

168 {
169  if(rctParameters_ == 0)
170  throw cms::Exception("L1RCTParameters Invalid")
171  << "L1RCTParameters should be set every event" << rctParameters_;
172  if(channelMask_ == 0)
173  throw cms::Exception("L1RCTChannelMask Invalid")
174  << "L1RCTChannelMask should be set every event" << channelMask_;
175  if(hfInput > 0xFF)
176  throw cms::Exception("Invalid Data")
177  << "HF compressedET should be less than 0xFF, is " << hfInput;
178  short iEta = rctParameters_->calcIEta(crtNo, crdNo, twrNo);
179  unsigned short iAbsEta = abs(iEta);
180  short sign = (iEta/iAbsEta);
181  unsigned short phiSide = twrNo/4;
182  if(iAbsEta < 29 || iAbsEta > 32)
183  throw cms::Exception("Invalid Data")
184  << "29 <= |iEta| <= 32, is " << iAbsEta;
185 
186  float et = convertHcal(hfInput, iAbsEta, sign);;
187 
188 
189 
190  if (channelMask_->hfMask[crtNo][phiSide][iAbsEta-29]||
191  (noisyChannelMask_->hfMask[crtNo][phiSide][iAbsEta-29]&&
192  et<noisyChannelMask_->hfThreshold))
193  {
194  et = 0;
195  }
196 
197  //cout << (int) rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1] << endl;
198 
199  float scalehf = 1.;
200  if(rctParameters_->jetMETHCalScaleFactors().size()==32){
201  scalehf = (float) rctParameters_->jetMETHCalScaleFactors()[iAbsEta-1];
202  } // The max eta for the various scale factors is 32, check to see if used.
203 
204  et=scalehf*et; // Allow for scaling the HF as well e.g. zero out if needed
205 
206  unsigned int result = convertToInteger(et, rctParameters_->jetMETLSB(), 8);
207  return result;
208 }
const std::vector< double > & jetMETHCalScaleFactors() const
short calcIEta(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
double sign(double x)
const L1RCTChannelMask * channelMask_
unsigned long convertToInteger(float et, float lsb, int precision) const
const L1RCTNoisyChannelMask * noisyChannelMask_
float convertHcal(unsigned short hcal, unsigned short iAbsEta, short sign) const
double jetMETLSB() const
tuple result
Definition: query.py:137
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
const L1RCTParameters * rctParameters_
bool hfMask[18][2][4]
const L1RCTParameters* L1RCTLookupTables::rctParameters ( ) const
inline
void L1RCTLookupTables::setChannelMask ( const L1RCTChannelMask channelMask)
inline

Definition at line 27 of file L1RCTLookupTables.h.

References channelMask_.

Referenced by L1RCTSaveInput::analyze(), L1RCTLutWriter::analyze(), L1RCTInputProducer::produce(), and L1RCTProducer::updateFedVector().

28  {
29  channelMask_ = channelMask;
30  }
const L1RCTChannelMask * channelMask_
void L1RCTLookupTables::setEcalScale ( const L1CaloEcalScale ecalScale)
inline

Definition at line 47 of file L1RCTLookupTables.h.

References ecalScale_.

Referenced by L1RCTSaveInput::analyze(), L1RCTLutWriter::analyze(), L1RCTInputProducer::produce(), and L1RCTProducer::updateConfiguration().

48  {
49  ecalScale_ = ecalScale;
50  }
const L1CaloEcalScale * ecalScale_
void L1RCTLookupTables::setHcalScale ( const L1CaloHcalScale hcalScale)
inline

Definition at line 37 of file L1RCTLookupTables.h.

References hcalScale_.

Referenced by L1RCTSaveInput::analyze(), L1RCTLutWriter::analyze(), L1RCTInputProducer::produce(), and L1RCTProducer::updateConfiguration().

38  {
39  hcalScale_ = hcalScale;
40  }
const L1CaloHcalScale * hcalScale_
void L1RCTLookupTables::setL1CaloEtScale ( const L1CaloEtScale etScale)
inline

Definition at line 42 of file L1RCTLookupTables.h.

References etScale_.

Referenced by L1RCTSaveInput::analyze(), L1RCTLutWriter::analyze(), L1RCTInputProducer::produce(), and L1RCTProducer::updateConfiguration().

43  {
44  etScale_ = etScale;
45  }
const L1CaloEtScale * etScale_
void L1RCTLookupTables::setNoisyChannelMask ( const L1RCTNoisyChannelMask channelMask)
inline

Definition at line 31 of file L1RCTLookupTables.h.

References noisyChannelMask_.

Referenced by L1RCTLutWriter::analyze(), and L1RCTProducer::updateFedVector().

32  {
33  noisyChannelMask_ = channelMask;
34  }
const L1RCTNoisyChannelMask * noisyChannelMask_
void L1RCTLookupTables::setRCTParameters ( const L1RCTParameters rctParameters)
inline

Member Data Documentation

const L1RCTChannelMask* L1RCTLookupTables::channelMask_
private

Definition at line 83 of file L1RCTLookupTables.h.

Referenced by lookup(), and setChannelMask().

const L1CaloEcalScale* L1RCTLookupTables::ecalScale_
private

Definition at line 85 of file L1RCTLookupTables.h.

Referenced by convertEcal(), and setEcalScale().

const L1CaloEtScale* L1RCTLookupTables::etScale_
private

Definition at line 87 of file L1RCTLookupTables.h.

Referenced by emRank(), and setL1CaloEtScale().

const L1CaloHcalScale* L1RCTLookupTables::hcalScale_
private

Definition at line 86 of file L1RCTLookupTables.h.

Referenced by convertHcal(), and setHcalScale().

const L1RCTNoisyChannelMask* L1RCTLookupTables::noisyChannelMask_
private

Definition at line 84 of file L1RCTLookupTables.h.

Referenced by lookup(), and setNoisyChannelMask().

const L1RCTParameters* L1RCTLookupTables::rctParameters_
private