CMS 3D CMS Logo

SiPixelCalibConfiguration Class Reference

#include <CondFormats/SiPixelObjects/interface/SiPixelCalibConfiguration.h>

List of all members.

Public Member Functions

std::vector< short > columnPatternForEvent (const uint32_t &eventnumber) const
uint32_t expectedTotalEvents () const
std::string getCalibrationMode () const
std::vector< short > getColumnPattern () const
short getNTriggers () const
std::vector< short > getRowPattern () const
const std::vector< short > getVCalValues () const
uint32_t nColumnPatterns () const
uint32_t nextPatternChangeForEvent (const uint32_t &eventnumber) const
uint32_t nPatterns () const
uint32_t nRowPatterns () const
uint32_t nVCal () const
uint32_t patternSize () const
std::vector< short > rowPatternForEvent (const uint32_t &eventnumber) const
void setCalibrationMode (const std::string &in)
void setColumnPattern (const std::vector< short > &in)
void setNTriggers (const short &in)
void setRowPattern (const std::vector< short > &in)
void setVCalValues (const std::vector< short > &in)
 SiPixelCalibConfiguration (const pos::PixelCalibConfiguration &fancyConfig)
 SiPixelCalibConfiguration ()
short vcalForEvent (const uint32_t &eventnumber) const
short vcalIndexForEvent (const uint32_t &eventnumber) const
virtual ~SiPixelCalibConfiguration ()

Private Attributes

std::vector< short > fColumnPattern
std::string fMode
short fNTriggers
std::vector< short > fRowPattern
std::vector< short > fVCalValues


Detailed Description

Definition at line 17 of file SiPixelCalibConfiguration.h.


Constructor & Destructor Documentation

SiPixelCalibConfiguration::SiPixelCalibConfiguration (  )  [inline]

Definition at line 22 of file SiPixelCalibConfiguration.h.

00022 {;}

SiPixelCalibConfiguration::SiPixelCalibConfiguration ( const pos::PixelCalibConfiguration fancyConfig  ) 

Definition at line 59 of file SiPixelCalibConfiguration.cc.

References cols, pos::PixelCalibConfiguration::columnList(), GenMuonPlsPt100GeV_cfg::cout, lat::endl(), fColumnPattern, fMode, fNTriggers, fRowPattern, fVCalValues, i, j, pos::PixelCalibConfiguration::mode(), pos::PixelCalibConfiguration::nTriggersPerPattern(), pos::PixelCalibConfiguration::rowList(), rows, pos::PixelCalibConfiguration::scanName(), and pos::PixelCalibConfiguration::scanValues().

00059                                                                                                  :
00060   fNTriggers(0),
00061   fRowPattern(std::vector<short>(0)),
00062   fColumnPattern(std::vector<short>(0)),
00063   fVCalValues(std::vector<short>(0)),
00064   fMode("unknown")
00065 
00066 { // copy constructor that uses the complex object
00067   fNTriggers = fancyConfig.nTriggersPerPattern();
00068   std::vector<int> vcalpoints(0);
00069   std::cout << "scan name = " << fancyConfig.scanName(0) << std::endl;
00070   std::vector<uint32_t> vcalpointsuint32 = fancyConfig.scanValues(fancyConfig.scanName(0));
00071   for(size_t ical=0; ical<vcalpointsuint32.size(); ++ical){
00072     short vcalinput = vcalpointsuint32[ical];
00073   
00074     std::cout << "Vcal value " << ical << " = " << vcalinput << std::endl;
00075     fVCalValues.push_back(vcalinput);
00076   }
00077   // copy row and column patterns
00078 
00079   std::vector<std::vector<uint32_t> > cols=fancyConfig.columnList();
00080   std::vector<std::vector<uint32_t> > rows= fancyConfig.rowList();
00081   for(uint32_t i=0; i<cols.size(); ++i){
00082     for(uint32_t j=0; j<cols[i].size(); ++j){
00083       short colval = cols[i][j];
00084       fColumnPattern.push_back(colval);
00085     }
00086     fColumnPattern.push_back(-1);
00087   }
00088   for(uint32_t i=0; i<rows.size(); ++i){
00089     for(uint32_t j=0; j<rows[i].size(); ++j){
00090       short rowval = rows[i][j];
00091       fRowPattern.push_back(rowval);
00092     }
00093     fRowPattern.push_back(-1);
00094   }
00095   fMode = fancyConfig.mode();
00096 }

virtual SiPixelCalibConfiguration::~SiPixelCalibConfiguration (  )  [inline, virtual]

Definition at line 25 of file SiPixelCalibConfiguration.h.

00025 {;}


