CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch2/src/CondFormats/L1TObjects/interface/L1RPCConeDefinition.h

Go to the documentation of this file.
00001 #ifndef CondFormats_L1TObjects_L1RPCConeDefinition_h
00002 #define CondFormats_L1TObjects_L1RPCConeDefinition_h
00003 
00004 #include <vector>
00005 
00006 class L1RPCConeDefinition {
00007 
00008 
00009 
00010   public:
00011       //  For logplane sizes
00012     //typedef std::vector<int> TLogPlaneSize;
00013     //typedef std::vector<TLogPlaneSize > TLPSizesInTowers;
00014     struct TLPSize {
00015 //      TLPSize(signed char t, signed char lp, unsigned char size) : 
00016 //          m_tower(t), m_LP(lp), m_size(size) {};
00017       signed char m_tower;
00018       signed char m_LP;
00019       unsigned char m_size;
00020     };
00021     typedef std::vector<TLPSize> TLPSizeVec;
00022 
00023     
00024           
00025       // For (roll,hwplane)->tower mapping
00026       /*
00027     typedef std::vector<int> TTowerList;
00028     typedef std::vector<TTowerList > THWplaneToTower;
00029     typedef std::vector<THWplaneToTower > TRingsToTowers;*/
00030 
00031     struct TRingToTower {
00032 //      TRingToTower(signed char ep, signed char hp, signed char t, unsigned char i) : 
00033 //        m_etaPart(ep), m_hwPlane(hp), m_tower(t), m_index(i) {};
00034       signed char m_etaPart;
00035       signed char m_hwPlane;
00036       signed char m_tower;
00037       unsigned char m_index;
00038     };
00039     typedef std::vector<TRingToTower> TRingToTowerVec;
00040     
00041     // For (roll,hwplane)->logplane mapping
00042     
00043     /*
00044     typedef std::vector<int> TLPList;
00045     typedef std::vector<TLPList > THWplaneToLP;
00046     typedef std::vector<THWplaneToLP > TRingsToLP;
00047     */
00048 
00049     struct TRingToLP {
00050 //      TRingToLP(signed char ep, signed char hp, signed char lp, unsigned char i) : 
00051 //          m_etaPart(ep), m_hwPlane(hp), m_LP(lp), m_index(i) {};
00052       signed char m_etaPart;
00053       signed char m_hwPlane;
00054       signed char m_LP;
00055       unsigned char m_index;
00056     };
00057     typedef std::vector<TRingToLP> TRingToLPVec;
00058 
00059     
00060     
00061 
00062     //int getLPSize(int tower) const {return m_LPSizesInTowers.at(tower);};
00063     //const TLPSizesInTowers &  getLPSizes() const { return m_LPSizesInTowers;};
00064 
00065     void setFirstTower(int tow) {m_firstTower = tow;};
00066     void setLastTower(int tow) {m_lastTower = tow;};
00067 
00068     /*
00069     void setLPSizeForTowers(const TLPSizesInTowers & lpSizes) { m_LPSizesInTowers = lpSizes;};
00070     const TLPSizesInTowers & getLPSizeForTowers() const { return m_LPSizesInTowers;};
00071     */
00072     void setLPSizeVec(const TLPSizeVec & lpSizes) { m_LPSizeVec = lpSizes;};
00073     const TLPSizeVec & getLPSizeVec() const { return m_LPSizeVec;};
00074     
00075     /*
00076     void setRingsToTowers(const TRingsToTowers & RingsToTowers) { m_RingsToTowers = RingsToTowers;};
00077     const TRingsToTowers & getRingsToTowers() const { return m_RingsToTowers;};*/
00078   void setRingToTowerVec(const TRingToTowerVec & ringToTowerVec) 
00079         { m_ringToTowerVec = ringToTowerVec;};
00080   const TRingToTowerVec & getRingToTowerVec() const { return m_ringToTowerVec;};
00081 
00082     
00083   /*
00084     void setRingsToLP(const TRingsToLP & RingsToLP) {m_RingsToLP = RingsToLP;};
00085     const TRingsToLP & getRingsToLP() const {return m_RingsToLP;};
00086   */
00087   void setRingToLPVec(const TRingToLPVec & ringToLPVec) {m_ringToLPVec = ringToLPVec;};
00088   const TRingToLPVec & getRingToLPVec() const {return m_ringToLPVec;};
00089 
00090             
00091   private:
00092          
00093     int m_firstTower;
00094     int m_lastTower;
00095     //TLPSizesInTowers m_LPSizesInTowers;
00096     TLPSizeVec m_LPSizeVec;
00097     //TRingsToTowers m_RingsToTowers;
00098     TRingToTowerVec m_ringToTowerVec;
00099     
00100     
00101     //TRingsToLP m_RingsToLP;
00102     TRingToLPVec m_ringToLPVec;
00103 
00104 
00105 
00106 
00107 
00108 
00109 };
00110 
00111 
00112 
00113 #endif