00001 //------------------------------------------------- 00002 // 00017 // 00018 //-------------------------------------------------- 00019 #ifndef L1MUDT_DATA_BUFFER_H 00020 #define L1MUDT_DATA_BUFFER_H 00021 00022 //--------------- 00023 // C++ Headers -- 00024 //--------------- 00025 00026 #include <vector> 00027 00028 //---------------------- 00029 // Base Class Headers -- 00030 //---------------------- 00031 00032 //------------------------------------ 00033 // Collaborating Class Declarations -- 00034 //------------------------------------ 00035 00036 class L1MuDTSectorProcessor; 00037 class L1MuDTTrackSegPhi; 00038 00039 // --------------------- 00040 // -- Class Interface -- 00041 // --------------------- 00042 00043 class L1MuDTDataBuffer { 00044 00045 public: 00046 00048 typedef std::vector<L1MuDTTrackSegPhi*> TSPhivector; 00049 00051 L1MuDTDataBuffer(const L1MuDTSectorProcessor& ); 00052 00054 virtual ~L1MuDTDataBuffer(); 00055 00057 void reset(); 00058 00060 const TSPhivector& getTSphi() const { return *m_tsphi; } 00061 00063 const L1MuDTTrackSegPhi* getTSphi(int station, int address) const; 00064 00066 void addTSphi(int adr, const L1MuDTTrackSegPhi&); 00067 00069 void printTSphi() const; 00070 00072 int numberTSphi() const; 00073 00074 private: 00075 00076 const L1MuDTSectorProcessor& m_sp; 00077 TSPhivector* m_tsphi; 00078 00079 }; 00080 00081 #endif