CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/CondFormats/RPCObjects/interface/FebConnectorSpec.h

Go to the documentation of this file.
00001 #ifndef CondFormatsRPCObjectsFebConnectorSpec_H
00002 #define CondFormatsRPCObjectsFebConnectorSpec_H
00003 
00004 #include <vector>
00005 #include "DataFormats/DetId/interface/DetId.h"
00006 #include "CondFormats/RPCObjects/interface/ChamberStripSpec.h"
00007 #include "CondFormats/RPCObjects/interface/ChamberLocationSpec.h"
00008 #include "CondFormats/RPCObjects/interface/FebLocationSpec.h"
00009 #include <string>
00010 
00021 class FebConnectorSpec {
00022 public:
00023   FebConnectorSpec(int num =-1) : theLinkBoardInputNum(num), theRawId(0) { }
00024   FebConnectorSpec(int num, const ChamberLocationSpec & chamber, const FebLocationSpec & feb); 
00025 
00027   int linkBoardInputNum() const { return theLinkBoardInputNum; }
00028 
00030   void addStrips(int algo) {
00031     theAlgo = algo;
00032   }
00033 
00035   const ChamberStripSpec strip(int pinNumber) const;
00036 
00038   const uint32_t & rawId() const;
00039 
00040   const ChamberLocationSpec & chamber() const { return theChamber; }
00041   const FebLocationSpec     & feb()  const { return theFeb; }
00042 
00043   const int nstrips() const { return theAlgo/10000; }
00044 
00045   const int chamberStripNum(int istrip) const;
00046 
00047   const int cmsStripNum(int istrip) const { return 0; }
00048 
00049   const int cablePinNum(int istrip) const;
00050 
00052   std::string print(int depth=0) const;
00053 
00054 private:
00055   int theLinkBoardInputNum;
00056 
00057   ChamberLocationSpec theChamber; 
00058   FebLocationSpec     theFeb; 
00059 
00060   int theAlgo;
00061   mutable uint32_t theRawId;
00062 };
00063 
00064 #endif