CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
EcalTrigPrimFunctionalAlgo Class Reference

#include <EcalTrigPrimFunctionalAlgo.h>

Public Member Functions

 EcalTrigPrimFunctionalAlgo (const edm::EventSetup &setup, int binofmax, bool tcpFormat, bool barrelOnly, bool debug, bool famos)
 
void run (const edm::EventSetup &, const EBDigiCollection *col, EcalTrigPrimDigiCollection &result, EcalTrigPrimDigiCollection &resultTcp)
 
void run (const edm::EventSetup &, const EEDigiCollection *col, EcalTrigPrimDigiCollection &result, EcalTrigPrimDigiCollection &resultTcp)
 
void run_part1_EB (EBDigiCollection const *col)
 
void run_part1_EE (EEDigiCollection const *col)
 
template<class Coll >
void run_part2 (const edm::EventSetup &, Coll const *col, std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &towerMap, EcalTrigPrimDigiCollection &result, EcalTrigPrimDigiCollection &resultTcp)
 
void setPointers (const EcalTPGLinearizationConst *ecaltpLin, const EcalTPGPedestals *ecaltpPed, const EcalTPGSlidingWindow *ecaltpgSlidW, const EcalTPGWeightIdMap *ecaltpgWeightMap, const EcalTPGWeightGroup *ecaltpgWeightGroup, const EcalTPGFineGrainStripEE *ecaltpgFgStripEE, const EcalTPGCrystalStatus *ecaltpgBadX, const EcalTPGStripStatus *ecaltpgStripStatus)
 
void setPointers2 (const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike)
 
virtual ~EcalTrigPrimFunctionalAlgo ()
 

Private Types

enum  { nbMaxStrips_ =5 }
 
enum  { nbMaxXtals_ =5 }
 

Private Member Functions

template<class T >
void clean (std::vector< std::vector< std::pair< int, std::vector< T > > > > &towerMap)
 
template<class Coll >
void fillMap (Coll const *col, std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &towerMap)
 
int findStripNr (const EBDetId &id)
 
int findStripNr (const EEDetId &id)
 
int getIndex (const EBDigiCollection *, EcalTrigTowerDetId &id)
 
int getIndex (const EEDigiCollection *, EcalTrigTowerDetId &id)
 
void init (const edm::EventSetup &)
 
template<class T >
void initStructures (std::vector< std::vector< std::pair< int, std::vector< T > > > > &towMap)
 

Private Attributes

bool barrelOnly_
 
int binOfMaximum_
 
bool debug_
 
EcalFenixStripestrip_
 
EcalFenixTcpetcp_
 
edm::ESHandle< EcalTrigTowerConstituentsMapeTTmap_
 
bool famos_
 
std::vector< std::pair< int, EcalTrigTowerDetId > > hitTowers_
 
int maxNrSamples_
 
int nrTowers_
 
std::vector< std::vector< int > > striptp_
 
bool tcpFormat_
 
const CaloSubdetectorGeometrytheEndcapGeometry
 
const EcalElectronicsMappingtheMapping_
 
float threshold
 
std::vector< std::vector< std::pair< int, std::vector< EBDataFrame > > > > towerMapEB_
 
std::vector< std::vector< std::pair< int, std::vector< EEDataFrame > > > > towerMapEE_
 
std::vector< EcalTriggerPrimitiveSampletowtp2_
 
std::vector< EcalTriggerPrimitiveSampletowtp_
 

Static Private Attributes

static const unsigned int maxNrSamplesOut_ =10
 
static const unsigned int maxNrTowers_ =2448
 
static const unsigned int maxNrTPs_ =2448
 
static const unsigned int nrSamples_ =5
 

Detailed Description

EcalTrigPrimFunctionalAlgo is the main algorithm class for TPG It coordinates all the aother algorithms Structure is as close as possible to electronics

Author
Ursula Berthon, Stephanie Baffioni, LLR Palaiseau
Version
1st Version may 2006
2nd Version jul 2006
3rd Version sep 2007 introducing new Records closer to the db

EcalTrigPrimFunctionalAlgo is the main algorithm class for TPG It coordinates all the aother algorithms Structure is very close to electronics

Author
Ursula Berthon, Stephanie Baffioni, LLR Palaiseau
Version
1st Version may 2006
2nd Version jul 2006

