|
|
Go to the documentation of this file.
37 : runnumbers_(0), eventCounter_(0) {
47 throw cms::Exception(
"") <<
"ERROR: Classes derived from SiPixelOfflineCalibAnalysisBase must call "
48 "SiPixelOfflineCalibAnalysisBase::SiPixelOfflineCalibAnalysisBase(const "
49 "edm::ParameterSet& iConfig) from their constructor."
78 bool foundnumber =
false;
79 for (
size_t iter = 0; iter <
runnumbers_.size() && !foundnumber; ++iter) {
95 for (digiIter = thePlaquettes->begin(); digiIter != thePlaquettes->end(); ++digiIter) {
96 uint32_t detId = digiIter->id;
105 for (ipix = digiIter->data.
begin(); ipix != digiIter->
end(); ++ipix) {
107 this->
doFits(detId, ipix);
121 std::cout <<
"!!!! in beginRun" << std::endl;
124 <<
" Vcal steps: " <<
vCalValues_.size() << std::endl;
147 std::map<uint32_t, std::string>::iterator detNameIter =
detIdNames_.find(detid);
149 return detNameIter->second;
153 uint32_t detSubId = detId.
subdetId();
154 if (detSubId > 2 || detSubId < 1) {
156 <<
"ERROR: Expected a pixel detector ID (1 - barrel, 2 - forward) but got " << detSubId << std::endl;
222 short row = ipix->row();
223 short col = ipix->col();
224 std::vector<uint8_t> nentries = ipix->getnentries();
225 std::vector<uint32_t> sum = ipix->getsum();
226 std::vector<uint32_t> sumquares = ipix->getsumsquares();
231 std::cout <<
"Row: " << row <<
" Col: " <<
col << std::endl;
232 for (
unsigned int i = 0;
i < sum.size();
i++) {
249 <<
"SiPixelOfflineCalibAnalysisBase - Found new DetID: " << detid <<
" Name: " <<
detIdNames_[detid];
268 formatter.toCabling(cabling,
detector);
276 short localrow = locpixel.
rocRow();
277 short localcol = locpixel.
rocCol();
283 for (
size_t irow = 0; irow < calibrows.size(); ++irow) {
284 if (calibrows[irow] == localrow) {
286 for (
size_t icol = 0; icol < calibcols.size(); ++icol) {
287 if (calibcols[icol] == localcol)
299 ele->
getTH1()->GetListOfFunctions()->Add(
func);
const TrackerGeomDet * idToDet(DetId) const override
edm::EDGetTokenT< edm::DetSetVector< SiPixelCalibDigi > > tPixelCalibDigi
T const * product() const
std::string outputFileName_
void addTF1ToDQMMonitoringElement(MonitorElement *ele, TF1 *func)
std::string translateDetIdToString(uint32_t detid)
virtual bool doFits(uint32_t detid, std::vector< SiPixelCalibDigi >::const_iterator ipix)
edm::ESHandle< SiPixelCalibConfiguration > calib_
std::string calibrationMode_
iterator end()
Return the off-the-end iterator.
const std::vector< short > getVCalValues() const
bool setModuleFolder(const uint32_t &rawdetid=0, int type=0, bool isUpgrade=false)
Set folder name for a module or plaquette.
short getNTriggers() const
static TF1 * fitFunction_
std::map< uint32_t, std::string > detIdNames_
SiPixelOfflineCalibAnalysisBase()
iterator begin()
Return an iterator to the first DetSet.
MonitorElement * bookDQMHistogram1D(uint32_t detid, std::string name, std::string title, int nchX, double lowX, double highX)
T getUntrackedParameter(std::string const &, T const &) const
Log< level::Info, false > LogInfo
virtual void calibrationSetup(const edm::EventSetup &iSetup)
SiPixelFolderOrganizer * folderMaker_
static std::vector< short > vCalValues_
identify pixel inside single ROC
std::string name() const override
from base class
std::string getCalibrationMode() const
std::string setHistoId(std::string variable, uint32_t &rawId)
Set Histogram Id.
virtual int ncolumns() const =0
edm::ESHandle< TrackerGeometry > geom_
void setCurrentFolder(std::string const &fullpath) override
DQM_DEPRECATED void save(std::string const &filename, std::string const &path="")
MonitorElement * bookDQMHistoPlaquetteSummary2D(uint32_t detid, std::string name, std::string title)
virtual TH1 * getTH1() const
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
double collumn and pixel ID in double collumn representation
virtual void calibrationEnd()
collection_type::const_iterator const_iterator
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
bool setDQMDirectory(std::string dirName)
void analyze(const edm::Event &, const edm::EventSetup &) override
Log< level::Error, false > LogError
std::vector< uint32_t > runnumbers_
edm::InputTag siPixelCalibDigiProducer_
virtual void newDetID(uint32_t detid)
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
std::vector< short > getColumnPattern() const
virtual bool checkCorrectCalibrationType()
T getParameter(std::string const &) const
edm::ESHandle< SiPixelFedCablingMap > theCablingMap_
static const std::vector< short > * getVcalValues()
bool checkPixel(uint32_t detid, short row, short column)
std::vector< short > getRowPattern() const
std::string name() const override
from base class
std::map< uint32_t, int > detIdsEntered_
virtual int nrows() const =0
MonitorElement * bookDQMHistogram2D(uint32_t detid, std::string name, std::string title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
virtual bool dirExists(std::string const &path) const
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
void beginRun(const edm::Run &, const edm::EventSetup &) override
SiPixelHistogramId * theHistogramIdWorker_
~SiPixelOfflineCalibAnalysisBase() override
collection_type::const_iterator const_iterator