00001
00010
00017
00018
00023
00024
00031
00032
00033 #ifndef _MJVOUTPUTMANAGER_HH
00034 #define _MJVOUTPUTMANAGER_HH 1
00035
00036
00037
00038 #include "globals.hh"
00039 #include "G4Event.hh"
00040 #include "G4Step.hh"
00041
00042
00043
00044 class MJVOutputManager
00045 {
00046 public:
00047
00048
00049 MJVOutputManager();
00050
00051
00052 virtual ~MJVOutputManager();
00053
00059 virtual void BeginOfEventAction(const G4Event *event) = 0;
00060 virtual void BeginOfRunAction() = 0;
00061 virtual void EndOfEventAction(const G4Event *event) = 0;
00062 virtual void EndOfRunAction() = 0;
00063 virtual void SteppingAction(const G4Step* step) = 0;
00064
00065
00066
00067 virtual void DefineSchema() = 0;
00068 virtual void OpenFile(const char* filename) = 0;
00069 virtual void CloseFile() = 0;
00070
00071
00072 G4String GetFileName() {return fFileName;}
00073 G4bool SchemaDefined() {return fSchemaDefined;}
00074 void SetFileName(G4String name){fFileName = name;}
00075 void SetSchemaDefined(G4bool sta) {fSchemaDefined = sta;}
00076 void SetWaveformsSaved(G4bool saved) {fWaveformsSaved = saved;}
00077 G4bool WaveformsSaved() {return fWaveformsSaved;}
00078
00079
00080 private:
00081 static G4String fFileName;
00082 G4bool fSchemaDefined;
00083
00084 G4bool fWaveformsSaved;
00085
00086
00087 };
00088
00089 #endif
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102