CMS 3D CMS Logo

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

class representing the Fenix chip, format strip More...

#include <EcalFenixTcp.h>

Public Member Functions

 EcalFenixTcp (bool tcpFormat, bool debug, bool famos, int binOfMax, int maxNrSamples, int nbMaxStrips, bool TPinfoPrintout)
 
EcalFenixEtTotgetAdder () const
 
EcalFenixBypassLingetBypasslin (int i) const
 
EcalFenixFgvbEBgetFGVBEB () const
 
EcalFenixTcpFgvbEEgetFGVBEE () const
 
EcalFenixTcpFormatEBgetFormatterEB () const
 
EcalFenixTcpFormatEEgetFormatterEE () const
 
EcalFenixMaxof2getMaxOf2 () const
 
EcalFenixTcpsFgvbEBgetsFGVBEB () const
 
void process (std::vector< EBDataFrame > &bid, std::vector< std::vector< int >> &tpframetow, int nStr, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, bool isInInnerRings, EcalTrigTowerDetId thisTower)
 
void process (std::vector< EEDataFrame > &bid, std::vector< std::vector< int >> &tpframetow, int nStr, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, bool isInInnerRings, EcalTrigTowerDetId thisTower)
 
void process_part1 (std::vector< std::vector< int >> &tpframetow, int nStr, int bitMask, int bitOddEven)
 
void process_part2_barrel (std::vector< std::vector< int >> &, int nStr, int bitMask, int bitOddEven, const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, EcalTrigTowerDetId towid)
 
void process_part2_endcap (std::vector< std::vector< int >> &, int nStr, int bitMask, int bitOddEven, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGTowerStatus *ecaltpgBadTT, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, bool isInInnerRings, EcalTrigTowerDetId towid)
 
void setPointers (const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike, const EcalTPGTPMode *ecaltpgTPMode)
 
virtual ~EcalFenixTcp ()
 

Public Attributes

const EcalTPGTowerStatusecaltpgBadTT_
 
const EcalTPGFineGrainEBGroupecaltpgFgEBGroup_
 
const EcalTPGFineGrainEBIdMapecaltpgFineGrainEB_
 
const EcalTPGFineGrainTowerEEecaltpgFineGrainTowerEE_
 
const EcalTPGLutIdMapecaltpgLut_
 
const EcalTPGLutGroupecaltpgLutGroup_
 
const EcalTPGSpikeecaltpgSpike_
 
const EcalTPGTPModeecaltpgTPMode_
 

Private Attributes

EcalFenixEtTotadder_
 
std::vector< int > adder_even_out_
 
std::vector< int > adder_odd_out_
 
std::vector< EcalFenixBypassLin * > bypasslin_
 
std::vector< std::vector< int > > bypasslin_out_
 
bool debug_
 
std::vector< int > fgvb_out_
 
EcalFenixFgvbEBfgvbEB_
 
EcalFenixTcpFgvbEEfgvbEE_
 
EcalFenixTcpFormatEBformatter_EB_
 
EcalFenixTcpFormatEEformatter_EE_
 
EcalFenixMaxof2maxOf2_
 
std::vector< int > maxOf2_out_
 
int nbMaxStrips_
 
EcalFenixTcpsFgvbEBsfgvbEB_
 
std::vector< int > strip_fgvb_out_
 
bool tpInfoPrintout_
 

Detailed Description

class representing the Fenix chip, format strip

Definition at line 33 of file EcalFenixTcp.h.

Constructor & Destructor Documentation

◆ EcalFenixTcp()

EcalFenixTcp::EcalFenixTcp ( bool  tcpFormat,
bool  debug,
bool  famos,
int  binOfMax,
int  maxNrSamples,
int  nbMaxStrips,
bool  TPinfoPrintout 
)

Definition at line 14 of file EcalFenixTcp.cc.

