Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef SiPixelCommon_SiPixelFolderOrganizer_h
0002 #define SiPixelCommon_SiPixelFolderOrganizer_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     SiPixelCommon
0006 // Class  :     SiPixelFolderOrganizer
0007 //
0008 /**\class SiPixelFolderOrganizer SiPixelFolderOrganizer.h
0009 DQM/SiPixelCommon/interface/SiPixelFolderOrganizer.h
0010 
0011 Description: <Organizes the folders for the monitoring elements of the Pixel
0012 detector. Its methods return strings with names of folders to be created and
0013 used.>
0014 
0015 Usage:
0016 <usage>
0017 
0018 */
0019 //
0020 // Original Author:  chiochia
0021 //         Created:  Thu Jan 26 23:49:46 CET 2006
0022 #include "DQMServices/Core/interface/DQMStore.h"
0023 #include <string>
0024 #include <cstdint>
0025 
0026 class SiPixelFolderOrganizer {
0027 public:
0028   typedef dqm::legacy::DQMStore DQMStore;
0029   typedef dqm::legacy::MonitorElement MonitorElement;
0030 
0031   /// Constructor - getStore should be called false from multi-thread DQM
0032   /// applications
0033   SiPixelFolderOrganizer(bool getStore = true);
0034 
0035   /// Destructor
0036   virtual ~SiPixelFolderOrganizer();
0037 
0038   /// Set folder name for a module or plaquette
0039   // type is: BPIX  mod=0, lad=1, lay=2, phi=3,
0040   //         FPIX  mod=0, blade=4, disc=5, ring=6
0041   bool setModuleFolder(const uint32_t &rawdetid = 0, int type = 0, bool isUpgrade = false);
0042   bool setModuleFolder(DQMStore::IBooker &, const uint32_t &rawdetid = 0, int type = 0, bool isUpgrade = false);
0043   void getModuleFolder(const uint32_t &rawdetid, std::string &path, bool isUpgrade);
0044 
0045   /// Set folder name for a FED (used in the case of errors without detId)
0046   bool setFedFolder(const uint32_t FedId);
0047   bool setFedFolder(DQMStore::IBooker &, const uint32_t FedId);
0048 
0049 private:
0050   std::string topFolderName;
0051   DQMStore *dbe_;
0052 };
0053 #endif