Definition at line 49 of file EcalTrigPrimFunctionalAlgo.h.

Member Enumeration Documentation

anonymous enum
private
Enumerator
nbMaxStrips_ 

Definition at line 135 of file EcalTrigPrimFunctionalAlgo.h.

anonymous enum
private
Enumerator
nbMaxXtals_ 

Definition at line 136 of file EcalTrigPrimFunctionalAlgo.h.

Constructor & Destructor Documentation

EcalTrigPrimFunctionalAlgo::EcalTrigPrimFunctionalAlgo ( const edm::EventSetup setup,
int  binofmax,
bool  tcpFormat,
bool  barrelOnly,
bool  debug,
bool  famos 
)
explicit

Definition at line 51 of file EcalTrigPrimFunctionalAlgo.cc.

References famos_, init(), and maxNrSamples_.

EcalTrigPrimFunctionalAlgo::~EcalTrigPrimFunctionalAlgo ( )
virtual

Member Function Documentation

template<class T >
void EcalTrigPrimFunctionalAlgo::clean ( std::vector< std::vector< std::pair< int, std::vector< T > > > > &  towerMap)
private

Definition at line 281 of file EcalTrigPrimFunctionalAlgo.h.

References mps_fire::i, maxNrTowers_, and nbMaxStrips_.

Referenced by run_part1_EB(), run_part1_EE(), and setPointers2().

281  {
282  // clean internal data structures
283  for (unsigned int i=0;i<maxNrTowers_;++i)
284  for (int j=0;j<nbMaxStrips_ ;++j) (towMap[i])[j].first=0;
285  return;
286 }
static const unsigned int maxNrTowers_
template<class Coll >
void EcalTrigPrimFunctionalAlgo::fillMap ( Coll const *  col,
std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &  towerMap 
)
private

Definition at line 240 of file EcalTrigPrimFunctionalAlgo.h.

References findStripNr(), plotBeamSpotDB::first, getIndex(), hitTowers_, mps_fire::i, LogDebug, nbMaxXtals_, nrTowers_, hcalTTPDigis_cfi::samples, and edm::second().

Referenced by run_part1_EB(), run_part1_EE(), and setPointers2().

242 {
243  typedef typename Coll::Digi Digi;
244 
245  // implementation for Barrel and Endcap
246 
247  if (col) {
248  nrTowers_=0;
249  LogDebug("EcalTPG") <<"Fill mapping, Collection size = "<<col->size();
250  for(unsigned int i = 0; i < col->size() ; ++i) {
251  Digi samples((*col)[i]);
252  EcalTrigTowerDetId coarser=(*eTTmap_).towerOf(samples.id());
253  int index=getIndex(col,coarser);
254  int stripnr=findStripNr(samples.id());
255 
256  int filled=0;
257  for (unsigned int ij=0;ij<towerMap[index].size();++ij) filled+=towerMap[index][ij].first;
258  if (!filled) {
259  hitTowers_[nrTowers_++]=std::pair <int,EcalTrigTowerDetId>(index,coarser);
260  }
261 
262  //FIXME: temporary protection
263  int ncryst=towerMap[index][stripnr-1].first;
264  if (ncryst>=nbMaxXtals_ ) {
265  edm::LogError("EcalTrigPrimFunctionAlgo")<<"! Too many xtals for TT "<<coarser<<" stripnr "<<stripnr<<" xtalid "<<samples.id() ;
266  continue;
267  }
268  ((towerMap[index])[stripnr-1].second)[ncryst]=samples;
269  (towerMap[index])[stripnr-1].first++;
270  }
271 
272  LogDebug("EcalTPG")<<"fillMap"<<"[EcalTrigPrimFunctionalAlgo] (found "
273  << col->size() << " frames in "<< towerMap.size() << " towers) ";
274  }
275  else {
276  LogDebug("EcalTPG")<<"FillMap - FillMap Collection size=0 !!!!";
277  }
278 }
#define LogDebug(id)
std::vector< std::pair< int, EcalTrigTowerDetId > > hitTowers_
std::tuple< unsigned int, int, int, DigiType, int, int, int, float > Digi
Definition: GenericDigi.h:30
U second(std::pair< T, U > const &p)
int getIndex(const EBDigiCollection *, EcalTrigTowerDetId &id)
col
Definition: cuy.py:1008
int EcalTrigPrimFunctionalAlgo::findStripNr ( const EBDetId id)
private