16  : debug_(debug), nbMaxStrips_(nbMaxStrips), tpInfoPrintout_(tpInfoPrintout) {
17  bypasslin_.resize(nbMaxStrips_);
18  for (int i = 0; i < nbMaxStrips_; i++)
20  adder_ = new EcalFenixEtTot();
21  maxOf2_ = new EcalFenixMaxof2(maxNrSamples, nbMaxStrips_);
22  formatter_EB_ = new EcalFenixTcpFormatEB(tcpFormat, debug_, famos, binOfMax);
23  formatter_EE_ = new EcalFenixTcpFormatEE(tcpFormat, debug_, famos, binOfMax);
24  fgvbEB_ = new EcalFenixFgvbEB(maxNrSamples);
25  fgvbEE_ = new EcalFenixTcpFgvbEE(maxNrSamples);
27 
28  // permanent data structures
30  std::vector<int> vec(maxNrSamples, 0);
31  for (int i = 0; i < nbMaxStrips_; i++)
32  bypasslin_out_[i] = vec;
33 
34  adder_even_out_.resize(maxNrSamples);
35  adder_odd_out_.resize(maxNrSamples);
36  maxOf2_out_.resize(maxNrSamples);
37  fgvb_out_.resize(maxNrSamples);
38  strip_fgvb_out_.resize(maxNrSamples);
39 }

References adder_, adder_even_out_, adder_odd_out_, bypasslin_, bypasslin_out_, debug_, fgvb_out_, fgvbEB_, fgvbEE_, formatter_EB_, formatter_EE_, mps_fire::i, maxOf2_, maxOf2_out_, nbMaxStrips_, sfgvbEB_, and strip_fgvb_out_.

◆ ~EcalFenixTcp()

EcalFenixTcp::~EcalFenixTcp ( )
virtual

Definition at line 41 of file EcalFenixTcp.cc.

41  {
42  for (int i = 0; i < nbMaxStrips_; i++)
43  delete bypasslin_[i];
44  delete adder_;
45  delete maxOf2_;
46  delete formatter_EB_;
47  delete formatter_EE_;
48  delete fgvbEB_;
49  delete fgvbEE_;
50 }

References adder_, bypasslin_, fgvbEB_, fgvbEE_, formatter_EB_, formatter_EE_, mps_fire::i, maxOf2_, and nbMaxStrips_.

Member Function Documentation

◆ getAdder()

EcalFenixEtTot* EcalFenixTcp::getAdder ( ) const
inline

Definition at line 127 of file EcalFenixTcp.h.

127 { return adder_; }

References adder_.

Referenced by process_part1().

◆ getBypasslin()

EcalFenixBypassLin* EcalFenixTcp::getBypasslin ( int  i) const
inline

Definition at line 126 of file EcalFenixTcp.h.

126 { return bypasslin_[i]; }

References bypasslin_, and mps_fire::i.

◆ getFGVBEB()

EcalFenixFgvbEB* EcalFenixTcp::getFGVBEB ( ) const
inline

Definition at line 131 of file EcalFenixTcp.h.

131 { return fgvbEB_; }

References fgvbEB_.

Referenced by process_part2_barrel().

◆ getFGVBEE()

EcalFenixTcpFgvbEE* EcalFenixTcp::getFGVBEE ( ) const
inline

Definition at line 132 of file EcalFenixTcp.h.

132 { return fgvbEE_; }

References fgvbEE_.

Referenced by process_part2_endcap().

◆ getFormatterEB()

EcalFenixTcpFormatEB* EcalFenixTcp::getFormatterEB ( ) const
inline

Definition at line 129 of file EcalFenixTcp.h.

129 { return formatter_EB_; }

References formatter_EB_.

Referenced by process_part2_barrel().

◆ getFormatterEE()

EcalFenixTcpFormatEE* EcalFenixTcp::getFormatterEE ( ) const
inline

Definition at line 130 of file EcalFenixTcp.h.

130 { return formatter_EE_; }

References formatter_EE_.

Referenced by process_part2_endcap().

◆ getMaxOf2()

EcalFenixMaxof2* EcalFenixTcp::getMaxOf2 ( ) const
inline

Definition at line 128 of file EcalFenixTcp.h.

128 { return maxOf2_; }

References maxOf2_.

Referenced by process_part2_barrel().

◆ getsFGVBEB()

EcalFenixTcpsFgvbEB* EcalFenixTcp::getsFGVBEB ( ) const
inline

Definition at line 133 of file EcalFenixTcp.h.

133 { return sfgvbEB_; }

References sfgvbEB_.

Referenced by process_part2_barrel().

◆ process() [1/2]

