![]() |
![]() |
calculates .... for Fenix strip, barrel input: 18 bits output: 18 bits More...
#include <EcalFenixAmplitudeFilter.h>
Public Member Functions | |
EcalFenixAmplitudeFilter () | |
virtual void | process (std::vector< int > &addout, std::vector< int > &output) |
void | setParameters (uint32_t raw, const EcalTPGWeightIdMap *ecaltpgWeightMap, const EcalTPGWeightGroup *ecaltpgWeightGroup) |
virtual | ~EcalFenixAmplitudeFilter () |
Private Member Functions | |
int | process () |
int | setInput (int input) |
Private Attributes | |
int | buffer_ [5] |
int | inputsAlreadyIn_ |
int | shift_ |
int | weights_ [5] |
calculates .... for Fenix strip, barrel input: 18 bits output: 18 bits
\ class EcalFenixAmplitudeFilter
Definition at line 17 of file EcalFenixAmplitudeFilter.h.
EcalFenixAmplitudeFilter::EcalFenixAmplitudeFilter | ( | ) |
Definition at line 8 of file EcalFenixAmplitudeFilter.cc.
:inputsAlreadyIn_(0), shift_(6) { }
EcalFenixAmplitudeFilter::~EcalFenixAmplitudeFilter | ( | ) | [virtual] |
Definition at line 12 of file EcalFenixAmplitudeFilter.cc.
{ }
int EcalFenixAmplitudeFilter::process | ( | ) | [private] |
Definition at line 56 of file EcalFenixAmplitudeFilter.cc.
References buffer_, i, inputsAlreadyIn_, convertSQLitetoXML_cfg::output, shift_, and weights_.
Referenced by process(), and EcalFenixStrip::process_part1().
void EcalFenixAmplitudeFilter::process | ( | std::vector< int > & | addout, |
std::vector< int > & | output | ||
) | [virtual] |
Definition at line 35 of file EcalFenixAmplitudeFilter.cc.
References buffer_, i, inputsAlreadyIn_, process(), and setInput().
{ // test inputsAlreadyIn_=0; for (unsigned int i =0;i<5;i++) buffer_[i]=0;//FIXME: 5 // test end for (unsigned int i =0;i<addout.size();i++){ setInput(addout[i]); output[i]=process(); } // shift the result by 1! for (unsigned int i=0 ; i<(output.size());i++){ if (i!=output.size()-1) output[i]=output[i+1]; else output[i]=0; } return; }
int EcalFenixAmplitudeFilter::setInput | ( | int | input | ) | [private] |
Definition at line 15 of file EcalFenixAmplitudeFilter.cc.
References buffer_, gather_cfg::cout, i, collect_tpl::input, and inputsAlreadyIn_.
Referenced by process().
void EcalFenixAmplitudeFilter::setParameters | ( | uint32_t | raw, |
const EcalTPGWeightIdMap * | ecaltpgWeightMap, | ||
const EcalTPGWeightGroup * | ecaltpgWeightGroup | ||
) |
Definition at line 70 of file EcalFenixAmplitudeFilter.cc.
References i, runTheMatrix_dev::raw, and weights_.
Referenced by EcalFenixStrip::process_part1().
{ uint32_t params_[5]; const EcalTPGGroups::EcalTPGGroupsMap & groupmap = ecaltpgWeightGroup -> getMap(); EcalTPGGroups::EcalTPGGroupsMapItr it = groupmap.find(raw); if (it!=groupmap.end()) { uint32_t weightid =(*it).second; const EcalTPGWeightIdMap::EcalTPGWeightMap & weightmap = ecaltpgWeightMap -> getMap(); EcalTPGWeightIdMap::EcalTPGWeightMapItr itw = weightmap.find(weightid); (*itw).second.getValues(params_[0],params_[1],params_[2],params_[3],params_[4]); // we have to transform negative coded in 7 bits into negative coded in 32 bits // maybe this should go into the getValue method?? for (int i=0;i<5;++i){ weights_[i] = (params_[i] & 0x40) ? (int)( params_[i] | 0xffffffc0) : (int)(params_[i]); } } else edm::LogWarning("EcalTPG")<<" could not find EcalTPGGroupsMap entry for "<<raw; }
int EcalFenixAmplitudeFilter::buffer_[5] [private] |
Definition at line 23 of file EcalFenixAmplitudeFilter.h.
Referenced by process(), and setInput().
int EcalFenixAmplitudeFilter::inputsAlreadyIn_ [private] |
Definition at line 22 of file EcalFenixAmplitudeFilter.h.
Referenced by process(), and setInput().
int EcalFenixAmplitudeFilter::shift_ [private] |
Definition at line 25 of file EcalFenixAmplitudeFilter.h.
Referenced by process().
int EcalFenixAmplitudeFilter::weights_[5] [private] |
Definition at line 24 of file EcalFenixAmplitudeFilter.h.
Referenced by process(), and setParameters().