Definition at line 114 of file EcalTrigPrimFunctionalAlgo.cc.

References gen::n, and nbMaxStrips_.

Referenced by fillMap(), and setPointers2().

114  {
115  int stripnr;
116  int n=((id.ic()-1)%100)/20; //20 corresponds to 4 * ecal_barrel_crystals_per_strip FIXME!!
117  if (id.ieta()<0) stripnr = n+1;
118  else stripnr =nbMaxStrips_ - n;
119  return stripnr;
120 }
int EcalTrigPrimFunctionalAlgo::findStripNr ( const EEDetId id)
private

Definition at line 122 of file EcalTrigPrimFunctionalAlgo.cc.

References EcalElectronicsMapping::getTriggerElectronicsId(), EcalTriggerElectronicsId::pseudoStripId(), and theMapping_.

122  {
123  int stripnr;
125  stripnr=elId.pseudoStripId();
126  return stripnr;
127 }
const EcalElectronicsMapping * theMapping_
EcalTriggerElectronicsId getTriggerElectronicsId(const DetId &id) const
Get the trigger electronics id for this det id.
int pseudoStripId() const
get the tower id
Ecal trigger electronics identification [32:20] Unused (so far) [19:13] TCC id [12:6] TT id [5:3] pse...
int EcalTrigPrimFunctionalAlgo::getIndex ( const EBDigiCollection ,
EcalTrigTowerDetId id 
)
inlineprivate

Definition at line 95 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by fillMap().

95 {return id.hashedIndex();}
int EcalTrigPrimFunctionalAlgo::getIndex ( const EEDigiCollection ,
EcalTrigTowerDetId id 
)
inlineprivate

Definition at line 97 of file EcalTrigPrimFunctionalAlgo.h.

References ecaldqm::zside().

97  {
98  int ind=(id.ietaAbs()-18)*72 + id.iphi();
99  if (id.zside()<0) ind+=792;
100  return ind;
101  }
int zside(DetId const &)
void EcalTrigPrimFunctionalAlgo::init ( const edm::EventSetup setup)
private

Definition at line 61 of file EcalTrigPrimFunctionalAlgo.cc.

References barrelOnly_, binOfMaximum_, debug_, estrip_, etcp_, eTTmap_, famos_, edm::EventSetup::get(), hitTowers_, initStructures(), maxNrSamples_, maxNrSamplesOut_, maxNrTowers_, nbMaxStrips_, nbMaxXtals_, edm::ESHandle< T >::product(), tcpFormat_, theEndcapGeometry, theMapping_, towerMapEB_, towerMapEE_, towtp2_, and towtp_.

Referenced by EcalTrigPrimFunctionalAlgo(), and setPointers2().

61  {
62  if (!barrelOnly_) {
63  edm::ESHandle<CaloGeometry> theGeometry;
64  edm::ESHandle<CaloSubdetectorGeometry> theEndcapGeometry_handle;
65  setup.get<CaloGeometryRecord>().get( theGeometry );
66  setup.get<EcalEndcapGeometryRecord>().get("EcalEndcap",theEndcapGeometry_handle);
67  theEndcapGeometry = &(*theEndcapGeometry_handle);
68  setup.get<IdealGeometryRecord>().get(eTTmap_);
69  }
70  // endcap mapping
72  setup.get< EcalMappingRcd >().get(ecalmapping);
73  theMapping_ = ecalmapping.product();
74 
75  //create main sub algos
78 
79  // initialise data structures
82 
83  hitTowers_.resize(maxNrTowers_);
84  towtp_.resize(maxNrSamplesOut_);
85  towtp2_.resize(maxNrSamplesOut_);
86 
87 }
std::vector< std::vector< std::pair< int, std::vector< EBDataFrame > > > > towerMapEB_
const EcalElectronicsMapping * theMapping_
const CaloSubdetectorGeometry * theEndcapGeometry
std::vector< std::pair< int, EcalTrigTowerDetId > > hitTowers_
class representing the Fenix chip, format strip
static const unsigned int maxNrSamplesOut_
edm::ESHandle< EcalTrigTowerConstituentsMap > eTTmap_
std::vector< EcalTriggerPrimitiveSample > towtp_
static const unsigned int maxNrTowers_
std::vector< std::vector< std::pair< int, std::vector< EEDataFrame > > > > towerMapEE_
void initStructures(std::vector< std::vector< std::pair< int, std::vector< T > > > > &towMap)
const T & get() const
Definition: EventSetup.h:59
std::vector< EcalTriggerPrimitiveSample > towtp2_
class representing the Fenix chip, format strip
Definition: EcalFenixTcp.h:34
T const * product() const
Definition: ESHandle.h:86
template<class T >
void EcalTrigPrimFunctionalAlgo::initStructures ( std::vector< std::vector< std::pair< int, std::vector< T > > > > &  towMap)
private