void EcalFenixTcp::process ( 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 at line 53 of file EcalFenixTcp.cc.

59  {
60  int bitMask = 12;
61  // The 14th bit is always used for the odd>even flag. If the flagging is off in the Strip fenix the feature will be not used.
62  int bitOddEven = 13;
63  process_part1(tpframetow, nStr, bitMask, bitOddEven);
64 
65  process_part2_barrel(tpframetow,
66  nStr,
67  bitMask,
68  bitOddEven,
75  tptow,
76  tptow2,
77  towid);
78 }

References ecaltpgBadTT_, ecaltpgFgEBGroup_, ecaltpgFineGrainEB_, ecaltpgLut_, ecaltpgLutGroup_, ecaltpgSpike_, process_part1(), and process_part2_barrel().

◆ process() [2/2]

void EcalFenixTcp::process ( std::vector< EEDataFrame > &  bid,
std::vector< std::vector< int >> &  tpframetow,
int  nStr,
std::vector< EcalTriggerPrimitiveSample > &  tptow,
std::vector< EcalTriggerPrimitiveSample > &  tptow2,
bool  isInInnerRings,
EcalTrigTowerDetId  thisTower 
)

Definition at line 81 of file EcalFenixTcp.cc.

87  {
88  int bitMask = 12; // Pascal: endcap has 12 bits as in EB (bug in FENIX!!!!)
89  // The 14th bit is always used for the odd>even flag. If the flagging is off in the Strip fenix the feature will be not used.
90  int bitOddEven = 13;
91 
92  process_part1(tpframetow, nStr, bitMask, bitOddEven);
93 
94  process_part2_endcap(tpframetow,
95  nStr,
96  bitMask,
97  bitOddEven,
102  tptow,
103  tptow2,
104  isInInnerRing,
105  towid);
106 }

References ecaltpgBadTT_, ecaltpgFineGrainTowerEE_, ecaltpgLut_, ecaltpgLutGroup_, process_part1(), and process_part2_endcap().

◆ process_part1()

void EcalFenixTcp::process_part1 ( std::vector< std::vector< int >> &  tpframetow,
int  nStr,
int  bitMask,
int  bitOddEven 
)

Definition at line 108 of file EcalFenixTcp.cc.

108  {
109  // //call adder
110  // this->getAdder()->process(bypasslin_out_, nStr, bitMask,adder_out_);
111  this->getAdder()->process(tpframetow, nStr, bitMask, bitOddEven, adder_even_out_, adder_odd_out_);
112  // this is a test:
113  if (debug_) {
114  std::cout << "output of TCP adder is a vector of size: " << adder_even_out_.size() << std::endl;
115  std::cout << "even sum : " << std::endl;
116  for (unsigned int i = 0; i < adder_even_out_.size(); i++) {
117  std::cout << " " << adder_even_out_[i];
118  }
119  std::cout << std::endl;
120  std::cout << "odd sum : " << std::endl;
121  for (unsigned int i = 0; i < adder_odd_out_.size(); i++) {
122  std::cout << " " << adder_odd_out_[i];
123  }
124  std::cout << std::endl;
125  }
126  return;
127 }

References adder_even_out_, adder_odd_out_, gather_cfg::cout, debug_, getAdder(), mps_fire::i, and EcalFenixEtTot::process().

Referenced by process().

◆ process_part2_barrel()

void EcalFenixTcp::process_part2_barrel ( std::vector< std::vector< int >> &  bypasslinout,
int  nStr,
int  bitMask,
int  bitOddEven,
const EcalTPGFineGrainEBGroup ecaltpgFgEBGroup,
const EcalTPGLutGroup ecaltpgLutGroup,
const EcalTPGLutIdMap ecaltpgLut,
const EcalTPGFineGrainEBIdMap ecaltpgFineGrainEB,
const EcalTPGTowerStatus ecaltpgBadTT,
const EcalTPGSpike ecaltpgSpike,
std::vector< EcalTriggerPrimitiveSample > &  tptow,
std::vector< EcalTriggerPrimitiveSample > &  tptow2,
EcalTrigTowerDetId  towid 
)

Definition at line 129 of file EcalFenixTcp.cc.

141  {
142  // call maxof2
143  // this->getMaxOf2()->process(bypasslin_out_,nStr,maxOf2_out_);
144  // the oddEven flag is used to exclude "odd" strip from the computation of the maxof2 as in the fenix firmware
145  this->getMaxOf2()->process(bypasslinout, nStr, bitMask, bitOddEven, maxOf2_out_);
146 
147  if (debug_) {
148  std::cout << "output of maxof2 is a vector of size: " << maxOf2_out_.size() << std::endl;
149  std::cout << "value : " << std::endl;
150  for (unsigned int i = 0; i < maxOf2_out_.size(); i++) {
151  std::cout << " " << std::dec << maxOf2_out_[i];
152  }
153  std::cout << std::endl;
154  }
155 
156  // call fgvb
157  this->getFGVBEB()->setParameters(towid.rawId(), ecaltpgFgEBGroup, ecaltpgFineGrainEB);
158  // The FGVB is computed only on the even sum, as in the firmware
160 
161  // Call sFGVB
162  this->getsFGVBEB()->process(bypasslinout, nStr, bitMask, strip_fgvb_out_);
163 
164  // this is a test:
165  if (debug_) {
166  std::cout << "output of fgvb is a vector of size: " << fgvb_out_.size() << std::endl;
167  std::cout << "value : " << std::endl;
168  for (unsigned int i = 0; i < fgvb_out_.size(); i++) {
169  std::cout << " " << std::dec << fgvb_out_[i];
170  }
171  std::cout << std::endl;
172  }
173 
174  // call formatter
175  int eTTotShift = 2;
176 
177  this->getFormatterEB()->setParameters(
178  towid.rawId(), ecaltpgLutGroup, ecaltpgLut, ecaltpgBadTT, ecaltpgSpike, ecaltpgTPMode_);
179  this->getFormatterEB()->process(
180  adder_even_out_, adder_odd_out_, fgvb_out_, strip_fgvb_out_, eTTotShift, tcp_out, tcp_outTcc);
181 
182  if (tpInfoPrintout_) {
183  for (unsigned int i = 3; i < tcp_out.size(); i++) {
184  std::cout << " " << i << " " << std::dec << tcp_out[i] << std::endl;
185  }
186  }
187 
188  if (debug_) {
189  std::cout << "output of TCP formatter Barrel is a vector of size: " << std::dec << tcp_out.size() << std::endl;
190  std::cout << "value : " << std::endl;
191  for (unsigned int i = 0; i < tcp_out.size(); i++) {
192  std::cout << " " << i << " " << std::dec << tcp_out[i] << std::endl;
193  }
194  std::cout << std::endl;
195  }
196 
197  return;
198 }

References adder_even_out_, adder_odd_out_, gather_cfg::cout, debug_, TauDecayModes::dec, ecaltpgTPMode_, fgvb_out_, getFGVBEB(), getFormatterEB(), getMaxOf2(), getsFGVBEB(), mps_fire::i, maxOf2_out_, EcalFenixTcpsFgvbEB::process(), EcalFenixMaxof2::process(), EcalFenixTcpFormatEB::process(), EcalFenixFgvbEB::process(), DetId::rawId(), EcalFenixFgvbEB::setParameters(), EcalFenixTcpFormatEB::setParameters(), strip_fgvb_out_, and tpInfoPrintout_.

Referenced by process().

◆ process_part2_endcap()

void EcalFenixTcp::process_part2_endcap ( std::vector< std::vector< int >> &  bypasslinout,
int  nStr,
int  bitMask,
int  bitOddEven,
const EcalTPGLutGroup ecaltpgLutGroup,
const EcalTPGLutIdMap ecaltpgLut,
const EcalTPGFineGrainTowerEE ecaltpgFineGrainTowerEE,
const EcalTPGTowerStatus ecaltpgBadTT,
std::vector< EcalTriggerPrimitiveSample > &  tptow,
std::vector< EcalTriggerPrimitiveSample > &  tptow2,
bool  isInInnerRings,
EcalTrigTowerDetId  towid 
)

Definition at line 200 of file EcalFenixTcp.cc.

213 {
214  // Zero EB strip records
215  for (unsigned int i = 0; i < strip_fgvb_out_.size(); ++i) {
216  strip_fgvb_out_[i] = 0;
217  }
218 
219  // call fgvb
220  this->getFGVBEE()->setParameters(towid.rawId(), ecaltpgFineGrainTowerEE);
221  // fgvbEE_->process(bypasslin_out_,nStr,bitMask,fgvb_out_);
222  fgvbEE_->process(bypasslinout, nStr, bitMask, fgvb_out_);
223 
224  // call formatter
225  int eTTotShift = 2; // Pascal: endcap has 12 bits as in EB (bug in FENIX!!!!)
226  // so shift must be applied to just keep [11:2]
227 
228  this->getFormatterEE()->setParameters(
229  towid.rawId(), ecaltpgLutGroup, ecaltpgLut, ecaltpgbadTT, nullptr, ecaltpgTPMode_);
230 
231  // Pass both the even and the odd Et sums to the EE formatter also if there is not TCP in the electronics.
232  // The feature can be implemented in the TCC in the future: the emulator is kept generic.
233  this->getFormatterEE()->process(
234  adder_even_out_, adder_odd_out_, fgvb_out_, strip_fgvb_out_, eTTotShift, tcp_out, tcp_outTcc, isInInnerRings);
235  // this is a test:
236  if (debug_) {
237  std::cout << "output of TCP formatter(endcap) is a vector of size: " << std::dec << tcp_out.size() << std::endl;
238  std::cout << "value : " << std::endl;
239  for (unsigned int i = 0; i < tcp_out.size(); i++) {
240  std::cout << " " << i << " " << std::dec << tcp_out[i] << std::endl;
241  }
242  std::cout << std::endl;
243  }
244  return;
245 }

References adder_even_out_, adder_odd_out_, gather_cfg::cout, debug_, TauDecayModes::dec, ecaltpgTPMode_, fgvb_out_, fgvbEE_, getFGVBEE(), getFormatterEE(), mps_fire::i, EcalFenixTcpFormatEE::process(), EcalFenixTcpFgvbEE::process(), DetId::rawId(), EcalFenixTcpFgvbEE::setParameters(), EcalFenixTcpFormatEE::setParameters(), and strip_fgvb_out_.

Referenced by process().

◆ setPointers()

void EcalFenixTcp::setPointers ( const EcalTPGFineGrainEBGroup ecaltpgFgEBGroup,
const EcalTPGLutGroup ecaltpgLutGroup,
const EcalTPGLutIdMap ecaltpgLut,
const EcalTPGFineGrainEBIdMap ecaltpgFineGrainEB,
const EcalTPGFineGrainTowerEE ecaltpgFineGrainTowerEE,
const EcalTPGTowerStatus ecaltpgBadTT,
const EcalTPGSpike ecaltpgSpike,
const EcalTPGTPMode ecaltpgTPMode 
)
inline

Definition at line 59 of file EcalFenixTcp.h.

66  {
67  ecaltpgFgEBGroup_ = ecaltpgFgEBGroup;
68  ecaltpgLutGroup_ = ecaltpgLutGroup;
69  ecaltpgLut_ = ecaltpgLut;
70  ecaltpgFineGrainEB_ = ecaltpgFineGrainEB;
71  ecaltpgFineGrainTowerEE_ = ecaltpgFineGrainTowerEE;
72  ecaltpgBadTT_ = ecaltpgBadTT;
73  ecaltpgSpike_ = ecaltpgSpike;
74  ecaltpgTPMode_ = ecaltpgTPMode;
75  }

References ecaltpgBadTT_, ecaltpgFgEBGroup_, ecaltpgFineGrainEB_, ecaltpgFineGrainTowerEE_, ecaltpgLut_, ecaltpgLutGroup_, ecaltpgSpike_, and ecaltpgTPMode_.

Member Data Documentation

◆ adder_

EcalFenixEtTot* EcalFenixTcp::adder_
private

Definition at line 41 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getAdder(), and ~EcalFenixTcp().

◆ adder_even_out_

std::vector<int> EcalFenixTcp::adder_even_out_
private

◆ adder_odd_out_

std::vector<int> EcalFenixTcp::adder_odd_out_
private

◆ bypasslin_

std::vector<EcalFenixBypassLin *> EcalFenixTcp::bypasslin_
private

Definition at line 40 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getBypasslin(), and ~EcalFenixTcp().

◆ bypasslin_out_

std::vector<std::vector<int> > EcalFenixTcp::bypasslin_out_
private

Definition at line 50 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp().

◆ debug_

bool EcalFenixTcp::debug_
private

◆ ecaltpgBadTT_

const EcalTPGTowerStatus* EcalFenixTcp::ecaltpgBadTT_

Definition at line 140 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgFgEBGroup_

const EcalTPGFineGrainEBGroup* EcalFenixTcp::ecaltpgFgEBGroup_

Definition at line 135 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgFineGrainEB_

const EcalTPGFineGrainEBIdMap* EcalFenixTcp::ecaltpgFineGrainEB_

Definition at line 138 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgFineGrainTowerEE_

const EcalTPGFineGrainTowerEE* EcalFenixTcp::ecaltpgFineGrainTowerEE_

Definition at line 139 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgLut_

const EcalTPGLutIdMap* EcalFenixTcp::ecaltpgLut_

Definition at line 137 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgLutGroup_

const EcalTPGLutGroup* EcalFenixTcp::ecaltpgLutGroup_

Definition at line 136 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgSpike_

const EcalTPGSpike* EcalFenixTcp::ecaltpgSpike_

Definition at line 141 of file EcalFenixTcp.h.

Referenced by process(), and setPointers().

◆ ecaltpgTPMode_

const EcalTPGTPMode* EcalFenixTcp::ecaltpgTPMode_

Definition at line 142 of file EcalFenixTcp.h.

Referenced by process_part2_barrel(), process_part2_endcap(), and setPointers().

◆ fgvb_out_

std::vector<int> EcalFenixTcp::fgvb_out_
private

Definition at line 54 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), process_part2_barrel(), and process_part2_endcap().

