00001 #ifndef DEMODAQOUTPUTMODULE_H 00002 #define DEMODAQOUTPUTMODULE_H 00003 00005 // DemoDaqOutputModule 00006 // 00007 // Package: Per (Persistency) Demo class. 00008 // 00009 // S. Kasahara 01/2001 00010 // 00011 // Purpose: Simple DemoDaqOutputModule class to show use of Persistency 00012 // output streams within context of the write of the raw data. 00013 // This is for use with the DaqDemo.cc program that comes with 00014 // the Persistency package. 00015 // 00017 00018 #include <iosfwd> // forward decl of ostream 00019 #include "Persistency/PerOutputStreamManager.h" 00020 00021 class MomNavigator; 00022 class DemoDaqOutputModule; 00023 00024 std::ostream& operator<<(std::ostream& ms, const DemoDaqOutputModule& dm); 00025 00026 class DemoDaqOutputModule { 00027 00028 public: 00029 00030 // Constructors and destructors 00031 DemoDaqOutputModule() {} 00032 virtual ~DemoDaqOutputModule() {} 00033 00034 // State testing methods 00035 std::ostream& Print(std::ostream& ms) const; 00036 00037 // State changing methods 00038 void BeginJob(); 00039 void EndJob(); 00040 bool BeginFile(std::string fullfilepathname,Per::EAccessMode = Per::kNew); 00041 void EndFile(); 00042 00043 Int_t Put(const MomNavigator *mom); 00044 00045 private: 00046 00047 PerOutputStreamManager fOutputStreamManager; // manager of output streams 00048 00049 }; 00050 00051 #endif // DEMODAQOUTPUTMODULE_H
1.3.9.1