Member Function Documentation

std::vector< short > SiPixelCalibConfiguration::columnPatternForEvent ( const uint32_t &  eventnumber  )  const

Definition at line 13 of file SiPixelCalibConfiguration.cc.

References fColumnPattern, icol, nColumnPatterns(), patternSize(), and HLT_VtxMuL3::result.

00013                                                                                                    {
00014   std::vector<short> result;
00015   uint32_t patternnumber = eventnumber/patternSize();
00016   uint32_t colpatternnumber = patternnumber%nColumnPatterns();
00017 
00018   uint32_t nminuscol=0;
00019   for(size_t icol=0; icol<fColumnPattern.size(); icol++){
00020     if(fColumnPattern[icol]==-1)
00021       nminuscol++;
00022     else if(nminuscol>colpatternnumber)
00023       break;
00024     else if(nminuscol==colpatternnumber){
00025       short val = fColumnPattern[icol];
00026       result.push_back(val);
00027     }
00028   }
00029   return result;
00030 }

uint32_t SiPixelCalibConfiguration::expectedTotalEvents (  )  const

Definition at line 55 of file SiPixelCalibConfiguration.cc.

References nPatterns(), and patternSize().

00055                                                               {
00056   return patternSize()*nPatterns();
00057 }

std::string SiPixelCalibConfiguration::getCalibrationMode (  )  const [inline]

Definition at line 39 of file SiPixelCalibConfiguration.h.

References fMode.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00039 {return fMode;}

std::vector<short> SiPixelCalibConfiguration::getColumnPattern (  )  const [inline]

Definition at line 35 of file SiPixelCalibConfiguration.h.

References fColumnPattern.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00035 { return fColumnPattern;}

short SiPixelCalibConfiguration::getNTriggers (  )  const [inline]

Definition at line 29 of file SiPixelCalibConfiguration.h.

References fNTriggers.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral(), and vcalIndexForEvent().

00029 { return fNTriggers;}

std::vector<short> SiPixelCalibConfiguration::getRowPattern (  )  const [inline]

Definition at line 32 of file SiPixelCalibConfiguration.h.

References fRowPattern.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00032 { return fRowPattern;}

const std::vector<short> SiPixelCalibConfiguration::getVCalValues (  )  const [inline]

Definition at line 41 of file SiPixelCalibConfiguration.h.

References fVCalValues.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00041 { return fVCalValues;}

uint32_t SiPixelCalibConfiguration::nColumnPatterns (  )  const

Definition at line 106 of file SiPixelCalibConfiguration.cc.

References fColumnPattern, and i.

Referenced by columnPatternForEvent(), nPatterns(), and rowPatternForEvent().

00106                                                          {
00107   uint32_t ncols = 0;
00108   
00109   for(std::vector<short>::const_iterator i=fColumnPattern.begin();i!=fColumnPattern.end();++i){
00110     if(*i == -1)
00111     ncols++;
00112   }
00113   return ncols;
00114 }

uint32_t SiPixelCalibConfiguration::nextPatternChangeForEvent ( const uint32_t &  eventnumber  )  const

Definition at line 50 of file SiPixelCalibConfiguration.cc.

References patternSize().

00050                                                                                                 {
00051   uint32_t relative_event = eventnumber/patternSize();
00052   relative_event+=1;
00053   return relative_event*patternSize();
00054 }

uint32_t SiPixelCalibConfiguration::nPatterns (  )  const [inline]

Definition at line 52 of file SiPixelCalibConfiguration.h.

References nColumnPatterns(), and nRowPatterns().

Referenced by expectedTotalEvents().

00052 {return nRowPatterns()*nColumnPatterns();}

uint32_t SiPixelCalibConfiguration::nRowPatterns (  )  const

Definition at line 98 of file SiPixelCalibConfiguration.cc.

References fRowPattern, and i.

Referenced by nPatterns().

00098                                                       {
00099  uint32_t nrows = 0;
00100  for(std::vector<short>::const_iterator i=fRowPattern.begin();i!=fRowPattern.end();++i){
00101    if(*i == -1)
00102     nrows++;
00103   }
00104   return nrows;
00105 }

uint32_t SiPixelCalibConfiguration::nVCal (  )  const [inline]

Definition at line 55 of file SiPixelCalibConfiguration.h.

References fVCalValues.

00055 { return fVCalValues.size();}

uint32_t SiPixelCalibConfiguration::patternSize (  )  const [inline]

Definition at line 51 of file SiPixelCalibConfiguration.h.

References fNTriggers, and fVCalValues.

Referenced by columnPatternForEvent(), expectedTotalEvents(), nextPatternChangeForEvent(), rowPatternForEvent(), and vcalIndexForEvent().

