42 #ifndef G4PROCESSTESTANALYSIS_HH
43 #define G4PROCESSTESTANALYSIS_HH
50 #include "AIDA/AIDA.h"
54 class XrayFluoAnalysisMessenger;
57 class XrayFluoAnalysisManager
61 virtual ~XrayFluoAnalysisManager();
68 void analyseStepping(
const G4Step* aStep);
71 void analyseEnergyDep(
G4double eDep);
77 static XrayFluoAnalysisManager* getInstance();
84 inline void CreatePersistency() {CreatePersistency(outputFileName,persistencyType);}
87 inline void PhaseSpaceOn(){phaseSpaceFlag =
true;}
89 inline void PhaseSpaceOff(){phaseSpaceFlag =
false;}
100 G4bool GetDeletePersistencyFileFlag();
103 void InitializePlotter();
105 void PlotCurrentResults();
107 std::vector<G4double>* GetEmittedParticleEnergies();
108 std::vector<G4String>* GetEmittedParticleTypes();
111 void SetPhysicFlag(
G4bool);
115 XrayFluoAnalysisManager();
127 G4bool deletePersistencyFile;
130 std::vector<G4double>* gunParticleEnergies;
131 std::vector<G4String>* gunParticleTypes;
134 static XrayFluoAnalysisManager*
instance;
137 XrayFluoAnalysisMessenger* analisysMessenger;
143 AIDA::IAnalysisFactory* analysisFactory;
145 AIDA::ITree* treeDet;
147 AIDA::IHistogramFactory* histogramFactory;
148 AIDA::IHistogram1D* histo_1;
149 AIDA::IHistogram1D* histo_2;
150 AIDA::IHistogram1D* histo_3;
151 AIDA::IHistogram1D* histo_4;
152 AIDA::IHistogram1D* histo_5;
153 AIDA::IHistogram1D* histo_6;
154 AIDA::IHistogram1D* histo_7;
155 AIDA::IHistogram1D* histo_8;
156 AIDA::IHistogram1D* histo_9;
161 AIDA::ICloud1D* beamCloud;
162 AIDA::ICloud1D* cloud_1;
163 AIDA::ICloud1D* cloud_2;
164 AIDA::ICloud1D* cloud_3;
166 AIDA::ITupleFactory* tupleFactory;
167 AIDA::ITupleFactory* tupleDetFactory;
169 AIDA::ITuple* tupleFluo;
170 AIDA::ITuple* tupleDetFluo;
172 AIDA::IPlotterFactory* plotterFactory;
173 AIDA::IPlotter* plotter;
G4double energy(const ThreeVector &p, const G4double m)
static MCTruthManager * instance