◆ fgvbEB_

EcalFenixFgvbEB* EcalFenixTcp::fgvbEB_
private

Definition at line 42 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getFGVBEB(), and ~EcalFenixTcp().

◆ fgvbEE_

EcalFenixTcpFgvbEE* EcalFenixTcp::fgvbEE_
private

Definition at line 43 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getFGVBEE(), process_part2_endcap(), and ~EcalFenixTcp().

◆ formatter_EB_

EcalFenixTcpFormatEB* EcalFenixTcp::formatter_EB_
private

Definition at line 46 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getFormatterEB(), and ~EcalFenixTcp().

◆ formatter_EE_

EcalFenixTcpFormatEE* EcalFenixTcp::formatter_EE_
private

Definition at line 47 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getFormatterEE(), and ~EcalFenixTcp().

◆ maxOf2_

EcalFenixMaxof2* EcalFenixTcp::maxOf2_
private

Definition at line 39 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), getMaxOf2(), and ~EcalFenixTcp().

◆ maxOf2_out_

std::vector<int> EcalFenixTcp::maxOf2_out_
private

Definition at line 53 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), and process_part2_barrel().

◆ nbMaxStrips_

int EcalFenixTcp::nbMaxStrips_
private

Definition at line 36 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), and ~EcalFenixTcp().