00051 {return fNTriggers*fVCalValues.size();}

std::vector< short > SiPixelCalibConfiguration::rowPatternForEvent ( const uint32_t &  eventnumber  )  const

Definition at line 32 of file SiPixelCalibConfiguration.cc.

References fRowPattern, nColumnPatterns(), patternSize(), and HLT_VtxMuL3::result.

00032                                                                                                  {
00033   std::vector<short> result;
00034   uint32_t patternnumber = eventnumber/patternSize();
00035   uint32_t rowpatternnumber = patternnumber/nColumnPatterns();
00036 
00037   uint32_t nminusrow=0;
00038   for(size_t irow=0; irow<fRowPattern.size(); irow++){
00039     if(fRowPattern[irow]==-1)
00040       nminusrow++;
00041     else if(nminusrow>rowpatternnumber)
00042       break;
00043     else if(nminusrow==rowpatternnumber){
00044       short val = fRowPattern[irow];
00045       result.push_back(val);
00046     }
00047   }
00048   return result;
00049 }

void SiPixelCalibConfiguration::setCalibrationMode ( const std::string &  in  )  [inline]

Definition at line 38 of file SiPixelCalibConfiguration.h.

References fMode.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00038 { fMode = in; }

void SiPixelCalibConfiguration::setColumnPattern ( const std::vector< short > &  in  )  [inline]

Definition at line 36 of file SiPixelCalibConfiguration.h.

References fColumnPattern.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00036 { fColumnPattern = in; }

void SiPixelCalibConfiguration::setNTriggers ( const short &  in  )  [inline]

Definition at line 30 of file SiPixelCalibConfiguration.h.

References fNTriggers.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00030 { fNTriggers = in; }

void SiPixelCalibConfiguration::setRowPattern ( const std::vector< short > &  in  )  [inline]

Definition at line 33 of file SiPixelCalibConfiguration.h.

References fRowPattern.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00033 { fRowPattern = in; }

void SiPixelCalibConfiguration::setVCalValues ( const std::vector< short > &  in  )  [inline]

Definition at line 42 of file SiPixelCalibConfiguration.h.

References fVCalValues.

Referenced by PixelPopConCalibSourceHandler::getNewObjects_coral().

00042 { fVCalValues = in; }

short SiPixelCalibConfiguration::vcalForEvent ( const uint32_t &  eventnumber  )  const

Definition at line 9 of file SiPixelCalibConfiguration.cc.

References fVCalValues, HLT_VtxMuL3::result, and vcalIndexForEvent().

00009                                                                                {
00010   short result = fVCalValues[vcalIndexForEvent(eventnumber)];
00011   return result;
00012 }

short SiPixelCalibConfiguration::vcalIndexForEvent ( const uint32_t &  eventnumber  )  const

Definition at line 4 of file SiPixelCalibConfiguration.cc.

References funct::abs(), getNTriggers(), and patternSize().

Referenced by vcalForEvent().

00004                                                                                     {
00005   uint32_t relative_event = abs(eventnumber-1)%patternSize();
00006   short relative_pattern = relative_event/getNTriggers();
00007   return relative_pattern; 
00008 }


Member Data Documentation

std::vector<short> SiPixelCalibConfiguration::fColumnPattern [private]

Definition at line 61 of file SiPixelCalibConfiguration.h.

Referenced by columnPatternForEvent(), getColumnPattern(), nColumnPatterns(), setColumnPattern(), and SiPixelCalibConfiguration().

std::string SiPixelCalibConfiguration::fMode [private]

Definition at line 63 of file SiPixelCalibConfiguration.h.

Referenced by getCalibrationMode(), setCalibrationMode(), and SiPixelCalibConfiguration().

short SiPixelCalibConfiguration::fNTriggers [private]

Definition at line 59 of file SiPixelCalibConfiguration.h.

Referenced by getNTriggers(), patternSize(), setNTriggers(), and SiPixelCalibConfiguration().

std::vector<short> SiPixelCalibConfiguration::fRowPattern [private]

Definition at line 60 of file SiPixelCalibConfiguration.h.

Referenced by getRowPattern(), nRowPatterns(), rowPatternForEvent(), setRowPattern(), and SiPixelCalibConfiguration().

std::vector<short> SiPixelCalibConfiguration::fVCalValues [private]

Definition at line 62 of file SiPixelCalibConfiguration.h.

Referenced by getVCalValues(), nVCal(), patternSize(), setVCalValues(), SiPixelCalibConfiguration(), and vcalForEvent().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:31:50 2009 for CMSSW by  doxygen 1.5.4