CMS 3D CMS Logo

RPCPattern.h

Go to the documentation of this file.
00001 #ifndef L1Trigger_RPCPattern_h
00002 #define L1Trigger_RPCPattern_h
00003 //-----------------------------------------------------------------------------
00010 #include <vector>
00011 #include <string>
00012 //-----------------------------------------------------------------------------
00013 
00014 class RPCPattern  {
00015 public:
00016   
00017   //needed types
00023   class RPCLogicalStrip {
00024      friend class RPCPattern;
00025      private:
00027        unsigned char m_StripFrom;
00029        unsigned char m_StripTo;
00030   };
00031 
00032     typedef std::vector<RPCPattern> RPCPatVec;
00033 
00034 
00035     struct TQuality {
00036         int m_QualityTabNumber;
00037         std::string m_FiredPlanes;
00038         short m_QualityValue;
00039         int m_tower;
00040         int m_logsector;
00041         int m_logsegment;
00042     };
00043     
00044     typedef std::vector<TQuality> TQualityVec;
00045                       
00046     
00047 
00048     // use namespace?   
00049     // Moved/duplicated from RPCConst 
00050 //    enum TPatternType {PAT_TYPE_T, PAT_TYPE_E};
00051     typedef int TPatternType;
00052     static const TPatternType PAT_TYPE_T = 0;
00053     static const TPatternType PAT_TYPE_E = 1;
00054     static const int m_LOGPLANES_COUNT = 6;
00055     static const int m_FIRST_PLANE = 0;
00056     static const int m_LAST_PLANE = 5;
00057     static const int m_NOT_CONECTED = 99; 
00058   
00060     RPCPattern();
00061     RPCPattern(int tower, int sector, int segment);
00062 
00063     void setStripFrom(int logPlane, int stripFrom);
00064   
00065     void setStripTo(int logPlane, int stripTo);
00066 
00068     int getStripFrom(int logPlane) const;
00069 
00071     int getStripTo(int logPlane) const;
00072 
00073     int getTower() const;
00074     int getLogSector() const;
00075     int getLogSegment() const;
00076 
00077     int getCode() const;
00078 
00079     int getSign() const;
00080 
00081     int getNumber() const;
00082 
00083     TPatternType getPatternType() const;
00084 
00085     int getRefGroup() const;
00086 
00087     int getQualityTabNumber() const;
00088 
00089     void setCoords(int tower, int sector, int segment);
00090 
00091     void setCode(int a);
00092   
00093     void setSign(int a);
00094   
00095     void setNumber(int a);
00096 
00097     void setPatternType(TPatternType patternType);
00098 
00099     void setRefGroup(int refGroup);
00100 
00101     void setQualityTabNumber(int qualityTabNumber);
00102   
00103 private:
00105   RPCLogicalStrip m_Strips[m_LOGPLANES_COUNT];
00106 
00107 // coordinates
00108   char m_Tower;
00109   char m_LogSector;
00110   char m_LogSegment;
00111 
00113   char m_Sign;
00114 
00116   char m_Code;
00117 
00119   short m_Number;
00120 
00124   TPatternType m_PatternType;
00125 
00127   char m_RefGroup;
00128 
00131   char m_QualityTabNumber;
00132 
00133 
00134 };
00135 
00136 #endif

Generated on Tue Jun 9 17:26:38 2009 for CMSSW by  doxygen 1.5.4