Formatting for Fenix strip input: 18 bits + 3x 1bit (fgvb, gapflagbit, output from peakfinder) output:16 bits The output corresponds to 1 calodataframe per strip --- not really a calodataframe no? More...
#include <EcalFenixStripFormatEB.h>
Public Member Functions | |
EcalFenixStripFormatEB () | |
virtual void | process (std::vector< int > &, std::vector< int > &, std::vector< int > &, std::vector< int > &) |
void | setParameters (uint32_t &, const EcalTPGSlidingWindow *&) |
virtual | ~EcalFenixStripFormatEB () |
Private Member Functions | |
int | process () |
int | setInput (int input, int inputPeak, int inputsFGVB) |
Private Attributes | |
int | input_ |
int | inputPeak_ |
int | inputsFGVB_ |
uint32_t | shift_ |
Formatting for Fenix strip input: 18 bits + 3x 1bit (fgvb, gapflagbit, output from peakfinder) output:16 bits The output corresponds to 1 calodataframe per strip --- not really a calodataframe no?
Definition at line 19 of file EcalFenixStripFormatEB.h.
EcalFenixStripFormatEB::EcalFenixStripFormatEB | ( | ) |
Definition at line 5 of file EcalFenixStripFormatEB.cc.
: shift_(0) { }
EcalFenixStripFormatEB::~EcalFenixStripFormatEB | ( | ) | [virtual] |
Definition at line 10 of file EcalFenixStripFormatEB.cc.
{ }
int EcalFenixStripFormatEB::process | ( | ) | [private] |
Definition at line 21 of file EcalFenixStripFormatEB.cc.
References input_, inputPeak_, inputsFGVB_, convertSQLitetoXML_cfg::output, and shift_.
Referenced by process(), and EcalFenixStrip::process_part2_barrel().
{ // buffer_=input_>>shift_; //FIXME: buffer why? if(inputPeak_==0) return ((inputsFGVB_&0x1)<<12); // int output=buffer_; int output=input_>>shift_; if(output>0XFFF) output=0XFFF; //ok: barrel saturates at 12 bits // Add stripFGVB output |= ((inputsFGVB_&0x1)<<12); return output; }
void EcalFenixStripFormatEB::process | ( | std::vector< int > & | sFGVBout, |
std::vector< int > & | peakout, | ||
std::vector< int > & | filtout, | ||
std::vector< int > & | output | ||
) | [virtual] |
Definition at line 35 of file EcalFenixStripFormatEB.cc.
References i, process(), and setInput().
{ if (peakout.size()!=filtout.size() || sFGVBout.size()!=filtout.size()){ edm::LogWarning("EcalTPG")<<" problem in EcalFenixStripFormatEB: sfgvb_out, peak_out and filt_out don't have the same size"; } for (unsigned int i =0;i<filtout.size();i++){ setInput(filtout[i],peakout[i], sFGVBout[i]); output[i]=process(); } return; }
int EcalFenixStripFormatEB::setInput | ( | int | input, |
int | inputPeak, | ||
int | inputsFGVB | ||
) | [private] |
Definition at line 13 of file EcalFenixStripFormatEB.cc.
References LaserDQM_cfg::input, input_, inputPeak_, and inputsFGVB_.
Referenced by process().
{ inputsFGVB_ = inputsFGVB; inputPeak_=inputPeak; input_=input; return 0; }
void EcalFenixStripFormatEB::setParameters | ( | uint32_t & | id, |
const EcalTPGSlidingWindow *& | slWin | ||
) |
Definition at line 48 of file EcalFenixStripFormatEB.cc.
References EBDataFrame::id(), and shift_.
Referenced by EcalFenixStrip::process_part2_barrel().
{ const EcalTPGSlidingWindowMap &slwinmap = slWin -> getMap(); EcalTPGSlidingWindowMapIterator it=slwinmap.find(id); if (it!=slwinmap.end()) shift_=(*it).second; else edm::LogWarning("EcalTPG")<<" could not find EcalTPGSlidingWindowMap entry for "<<id; }
int EcalFenixStripFormatEB::input_ [private] |
Definition at line 24 of file EcalFenixStripFormatEB.h.
Referenced by process(), and setInput().
int EcalFenixStripFormatEB::inputPeak_ [private] |
Definition at line 23 of file EcalFenixStripFormatEB.h.
Referenced by process(), and setInput().
int EcalFenixStripFormatEB::inputsFGVB_ [private] |
Definition at line 22 of file EcalFenixStripFormatEB.h.
Referenced by process(), and setInput().
uint32_t EcalFenixStripFormatEB::shift_ [private] |
Definition at line 25 of file EcalFenixStripFormatEB.h.
Referenced by process(), and setParameters().