CMS 3D CMS Logo

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>

List of all members.

Public Member Functions

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

Private Attributes

const
EcalTPGFineGrainStripEE::Item
fgparams_

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 6 of file EcalFenixStripFgvbEE.cc.

{
}
EcalFenixStripFgvbEE::~EcalFenixStripFgvbEE ( ) [virtual]

Definition at line 10 of file EcalFenixStripFgvbEE.cc.

                                           {
}

Member Function Documentation

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

Definition at line 13 of file EcalFenixStripFgvbEE.cc.

References ecalMGPA::adc(), fgparams_, i, EcalTPGFineGrainStripEE::Item::lut, and EcalTPGFineGrainStripEE::Item::threshold.

Referenced by EcalFenixStrip::process_part2_endcap().

{
  unsigned int maskFgvb[]={1,2,4,8,0x10};

  //  int threshold_fg = (*params_)[6];
  //  int lut_fg = (*params_)[7];

  int threshold_fg = fgparams_->threshold ;
  int lut_fg = fgparams_->lut ;

  
  std::vector<int> indexLut(output.size());

  for (unsigned int i=0;i<output.size();i++) {
    output[i]=0;
    indexLut[i]=0;
    for (unsigned int ixtal=0;ixtal<linout.size();ixtal++) {
      int adc=linout[ixtal][i];
      int res= (adc>threshold_fg) ? 1 : 0;
      indexLut[i]=indexLut[i] | (res <<ixtal & maskFgvb[ixtal]);
    }
    int mask = 1<<indexLut[i];
    output[i]= lut_fg & mask;
    if (output[i]>0) output[i]=1;
  }
  return;
}  
void EcalFenixStripFgvbEE::setParameters ( uint32_t  id,
const EcalTPGFineGrainStripEE ecaltpgFgStripEE 
)

Definition at line 41 of file EcalFenixStripFgvbEE.cc.

References fgparams_, and EBDataFrame::id().

Referenced by EcalFenixStrip::process_part2_endcap().

{
  const EcalTPGFineGrainStripEEMap &fgmap = ecaltpgFgStripEE -> getMap();
  EcalTPGFineGrainStripEEMapIterator it=fgmap.find(id);
  if (it!=fgmap.end()) fgparams_=&(*it).second;
  else edm::LogWarning("EcalTPG")<<" could not find EcalTPGFineGrainStripEEMap entry for "<<id;
   
    

}

Member Data Documentation

Definition at line 25 of file EcalFenixStripFgvbEE.h.

Referenced by process(), and setParameters().