00001 #ifndef KalFitSuper_Mdc_FLAG_ 00002 #define KalFitSuper_Mdc_FLAG_ 00003 00004 #include "KalFitAlg/KalFitList.h" 00005 00006 00007 class KalFitWire; 00008 class KalFitSuper_Mdc{ 00009 public: 00011 KalFitSuper_Mdc(const int firstWireID,const int NWire, 00012 const int firstLayerID,const int NLayer, 00013 const int superLayerID); 00014 ~KalFitSuper_Mdc(); 00015 00016 public: 00018 void clear(void); 00019 00020 00021 public: // Selectors 00022 00024 const int nWire(void) const; 00025 00027 const int nLayer(void) const; 00028 00030 const int layerMaxId(void) const; 00031 00033 const int localMaxId(void) const; 00034 00036 const int superLayerId(void) const; 00037 00039 void appendHit(KalFitWire *); 00040 00041 private: //static data members 00042 static const unsigned int _neighborsMask[6]; 00043 00044 private: // private data members 00045 const int _superLayerId; 00046 const int _firstWireId; 00047 const int _Nwire; 00048 const int _firstLayerId; 00049 const int _Nlayer; 00050 KalFitList<KalFitWire *>& _wireHits; 00051 KalFitList<KalFitWire *>& _singleHits; 00052 }; 00053 00054 #ifdef KalFitSuper_Mdc_NO_INLINE 00055 #define inline 00056 #else 00057 #undef inline 00058 #define KalFitSuper_Mdc_INLINE_DEFINE_HERE 00059 #endif 00060 00061 #ifdef KalFitSuper_Mdc_INLINE_DEFINE_HERE 00062 00063 inline void KalFitSuper_Mdc::appendHit(KalFitWire *h){ 00064 _wireHits.append(h); 00065 } 00066 00067 #endif 00068 #undef inline 00069 00070 #endif /* KalFitSuper_Mdc_FLAG_ */