CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DataFormats/SiStripDetId/interface/SiStripSubStructure.h

Go to the documentation of this file.
00001 #ifndef SiStripDetId_SiStripSubStructure_h
00002 #define SiStripDetId_SiStripSubStructure_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     SiStripDetId
00006 // Class  :     SiStripSubStructure
00007 // 
00016 //
00017 // Original Author:  dkcira
00018 //         Created:  Wed Jan 25 07:18:21 CET 2006
00019 // $Id: SiStripSubStructure.h,v 1.5 2009/02/05 22:26:20 elmer Exp $
00020 //
00021 
00022 #include <vector>
00023 #include <stdint.h>
00024 
00025 class SiStripSubStructure
00026 {
00027 
00028    public:
00029       SiStripSubStructure();
00030       virtual ~SiStripSubStructure();
00031 
00032       void getTIBDetectors(const std::vector<uint32_t> & inputDetRawIds, // INPUT
00033                            std::vector<uint32_t> & tibDetRawIds,         // OUTPUT
00034                            uint32_t layer         = 0,                   // SELECTION: layer = 1..4, 0(ALL)
00035                            uint32_t bkw_frw = 0,                         // bkw_frw = 1(TIB-), 2(TIB+) 0(ALL)
00036                            uint32_t int_ext = 0,                         // int_ext = 1 (internal), 2(external), 0(ALL)
00037                            uint32_t string        = 0) const;            // string = 1..N, 0(ALL)
00038 
00039       void getTIDDetectors(const std::vector<uint32_t> & inputDetRawIds, // INPUT
00040                            std::vector<uint32_t> & tidDetRawIds,         // OUTPUT
00041                            uint32_t side        = 0,                     // SELECTION: side = 1(back), 2(front), 0(ALL)
00042                            uint32_t wheel       = 0,                     // wheel = 1..3, 0(ALL)
00043                            uint32_t ring        = 0,                     // ring  = 1..3, 0(ALL)
00044                            uint32_t ster        = 0) const;              // ster = 1(stereo), else (nonstereo), 0(ALL)
00045 
00046       void getTOBDetectors(const std::vector<uint32_t> & inputDetRawIds, // INPUT
00047                            std::vector<uint32_t> & tobDetRawIds,         // OUTPUT
00048                            uint32_t layer      = 0,                      // SELECTION: layer = 1..6, 0(ALL)
00049                            uint32_t bkw_frw    = 0,                      // bkw_frw = 1(TOB-) 2(TOB+) 0(everything)
00050                            uint32_t rod        = 0) const;               // rod = 1..N, 0(ALL)
00051 
00052 
00053       void getTECDetectors(const std::vector<uint32_t> & inputDetRawIds, // INPUT
00054                            std::vector<uint32_t> & tecDetRawIds,         // OUTPUT
00055                            uint32_t side          = 0,                   // SELECTION: side = 1(TEC-), 2(TEC+),  0(ALL)
00056                            uint32_t wheel         = 0,                   // wheel = 1..9, 0(ALL)
00057                            uint32_t petal_bkw_frw = 0,                   // petal_bkw_frw = 1(backward) 2(forward) 0(all)
00058                            uint32_t petal         = 0,                   // petal = 1..8, 0(ALL)
00059                            uint32_t ring          = 0,                   // ring = 1..7, 0(ALL)
00060                            uint32_t ster          = 0) const;            // ster = 1(sterero), else(nonstereo), 0(ALL)
00061 
00062    private:
00063       SiStripSubStructure(const SiStripSubStructure&); // stop default
00064 
00065       const SiStripSubStructure& operator=(const SiStripSubStructure&); // stop default
00066 
00067       // ---------- member data --------------------------------
00068 
00069 };
00070 
00071 #endif