Definition at line 289 of file EcalTrigPrimFunctionalAlgo.h.

References mps_fire::i, maxNrSamples_, maxNrTowers_, nbMaxStrips_, nbMaxXtals_, and striptp_.

Referenced by init(), and setPointers2().

289  {
290  //initialise internal data structures
291 
292  std::vector <T> vec0(nbMaxXtals_ );
293  std::vector<std::pair<int,std::vector<T> > > vec1(nbMaxStrips_);
294  for (int i=0;i<nbMaxStrips_ ;++i) vec1[i]=std::pair<int,std::vector<T> >(0,vec0);
295  towMap.resize(maxNrTowers_);
296  for (unsigned int i=0;i<maxNrTowers_;++i) towMap[i]=vec1;
297 
298  std::vector<int> vecint(maxNrSamples_);
299  striptp_.resize(nbMaxStrips_);
300  for (int i=0;i<nbMaxStrips_;++i) striptp_[i]=vecint;
301 
302 }
std::vector< std::vector< int > > striptp_
static const unsigned int maxNrTowers_
std::vector< double > vec1
Definition: HCALResponse.h:15
void EcalTrigPrimFunctionalAlgo::run ( const edm::EventSetup ,
const EBDigiCollection col,
EcalTrigPrimDigiCollection result,
EcalTrigPrimDigiCollection resultTcp 
)
void EcalTrigPrimFunctionalAlgo::run ( const edm::EventSetup ,
const EEDigiCollection col,
EcalTrigPrimDigiCollection result,
EcalTrigPrimDigiCollection resultTcp 
)
void EcalTrigPrimFunctionalAlgo::run_part1_EB ( EBDigiCollection const *  col)

Definition at line 130 of file EcalTrigPrimFunctionalAlgo.cc.

References clean(), fillMap(), and towerMapEB_.

Referenced by ~EcalTrigPrimFunctionalAlgo().

130  {
132  // loop over dataframes and fill map
134 }
std::vector< std::vector< std::pair< int, std::vector< EBDataFrame > > > > towerMapEB_
void fillMap(Coll const *col, std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &towerMap)
col
Definition: cuy.py:1008
void clean(std::vector< std::vector< std::pair< int, std::vector< T > > > > &towerMap)
void EcalTrigPrimFunctionalAlgo::run_part1_EE ( EEDigiCollection const *  col)

Definition at line 136 of file EcalTrigPrimFunctionalAlgo.cc.

References clean(), fillMap(), and towerMapEE_.

Referenced by ~EcalTrigPrimFunctionalAlgo().

136  {
138  // loop over dataframes and fill map
140 }
void fillMap(Coll const *col, std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &towerMap)
std::vector< std::vector< std::pair< int, std::vector< EEDataFrame > > > > towerMapEE_
col
Definition: cuy.py:1008
void clean(std::vector< std::vector< std::pair< int, std::vector< T > > > > &towerMap)
template<class Coll >
void EcalTrigPrimFunctionalAlgo::run_part2 ( const edm::EventSetup setup,
Coll const *  col,
std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &  towerMap,
EcalTrigPrimDigiCollection result,
EcalTrigPrimDigiCollection resultTcp 
)

Definition at line 142 of file EcalTrigPrimFunctionalAlgo.h.

