Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions
AnalysisManager Class Reference

#include <AnalysisManager.hh>

Public Member Functions

void Score (G4double eDep)
 
 AnalysisManager ()
 
 ~AnalysisManager ()
 
void book ()
 
void SetPrimaryEnergy (G4double energy)
 
void StoreEnergyDeposition (G4double edep)
 
void FillSecondaries (G4int AA, G4double charge, G4double energy)
 
void finish ()
 

Static Public Member Functions

static AnalysisManager * Instance ()
 
static void Destroy ()
 

Protected Member Functions

 AnalysisManager ()
 
virtual ~AnalysisManager ()
 
 AnalysisManager (const AnalysisManager &only)
 
const AnalysisManager & operator= (const AnalysisManager &only)
 

Detailed Description

Definition at line 34 of file eRosita/application/include/AnalysisManager.hh.

Constructor & Destructor Documentation

AnalysisManager::AnalysisManager ( )
protected

Definition at line 58 of file eRosita/application/src/AnalysisManager.cc.

Referenced by Instance().

59 {
60  outFile.open("TrackerPhotonEnergy.out");
61 // outFileT.open("eTot.out");
62 }
std::ofstream outFile
Definition: GammaRayTel.cc:68
AnalysisManager::~AnalysisManager ( )
protectedvirtual

Definition at line 65 of file eRosita/application/src/AnalysisManager.cc.

66 {
67  outFile.close();
68  outFileT.close();
69 }
std::ofstream outFile
Definition: GammaRayTel.cc:68
AnalysisManager::AnalysisManager ( const AnalysisManager &  only)
protected
AnalysisManager::AnalysisManager ( )
AnalysisManager::~AnalysisManager ( )

Member Function Documentation

void AnalysisManager::book ( )

Definition at line 54 of file radioprotection/src/AnalysisManager.cc.

References G4cout, and G4endl.

55 {
56  G4AnalysisManager* manager = G4AnalysisManager::Instance();
57 
58  manager->SetVerboseLevel(2);
59 
60  // Create a root file
61  G4String fileName = "radioprotection.root";
62 
63  // Create directories
64  manager->SetNtupleDirectoryName("radioprotection_ntuple");
65 
66 
67  G4bool fileOpen = manager->OpenFile(fileName);
68  if (!fileOpen) {
69  G4cout << "\n---> HistoManager::book(): cannot open "
70  << fileName[1]
71  << G4endl;
72  return;
73  }
74 
75  manager->SetFirstNtupleId(1);
76 
77  //Create Primary Energy Ntuple
78  manager -> CreateNtuple("101", "Primary Energy");
79  fNtColId[0] = manager -> CreateNtupleDColumn("Ek");
80  manager -> FinishNtuple();
81 
82  //Create Energy Deposition within SV Ntuple
83  manager -> CreateNtuple("102", "Edep");
84  fNtColId[1] = manager -> CreateNtupleDColumn("edep");
85  manager -> FinishNtuple();
86 
87  //creating a ntuple, containing the information about secondary particles
88  manager -> CreateNtuple("103", "secondary");
89  fNtColId[2] = manager -> CreateNtupleDColumn("AA");
90  fNtColId[3] = manager -> CreateNtupleDColumn("ZZ");
91  fNtColId[4] = manager -> CreateNtupleDColumn("KE");
92  manager -> FinishNtuple();
93 
94 
95  factoryOn = true;
96 }
G4GLOB_DLL std::ostream G4cout
bool G4bool
Definition: G4Types.hh:79
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:46
#define G4endl
Definition: G4ios.hh:61
void AnalysisManager::Destroy ( void  )
static

Definition at line 46 of file eRosita/application/src/AnalysisManager.cc.

Referenced by eRositaRunAction::EndOfRunAction().

47 {
48 
49  // The AnalysisManager instance is deleted if it exists:
50  if (instance != 0)
51  {
52  delete instance;
53  instance = 0;
54  }
55 }
void AnalysisManager::FillSecondaries ( G4int  AA,
G4double  charge,
G4double  energy 
)

Definition at line 113 of file radioprotection/src/AnalysisManager.cc.

114 {
115 
116  G4AnalysisManager* manager = G4AnalysisManager::Instance();
117  manager -> FillNtupleDColumn(3, fNtColId[2], AA);
118  manager -> FillNtupleDColumn(3, fNtColId[3], charge);
119  manager -> FillNtupleDColumn(3, fNtColId[4], energy);
120  manager -> AddNtupleRow(3);
121 }
double precision function energy(A, Z)
Definition: dpm25nuc6.f:4106
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:46
void AnalysisManager::finish ( )

Definition at line 123 of file radioprotection/src/AnalysisManager.cc.

124 {
125  if (factoryOn)
126  {
127  G4AnalysisManager* manager = G4AnalysisManager::Instance();
128  manager -> Write();
129  manager -> CloseFile();
130 
131  delete G4AnalysisManager::Instance();
132  factoryOn = false;
133  }
134 }
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:46
AnalysisManager * AnalysisManager::Instance ( void  )
static

Definition at line 32 of file eRosita/application/src/AnalysisManager.cc.

References AnalysisManager().

Referenced by eRositaRunAction::BeginOfRunAction(), eRositaRunAction::EndOfRunAction(), and eRositaTrackerHit::PrintToFile().

33 {
34 
35  // A new instance of AnalysisManager is created if it does not exist:
36  if (instance == 0)
37  {
38  instance = new AnalysisManager();
39  }
40 
41  // The instance of AnalysisManager is returned:
42  return instance;
43 }
const AnalysisManager& AnalysisManager::operator= ( const AnalysisManager &  only)
protected
void AnalysisManager::Score ( G4double  eDep)

Definition at line 72 of file eRosita/application/src/AnalysisManager.cc.

Referenced by eRositaTrackerHit::PrintToFile().

73 {
74 // outFile << id << " "
75 // << eDep << " "
76 // << x << " "
77 // << y << " "
78 // << z << " "
79 // << std::endl;
80  outFile << eDep << std::endl;
81 }
std::ofstream outFile
Definition: GammaRayTel.cc:68
void AnalysisManager::SetPrimaryEnergy ( G4double  energy)

Definition at line 99 of file radioprotection/src/AnalysisManager.cc.

100 {
101  G4AnalysisManager* manager = G4AnalysisManager::Instance();
102  manager -> FillNtupleDColumn(1, fNtColId[0], energy);
103  manager -> AddNtupleRow(1);
104 }
double precision function energy(A, Z)
Definition: dpm25nuc6.f:4106
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:46
void AnalysisManager::StoreEnergyDeposition ( G4double  edep)

Definition at line 106 of file radioprotection/src/AnalysisManager.cc.

107 {
108  G4AnalysisManager* manager = G4AnalysisManager::Instance();
109  manager -> FillNtupleDColumn(2, fNtColId[1], edep);
110  manager -> AddNtupleRow(2);
111 }
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:46

The documentation for this class was generated from the following files: