00001 #ifndef CocoaDaqReader_h 00002 #define CocoaDaqReader_h 00003 #include <string> 00004 #include <vector> 00005 00006 class OpticalAlignMeasurementInfo; 00007 00008 00009 class CocoaDaqReader { 00010 public: 00011 CocoaDaqReader(){ }; 00012 static CocoaDaqReader* GetDaqReader(){ 00013 return theDaqReader; } 00014 static void SetDaqReader( CocoaDaqReader* reader ); 00015 00016 virtual ~CocoaDaqReader(){ }; 00017 00018 virtual bool ReadNextEvent() = 0; 00019 virtual bool ReadEvent( int nev ){ return 0; }; 00020 virtual void BuildMeasurementsFromOptAlign( std::vector<OpticalAlignMeasurementInfo>& measList ); 00021 00022 public: 00023 int GetNEvents() const { return nev; } 00024 00025 private: 00026 static CocoaDaqReader* theDaqReader; 00027 00028 protected: 00029 int nev; 00030 int nextEvent; 00031 }; 00032 00033 #endif