References binOfMaximum_, EcalTriggerPrimitiveDigi::compressedEt(), EcalEndcap, estrip_, stringResolutionProvider_cfi::et, etcp_, plotBeamSpotDB::first, CastorSimpleReconstructor_cfi::firstSample, EcalFenixStrip::getFGVB(), hitTowers_, mps_fire::i, EcalTrigTowerDetId::ietaAbs(), EcalTrigTowerDetId::iphi(), LogDebug, nrSamples_, nrTowers_, phi, EcalFenixTcp::process(), EcalFenixStrip::process(), edm::SortedCollection< T, SORT >::push_back(), edm::second(), EcalFenixStripFgvbEE::setbadStripMissing(), EcalTriggerPrimitiveDigi::setSample(), EcalTriggerPrimitiveDigi::setSize(), striptp_, EcalTrigTowerDetId::subDet(), tcpFormat_, towtp2_, towtp_, and EcalTrigTowerDetId::zside().

Referenced by ~EcalTrigPrimFunctionalAlgo().

145 {
146  typedef typename Coll::Digi Digi;
147 
148  // prepare writing of TP-s
149 
151  int lastSample = binOfMaximum_-1 +nrSamples_/2;
152  int nrTP=0;
153  std::vector<typename Coll::Digi> dummy;
154  EcalTriggerPrimitiveDigi tptow[2];
155  EcalTriggerPrimitiveDigi tptowTcp[2];
156 
158 
159  for(int itow=0;itow<nrTowers_;++itow)
160  {
161 
162  int index=hitTowers_[itow].first;
163  const EcalTrigTowerDetId &thisTower=hitTowers_[itow].second;
164 
165  // loop over all strips assigned to this trigger tower
166  int nstr=0;
167  for(unsigned int i = 0; i < towerMap[itow].size();++i)
168  {
169  std::vector<Digi> &df = (towerMap[index])[i].second;//vector of dataframes for this strip, size; nr of crystals/strip
170 
171  if ((towerMap[index])[i].first > 0) {
172  estrip_->process(setup,df,(towerMap[index])[i].first,striptp_[nstr++]);
173  }
174  }//loop over strips in one tower
175 
176  bool isInInnerRings=false;
177  if (thisTower.subDet()==EcalEndcap && (thisTower.ietaAbs()==27 || thisTower.ietaAbs()==28 )) isInInnerRings=true;
178  etcp_->process(setup,dummy,striptp_,nstr,towtp_,towtp2_,isInInnerRings,thisTower);
179 
180  // prepare TP-s
181  // special treatment for 2 inner endcap rings
182  int nrTowers;
183  if (isInInnerRings)
184  {
185  nrTowers=2;
186  int phi=2*((thisTower.iphi()-1)/2);
187  tptow[0]=EcalTriggerPrimitiveDigi(EcalTrigTowerDetId(thisTower.zside(),thisTower.subDet(),thisTower.ietaAbs(),phi+1));
188  tptow[1]=EcalTriggerPrimitiveDigi(EcalTrigTowerDetId(thisTower.zside(),thisTower.subDet(),thisTower.ietaAbs(),phi+2));
189 
190  if (tcpFormat_){
191  tptowTcp[0]=EcalTriggerPrimitiveDigi(EcalTrigTowerDetId(thisTower.zside(),thisTower.subDet(),thisTower.ietaAbs(),phi+1));
192  tptowTcp[1]=EcalTriggerPrimitiveDigi(EcalTrigTowerDetId(thisTower.zside(),thisTower.subDet(),thisTower.ietaAbs(),phi+2));
193  }
194  }else {
195  nrTowers=1;
196  tptow[0]=EcalTriggerPrimitiveDigi(thisTower);
197  if (tcpFormat_) tptowTcp[0]=EcalTriggerPrimitiveDigi(thisTower);
198  }
199 
200  // now fill in
201  for (int nrt=0;nrt<nrTowers;nrt++) {
202  (tptow[nrt]).setSize(nrSamples_);
203  if (towtp_.size()<nrSamples_) { //FIXME: only once
204  edm::LogWarning("") <<"Too few samples produced, nr is "<<towtp_.size();
205  break;
206  }
207  int isam=0;
208  for (int i=firstSample;i<=lastSample;++i) {
209  tptow[nrt].setSample(isam++,EcalTriggerPrimitiveSample(towtp_[i]));
210  }
211  nrTP++;
212  LogDebug("EcalTPG") <<" For tower "<<itow<<" created TP nr "<<nrTP<<" with Et "<<tptow[nrt].compressedEt();
213  result.push_back(tptow[nrt]);
214  }
215 
216  if (tcpFormat_) {
217 
218  for (int nrt=0;nrt<nrTowers;nrt++) {
219  tptowTcp[nrt].setSize(nrSamples_);
220  if (towtp2_.size()<nrSamples_) { //FIXME: only once
221  edm::LogWarning("") <<"Too few samples produced, nr is "<<towtp2_.size();
222  break;
223  }
224  int isam=0;
225  for (int i=firstSample;i<=lastSample;++i) {
226  if (nrTowers<=1) tptowTcp[nrt].setSample(isam++,EcalTriggerPrimitiveSample(towtp2_[i]));
227  else {
228  int et=towtp2_[i].compressedEt()/2;
229  tptowTcp[nrt].setSample(isam++,EcalTriggerPrimitiveSample(et,towtp2_[i].fineGrain(),towtp2_[i].ttFlag()));
230  }
231  }
232  resultTcp.push_back(tptowTcp[nrt]);
233  }
234  }
235  }
236  return;
237 }
#define LogDebug(id)
void setbadStripMissing(bool flag)
std::vector< std::vector< int > > striptp_
std::vector< std::pair< int, EcalTrigTowerDetId > > hitTowers_
void push_back(T const &t)
std::tuple< unsigned int, int, int, DigiType, int, int, int, float > Digi
Definition: GenericDigi.h:30
void process(const edm::EventSetup &, std::vector< const T > &, int nrxtals, std::vector< int > &out)
int zside() const
get the z-side of the tower (1/-1)
std::vector< EcalTriggerPrimitiveSample > towtp_
U second(std::pair< T, U > const &p)
int compressedEt() const
get the encoded/compressed Et of interesting sample
void setSample(int i, const EcalTriggerPrimitiveSample &sam)
int ietaAbs() const
get the absolute value of the tower ieta
EcalFenixStripFgvbEE * getFGVB() const
int iphi() const
get the tower iphi
et
define resolution functions of each parameter
EcalSubdetector subDet() const
get the subDetector associated to the Trigger Tower
std::vector< EcalTriggerPrimitiveSample > towtp2_
static const unsigned int nrSamples_
void process(const edm::EventSetup &setup, std::vector< EBDataFrame > &bid, std::vector< std::vector< int > > &tpframetow, int nStr, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, bool isInInnerRings, EcalTrigTowerDetId thisTower)
Definition: EcalFenixTcp.cc:46
void EcalTrigPrimFunctionalAlgo::setPointers ( const EcalTPGLinearizationConst ecaltpLin,
const EcalTPGPedestals ecaltpPed,
const EcalTPGSlidingWindow ecaltpgSlidW,
const EcalTPGWeightIdMap ecaltpgWeightMap,
const EcalTPGWeightGroup ecaltpgWeightGroup,
const EcalTPGFineGrainStripEE ecaltpgFgStripEE,
const EcalTPGCrystalStatus ecaltpgBadX,
const EcalTPGStripStatus ecaltpgStripStatus 
)
inline

