Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:38

0001 #ifndef SiStripCommon_SiStripHistoId_h
0002 #define SiStripCommon_SiStripHistoId_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     SiStripCommon
0006 // Class  :     SiStripHistoId
0007 //
0008 /**\class SiStripHistoId SiStripHistoId.h DQM/SiStripCommon/interface/SiStripHistoId.h
0009 
0010  Description: <one line class summary>
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 //
0017 // Original Author:  dkcira
0018 //         Created:  Wed Feb 22 16:07:51 CET 2006
0019 //
0020 
0021 #include <string>
0022 #include <cstdint>
0023 
0024 class TrackerTopology;
0025 class SiStripHistoId {
0026 public:
0027   SiStripHistoId();
0028   SiStripHistoId(const SiStripHistoId&) = delete;                   // stop default
0029   const SiStripHistoId& operator=(const SiStripHistoId&) = delete;  // stop default
0030   virtual ~SiStripHistoId();
0031   // generally: histoid = description + separator1 + id_type + separator2 + component_id
0032   std::string createHistoId(std::string description, std::string id_type, uint32_t component_id);
0033   std::string createHistoLayer(std::string description, std::string id_type, std::string path, std::string flag);
0034   //      std::string getSubdetid(uint32_t id, const TrackerTopology* tTopo, bool flag_ring, bool flag_thickness = false);
0035   std::string getSubdetid(uint32_t id, const TrackerTopology* tTopo, bool flag_ring);
0036   // extract the component_id and the id_type from a histogram id
0037   uint32_t getComponentId(std::string histoid);
0038   std::string getComponentType(std::string histoid);
0039 
0040 private:
0041   std::string returnIdPart(std::string histoid, uint32_t whichpart);
0042 };
0043 
0044 #endif