◆ sfgvbEB_

EcalFenixTcpsFgvbEB* EcalFenixTcp::sfgvbEB_
private

Definition at line 44 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), and getsFGVBEB().

◆ strip_fgvb_out_

std::vector<int> EcalFenixTcp::strip_fgvb_out_
private

Definition at line 55 of file EcalFenixTcp.h.

Referenced by EcalFenixTcp(), process_part2_barrel(), and process_part2_endcap().

◆ tpInfoPrintout_

bool EcalFenixTcp::tpInfoPrintout_
private

Definition at line 37 of file EcalFenixTcp.h.

Referenced by process_part2_barrel().

EcalFenixTcp::process_part2_barrel
void process_part2_barrel(std::vector< std::vector< int >> &, int nStr, int bitMask, int bitOddEven, const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, EcalTrigTowerDetId towid)
Definition: EcalFenixTcp.cc:129
EcalFenixBypassLin
Linearisation for Tcp input: 16 bits output: 12 bits +1 going to fgvb (???)
Definition: EcalFenixBypassLin.h:16
mps_fire.i
i
Definition: mps_fire.py:428
EcalFenixEtTot::process
virtual std::vector< int > process(const std::vector< EBDataFrame * > &)
Definition: EcalFenixEtTot.cc:8
EcalFenixTcp::adder_odd_out_
std::vector< int > adder_odd_out_
Definition: EcalFenixTcp.h:52
EcalFenixTcpFormatEB::setParameters
void setParameters(uint32_t towid, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGTowerStatus *ecaltpgbadTT, const EcalTPGSpike *ecaltpgSpike, const EcalTPGTPMode *ecaltpgTPMode)
Definition: EcalFenixTcpFormatEB.cc:115
EcalFenixMaxof2
Definition: EcalFenixMaxof2.h:20
EcalFenixTcp::ecaltpgFgEBGroup_
const EcalTPGFineGrainEBGroup * ecaltpgFgEBGroup_
Definition: EcalFenixTcp.h:135
EcalFenixTcp::tpInfoPrintout_
bool tpInfoPrintout_
Definition: EcalFenixTcp.h:37
EcalFenixTcp::getsFGVBEB
EcalFenixTcpsFgvbEB * getsFGVBEB() const
Definition: EcalFenixTcp.h:133
gather_cfg.cout
cout
Definition: gather_cfg.py:144
EcalFenixTcp::nbMaxStrips_
int nbMaxStrips_
Definition: EcalFenixTcp.h:36
EcalFenixFgvbEB::process
void process(std::vector< int > &add_out, std::vector< int > &maxof2_out, std::vector< int > &output)
Definition: EcalFenixFgvbEB.cc:10
EcalFenixTcpFormatEE::setParameters
void setParameters(uint32_t towid, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGTowerStatus *ecaltpgbadTT, const EcalTPGSpike *ecaltpgSpike, const EcalTPGTPMode *ecaltpgTPMode)
Definition: EcalFenixTcpFormatEE.cc:120
EcalFenixTcp::maxOf2_out_
std::vector< int > maxOf2_out_
Definition: EcalFenixTcp.h:53
EcalFenixTcpFormatEB
Definition: EcalFenixTcpFormatEB.h:24
EcalFenixFgvbEB
calculation of Fgvb for Fenix Tcp, format barrel calculates fgvb for the barrel
Definition: EcalFenixFgvbEB.h:23
EcalFenixMaxof2::process
void process(std::vector< std::vector< int >> &, int nStr, int bitMask, int bitOddEven, std::vector< int > &out)
Definition: EcalFenixMaxof2.cc:13
EcalFenixTcp::adder_even_out_
std::vector< int > adder_even_out_
Definition: EcalFenixTcp.h:51
EcalFenixTcpsFgvbEB
calculation of strip Fgvb for Fenix Tcp, format barrel calculates fgvb for the barrel
Definition: EcalFenixTcpsFgvbEB.h:15
debug
#define debug
Definition: HDRShower.cc:19
EcalFenixTcp::ecaltpgLutGroup_
const EcalTPGLutGroup * ecaltpgLutGroup_
Definition: EcalFenixTcp.h:136
EcalFenixTcp::getFGVBEB
EcalFenixFgvbEB * getFGVBEB() const
Definition: EcalFenixTcp.h:131
EcalFenixTcp::debug_
bool debug_
Definition: EcalFenixTcp.h:35
EcalFenixTcp::getAdder
EcalFenixEtTot * getAdder() const
Definition: EcalFenixTcp.h:127
EcalFenixTcp::process_part1
void process_part1(std::vector< std::vector< int >> &tpframetow, int nStr, int bitMask, int bitOddEven)
Definition: EcalFenixTcp.cc:108
EcalFenixTcpFormatEE::process
virtual std::vector< int > process(const std::vector< int > &, const std::vector< int > &)
Definition: EcalFenixTcpFormatEE.h:27
EcalFenixTcp::fgvb_out_
std::vector< int > fgvb_out_
Definition: EcalFenixTcp.h:54
EcalFenixTcp::bypasslin_out_
std::vector< std::vector< int > > bypasslin_out_
Definition: EcalFenixTcp.h:50
EcalFenixTcp::adder_
EcalFenixEtTot * adder_
Definition: EcalFenixTcp.h:41
EcalFenixTcp::formatter_EB_
EcalFenixTcpFormatEB * formatter_EB_
Definition: EcalFenixTcp.h:46
EcalFenixTcpFgvbEE::process
void process(std::vector< std::vector< int >> &bypasslin_out, int nStr, int bitMask, std::vector< int > &output)
Definition: EcalFenixTcpFgvbEE.cc:12
EcalFenixTcp::ecaltpgSpike_
const EcalTPGSpike * ecaltpgSpike_
Definition: EcalFenixTcp.h:141
EcalFenixTcp::getFGVBEE
EcalFenixTcpFgvbEE * getFGVBEE() const
Definition: EcalFenixTcp.h:132
EcalFenixTcp::ecaltpgFineGrainEB_
const EcalTPGFineGrainEBIdMap * ecaltpgFineGrainEB_
Definition: EcalFenixTcp.h:138
EcalFenixTcpFormatEB::process
virtual std::vector< int > process(const std::vector< int > &, const std::vector< int > &)
Definition: EcalFenixTcpFormatEB.h:28
EcalFenixTcpFgvbEE
calculation of Fgvb for Fenix Tcp, format endcap calculates fgvb for the endcap
Definition: EcalFenixTcpFgvbEE.h:24
EcalFenixTcp::getFormatterEB
EcalFenixTcpFormatEB * getFormatterEB() const
Definition: EcalFenixTcp.h:129
EcalFenixTcp::getFormatterEE
EcalFenixTcpFormatEE * getFormatterEE() const
Definition: EcalFenixTcp.h:130
EcalFenixTcpFormatEE
Definition: EcalFenixTcpFormatEE.h:23
EcalFenixTcp::sfgvbEB_
EcalFenixTcpsFgvbEB * sfgvbEB_
Definition: EcalFenixTcp.h:44
EcalFenixTcpFgvbEE::setParameters
void setParameters(uint32_t towid, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE)
Definition: EcalFenixTcpFgvbEE.cc:41
EcalFenixEtTot
class for calculation of Et for Fenix tcp calculates the sum. As in the firmware the Et sum is splitt...
Definition: EcalFenixEtTot.h:28
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
EcalFenixTcp::formatter_EE_
EcalFenixTcpFormatEE * formatter_EE_
Definition: EcalFenixTcp.h:47
EcalFenixTcp::ecaltpgFineGrainTowerEE_
const EcalTPGFineGrainTowerEE * ecaltpgFineGrainTowerEE_
Definition: EcalFenixTcp.h:139
EcalFenixTcp::ecaltpgLut_
const EcalTPGLutIdMap * ecaltpgLut_
Definition: EcalFenixTcp.h:137
EcalFenixTcp::fgvbEB_
EcalFenixFgvbEB * fgvbEB_
Definition: EcalFenixTcp.h:42
EcalFenixTcp::process_part2_endcap
void process_part2_endcap(std::vector< std::vector< int >> &, int nStr, int bitMask, int bitOddEven, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGTowerStatus *ecaltpgBadTT, std::vector< EcalTriggerPrimitiveSample > &tptow, std::vector< EcalTriggerPrimitiveSample > &tptow2, bool isInInnerRings, EcalTrigTowerDetId towid)
Definition: EcalFenixTcp.cc:200
EcalFenixTcp::ecaltpgTPMode_
const EcalTPGTPMode * ecaltpgTPMode_
Definition: EcalFenixTcp.h:142
EcalFenixFgvbEB::setParameters
void setParameters(uint32_t towid, const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB)
Definition: EcalFenixFgvbEB.cc:71
EcalFenixTcpsFgvbEB::process
void process(std::vector< std::vector< int >> &bypasslin_out, int nStr, int bitMask, std::vector< int > &output)
Definition: EcalFenixTcpsFgvbEB.cc:7
EcalFenixTcp::ecaltpgBadTT_
const EcalTPGTowerStatus * ecaltpgBadTT_
Definition: EcalFenixTcp.h:140
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
EcalFenixTcp::getMaxOf2
EcalFenixMaxof2 * getMaxOf2() const
Definition: EcalFenixTcp.h:128
EcalFenixTcp::bypasslin_
std::vector< EcalFenixBypassLin * > bypasslin_
Definition: EcalFenixTcp.h:40
EcalFenixTcp::strip_fgvb_out_
std::vector< int > strip_fgvb_out_
Definition: EcalFenixTcp.h:55
EcalFenixTcp::maxOf2_
EcalFenixMaxof2 * maxOf2_
Definition: EcalFenixTcp.h:39
EcalFenixTcp::fgvbEE_
EcalFenixTcpFgvbEE * fgvbEE_
Definition: EcalFenixTcp.h:43