Definition at line 67 of file EcalTrigPrimFunctionalAlgo.h.

References estrip_, and EcalFenixStrip::setPointers().

67  {
68  estrip_->setPointers(ecaltpPed,ecaltpLin,ecaltpgWeightMap,ecaltpgWeightGroup,ecaltpgSlidW,ecaltpgFgStripEE,ecaltpgBadX,ecaltpgStripStatus);
69 
70  }
void setPointers(const EcalTPGPedestals *ecaltpPed, const EcalTPGLinearizationConst *ecaltpLin, const EcalTPGWeightIdMap *ecaltpgWeightMap, const EcalTPGWeightGroup *ecaltpgWeightGroup, const EcalTPGSlidingWindow *ecaltpgSlidW, const EcalTPGFineGrainStripEE *ecaltpgFgStripEE, const EcalTPGCrystalStatus *ecaltpgBadX, const EcalTPGStripStatus *ecaltpgStripStatus)
void EcalTrigPrimFunctionalAlgo::setPointers2 ( const EcalTPGFineGrainEBGroup ecaltpgFgEBGroup,
const EcalTPGLutGroup ecaltpgLutGroup,
const EcalTPGLutIdMap ecaltpgLut,
const EcalTPGFineGrainEBIdMap ecaltpgFineGrainEB,
const EcalTPGFineGrainTowerEE ecaltpgFineGrainTowerEE,
const EcalTPGTowerStatus ecaltpgBadTT,
const EcalTPGSpike ecaltpgSpike 
)
inline

