// $Id: SimpleTelemetry.hh,v 1.9 2005/04/06 14:03:42 thea Exp $ // Author: M. Pallavicini // write MacroCell data onto a ASCII file // May-6-2003 modified to produce temporary ASCII file for reco // /***************************************************************************** * ESAF: Euso Simulation and Analysis Framework * * * * Id: SimpleTelemetry * * Package: Electronics * * Coordinator: Marco.Pallavicini * * * *****************************************************************************/ #ifndef _SIMPLETELEMETRY_HH_ #define _SIMPLETELEMETRY_HH_ #include #include #include #include #include #include "utils.hh" #include "euso.hh" #include "Telemetry.hh" #include "EsafMsgSource.hh" //////////////////////////////////////////////////////////////////////////////// // // // SimpleTelemetry // // // // Write MacroCell data onto a ASCII file // // // //////////////////////////////////////////////////////////////////////////////// class SimpleTelemetry : public Telemetry, public EsafMsgSource { public: // ctor SimpleTelemetry(); // dtor virtual ~SimpleTelemetry(); // simulate third level trigger at TCU level and // on-board data handling; does nothing in this implementation virtual void SimulateTCU(); // open output file virtual Bool_t Open( const char* ); // close output file virtual Bool_t Close(); // write event on output file virtual Bool_t Write(); // get ready for next event virtual void Clear(); // dump on string virtual string& Dump(); // add data from a macrocell virtual void Add( MacroCellData* ); // returns the number of macrocell that gave some data virtual int NumCell() const {return (int)(fData.size());} // returns macrocell data virtual MacroCellData* GetData(int ncell) {return fData[ncell];} private: string fTextDump; // string used by Dump string fFileName; // output file name gzFile fp; // output file vector fData; // vector with macrocell data void WriteData(); void WriteHeader(); ClassDef(SimpleTelemetry,0) }; #endif