// ----------------------------------------------------------------------------- // CVS $Id: LCDreadSIOFile.h,v 1.1 2001/05/10 22:06:04 toshi Exp $ // ----------------------------------------------------------------------------- // // General Description: // // S2R is a small executable which reads the SIO output from Gismo or // fastMC(Root) and transforms it into a standard Root dataset. // // It operates as a command line executable taking the following arguments: // // Input file name (no default) // Output file name (defaults to 'Event.root' ) // // ----------------------------------------------------------------------------- // // $Log: LCDreadSIOFile.h,v $ // Revision 1.1 2001/05/10 22:06:04 toshi // File IO (stdHEP, SIO,...) utilities. // // #ifndef LCDREADSIOFILE_H #define LCDREADSIOFILE_H // // Include files needed by both the declaration of objects (extern or not), // and definition of objects (not extern). The next segment will protect // against confusing declarations and definitions (confused yet?) // #include "SIO_streamManager.h" #include "SIO_recordManager.h" #include "SIO_blockManager.h" #include "SIO_stream.h" #include "SIO_record.h" #include "SIO_block.h" #include "SIO_definitions.h" #include "LCD_detector_ID.h" #include "LCD_detector_CVS.h" #include "S2R_MCPrint.h" #include "S2R_EMCalorimeter.h" #include "S2R_HADCalorimeter.h" #include "S2R_LUMCalorimeter.h" #include "S2R_MUCalorimeter.h" #include "S2R_Tracker.h" #include "S2R_VXD.h" #include "S2R_EventMarker.h" #include "TMap.h" #include "LCDEventSource.h" #include "LCDEvent.h" class LCDreadSIOFile: public LCDEventSource { public: LCDreadSIOFile(); LCDreadSIOFile(Char_t* siofilename, LCDEvent* event=0); ~LCDreadSIOFile(); Int_t GetDebugLevel() { return f_debug; } Int_t GetEvent(LCDEvent* event=0); //Creates LCD... objects. void SetDebugLevel(Int_t a); void SetSIOFileName(Char_t* siofilename); private: Bool_t m_ownevent; TMap* ParticleList; // // Local variables. // SIO_stream* stream; SIO_record* recred; SIO_record* header; SIO_record* record; //Int_t bufsize; //Int_t comp; //Int_t split; UInt_t status; Char_t* i_file; LCD_detector_ID* det_ID; LCD_detector_CVS* det_CVS; //I/O blocks. S2R_EMCalorimeter* EMCalorimeter; S2R_HADCalorimeter* HADCalorimeter; S2R_LUMCalorimeter* LUMCalorimeter; S2R_MUCalorimeter* MUCalorimeter; S2R_Tracker* Tracker; S2R_VXD* VXD; S2R_MCPrint* MCPrint; S2R_EventMarker* EventMarker; //Debug Flag Int_t f_debug; void Init(); Int_t InitSIO(); public: ClassDef(LCDreadSIOFile,0) //Make LCD... objects from info in SIO file }; #endif // #ifndef S2R_MAIN_H