Definition at line 71 of file EcalTrigPrimFunctionalAlgo.h.

References clean(), etcp_, fillMap(), findStripNr(), init(), initStructures(), and EcalFenixTcp::setPointers().

77  {
78 
79  etcp_->setPointers(ecaltpgFgEBGroup,ecaltpgLutGroup,ecaltpgLut,ecaltpgFineGrainEB,ecaltpgFineGrainTowerEE,ecaltpgBadTT,ecaltpgSpike);
80  }
void setPointers(const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike)
Definition: EcalFenixTcp.h:59

Member Data Documentation

bool EcalTrigPrimFunctionalAlgo::barrelOnly_
private

Definition at line 116 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init().

int EcalTrigPrimFunctionalAlgo::binOfMaximum_
private

Definition at line 112 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), and run_part2().

bool EcalTrigPrimFunctionalAlgo::debug_
private

Definition at line 117 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init().

EcalFenixStrip* EcalTrigPrimFunctionalAlgo::estrip_
private
EcalFenixTcp* EcalTrigPrimFunctionalAlgo::etcp_
private
edm::ESHandle<EcalTrigTowerConstituentsMap> EcalTrigPrimFunctionalAlgo::eTTmap_
private

Definition at line 106 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init().

bool EcalTrigPrimFunctionalAlgo::famos_
private

Definition at line 118 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by EcalTrigPrimFunctionalAlgo(), and init().

std::vector<std::pair<int,EcalTrigTowerDetId> > EcalTrigPrimFunctionalAlgo::hitTowers_
private

Definition at line 131 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by fillMap(), init(), and run_part2().

int EcalTrigPrimFunctionalAlgo::maxNrSamples_
private

Definition at line 113 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by EcalTrigPrimFunctionalAlgo(), init(), and initStructures().

const unsigned int EcalTrigPrimFunctionalAlgo::maxNrSamplesOut_ =10
staticprivate

Definition at line 121 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init().

const unsigned int EcalTrigPrimFunctionalAlgo::maxNrTowers_ =2448
staticprivate

Definition at line 122 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by clean(), init(), and initStructures().

const unsigned int EcalTrigPrimFunctionalAlgo::maxNrTPs_ =2448
staticprivate

Definition at line 123 of file EcalTrigPrimFunctionalAlgo.h.

const unsigned int EcalTrigPrimFunctionalAlgo::nrSamples_ =5
staticprivate

Definition at line 120 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by run_part2().

int EcalTrigPrimFunctionalAlgo::nrTowers_
private

Definition at line 125 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by fillMap(), and run_part2().

std::vector<std::vector<int> > EcalTrigPrimFunctionalAlgo::striptp_
private

Definition at line 128 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by initStructures(), and run_part2().

bool EcalTrigPrimFunctionalAlgo::tcpFormat_
private

Definition at line 115 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), and run_part2().

const CaloSubdetectorGeometry* EcalTrigPrimFunctionalAlgo::theEndcapGeometry
private

Definition at line 107 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init().

const EcalElectronicsMapping* EcalTrigPrimFunctionalAlgo::theMapping_
private

Definition at line 108 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by findStripNr(), and init().

float EcalTrigPrimFunctionalAlgo::threshold
private

Definition at line 110 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by utils.StatisticalTest::get_status().

std::vector<std::vector<std::pair<int,std::vector<EBDataFrame> > > > EcalTrigPrimFunctionalAlgo::towerMapEB_
private

Definition at line 129 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), run_part1_EB(), and ~EcalTrigPrimFunctionalAlgo().

std::vector<std::vector<std::pair<int,std::vector<EEDataFrame> > > > EcalTrigPrimFunctionalAlgo::towerMapEE_
private

Definition at line 130 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), run_part1_EE(), and ~EcalTrigPrimFunctionalAlgo().

std::vector<EcalTriggerPrimitiveSample> EcalTrigPrimFunctionalAlgo::towtp2_
private

Definition at line 133 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), and run_part2().

std::vector<EcalTriggerPrimitiveSample> EcalTrigPrimFunctionalAlgo::towtp_
private

Definition at line 132 of file EcalTrigPrimFunctionalAlgo.h.

Referenced by init(), and run_part2().