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 Attributes
EcalFenixStripFgvbEE Class Reference

calculation of Fgvb for the endcap in Fenix Strip calculates fgvb for the endcap in Fenix Strip More...

#include <EcalFenixStripFgvbEE.h>

Public Member Functions

 EcalFenixStripFgvbEE ()
 
bool getMissedStripFlag () const
 
void process (std::vector< std::vector< int > > &lin_out, std::vector< int > &output)
 
void setbadStripMissing (bool flag)
 
void setParameters (int identif, uint32_t id, const EcalTPGFineGrainStripEE *)
 
virtual ~EcalFenixStripFgvbEE ()
 

Private Attributes

bool flagBadStripMiss_
 
int identif_
 
int lut_fg_
 
int threshold_fg_
 

Detailed Description

calculation of Fgvb for the endcap in Fenix Strip calculates fgvb for the endcap in Fenix Strip

input: 5X18 bits output: 1 bit

Definition at line 21 of file EcalFenixStripFgvbEE.h.

Constructor & Destructor Documentation

EcalFenixStripFgvbEE::EcalFenixStripFgvbEE ( )

Definition at line 7 of file EcalFenixStripFgvbEE.cc.

References flagBadStripMiss_, and identif_.

EcalFenixStripFgvbEE::~EcalFenixStripFgvbEE ( )
virtual

Definition at line 13 of file EcalFenixStripFgvbEE.cc.

13  {
14 }

Member Function Documentation

bool EcalFenixStripFgvbEE::getMissedStripFlag ( ) const
inline

Definition at line 36 of file EcalFenixStripFgvbEE.h.

References flagBadStripMiss_.

Referenced by EcalFenixStrip::process().

void EcalFenixStripFgvbEE::process ( std::vector< std::vector< int > > &  lin_out,
std::vector< int > &  output 
)

Definition at line 16 of file EcalFenixStripFgvbEE.cc.

References ecalMGPA::adc(), i, lut_fg_, and threshold_fg_.

Referenced by ConfigBuilder.ConfigBuilder.PrintAllModules::leave(), and EcalFenixStrip::process_part1().

17 {
18  std::vector<int> indexLut(output.size());
19 
20  for (unsigned int i=0;i<output.size();i++) {
21  output[i]=0;
22  indexLut[i]=0;
23  for (unsigned int ixtal=0;ixtal<linout.size();ixtal++) {
24  int adc=linout[ixtal][i];
25  int res = (((adc & 0xffff) > threshold_fg_) || ((adc & 0x30000) != 0x0)) ? 1 : 0;
26  indexLut[i] = indexLut[i] | (res << ixtal);
27  }
28  int mask = 1<<(indexLut[i]);
29  output[i]= ((lut_fg_ & mask) == 0x0) ? 0 : 1;
30  if(i > 0) output[i-1] = output[i]; // Delay one clock
31  }
32  return;
33 }
int adc(sample_type sample)
get the ADC sample (12 bits)
int i
Definition: DBlmapReader.cc:9
void EcalFenixStripFgvbEE::setbadStripMissing ( bool  flag)
inline

Definition at line 35 of file EcalFenixStripFgvbEE.h.

References flagBadStripMiss_.

Referenced by EcalTrigPrimFunctionalAlgo::run_part2().

long int flag
Definition: mlp_lapack.h:47
void EcalFenixStripFgvbEE::setParameters ( int  identif,
uint32_t  id,
const EcalTPGFineGrainStripEE ecaltpgFgStripEE 
)

Definition at line 35 of file EcalFenixStripFgvbEE.cc.

References flagBadStripMiss_, lut_fg_, and threshold_fg_.

Referenced by EcalFenixStrip::process_part1().

36 {
37  const EcalTPGFineGrainStripEEMap &fgmap = ecaltpgFgStripEE -> getMap();
38  EcalTPGFineGrainStripEEMapIterator it=fgmap.find(id);
39  if (it!=fgmap.end()){
40  threshold_fg_ = it->second.threshold;
41  lut_fg_ = it->second.lut;
42  }
43  else
44  {
45  if (identif == false){
46  edm::LogWarning("EcalTPG")<<" could not find EcalTPGFineGrainStripEEMap entry for at least one stripId";
47  flagBadStripMiss_ = true;
48  }
49 
50  // Use the FENIX power-up values
51  threshold_fg_ = 65535;
52  lut_fg_ = 0x0;
53  }
54 
55 }
std::map< uint32_t, EcalTPGFineGrainStripEE::Item > EcalTPGFineGrainStripEEMap
std::map< uint32_t, EcalTPGFineGrainStripEE::Item >::const_iterator EcalTPGFineGrainStripEEMapIterator

Member Data Documentation

bool EcalFenixStripFgvbEE::flagBadStripMiss_
private
int EcalFenixStripFgvbEE::identif_
private

Definition at line 26 of file EcalFenixStripFgvbEE.h.

Referenced by EcalFenixStripFgvbEE().

int EcalFenixStripFgvbEE::lut_fg_
private

Definition at line 25 of file EcalFenixStripFgvbEE.h.

Referenced by process(), and setParameters().

int EcalFenixStripFgvbEE::threshold_fg_
private

Definition at line 24 of file EcalFenixStripFgvbEE.h.

Referenced by process(), and setParameters().