#include <G4SvcRunManager.h>
Public Member Functions | |
G4SvcRunManager () | |
G4SvcRunManager () | |
G4Event * | GenerateEvent (G4int i_event) |
G4Event * | GenerateEvent (G4int i_event) |
void | PrintPrimary (G4Event *anEvent) |
void | PrintPrimary (G4Event *anEvent) |
void | SimulateEvent (int i) |
void | SimulateEvent (int i) |
virtual | ~G4SvcRunManager () |
virtual | ~G4SvcRunManager () |
Private Member Functions | |
int | GetLogLevel () |
int | GetLogLevel () |
void | SetLogLevel (int l) |
void | SetLogLevel (int l) |
Private Attributes | |
int | m_logLevel |
Friends | |
class | G4Svc |
|
00038 : 00039 G4RunManager(), 00040 m_logLevel(6) { 00041 }
|
|
00045 { 00046 }
|
|
|
|
|
|
|
|
00049 { 00050 G4Event* anEvent = new G4Event(i_event); 00051 00052 if(!userPrimaryGeneratorAction) 00053 { 00054 if(m_logLevel<=4) 00055 std::cout<<"calling the hepmc interface"<<std::endl; 00056 BesHepMCInterface* hepmcInterface = new BesHepMCInterface; 00057 hepmcInterface->SetLogLevel(m_logLevel); 00058 HepMC::GenEvent* hepmcEvent = hepmcInterface->GenerateHepMCEvent(); 00059 if(m_logLevel<=4) 00060 std::cout<<"got the hepmcEvent"<<std::endl; 00061 hepmcInterface->HepMC2G4(hepmcEvent, anEvent); 00062 delete hepmcInterface; 00063 if(m_logLevel<=4) 00064 PrintPrimary(anEvent); 00065 00066 } 00067 else{ 00068 if(storeRandomNumberStatus) { 00069 G4String fileN = randomNumberStatusDir + "currentEvent.rndm"; 00070 HepRandom::saveEngineStatus(fileN); 00071 } 00072 userPrimaryGeneratorAction->GeneratePrimaries(anEvent); 00073 } 00074 return anEvent; 00075 }
|
|
00031 { return m_logLevel; }
|
|
00031 { return m_logLevel; }
|
|
|
|
00078 { 00079 G4cout<<G4endl<<"primary particles of this event: "<<G4endl; 00080 G4int n_vertex = anEvent->GetNumberOfPrimaryVertex(); 00081 for( G4int i=0; i<n_vertex; i++ ) 00082 { 00083 G4cout<<"vertex:"<<i<<G4endl; 00084 G4PrimaryVertex* primaryVertex = anEvent->GetPrimaryVertex(i); 00085 G4PrimaryParticle* primaryParticle = primaryVertex->GetPrimary(); 00086 G4cout<<"PDGCode:"; 00087 while( primaryParticle != 0 ) 00088 { 00089 G4int PDGcode = primaryParticle->GetPDGcode(); 00090 G4cout<<PDGcode<<" "; 00091 primaryParticle = primaryParticle->GetNext(); 00092 } 00093 G4cout<<G4endl; 00094 } 00095 G4cout<<G4endl; 00096 }
|
|
00030 { m_logLevel = l; }
|
|
00030 { m_logLevel = l; }
|
|
|
|
00098 { 00099 //G4StateManager* stateManager = G4StateManager::GetStateManager(); 00100 //stateManager->SetNewState(G4State_EventProc); 00101 currentEvent = GenerateEvent(i); 00102 eventManager->ProcessOneEvent(currentEvent); 00103 AnalyzeEvent(currentEvent); 00104 //stateManager->SetNewState(G4State_GeomClosed); 00105 StackPreviousEvent(currentEvent); 00106 currentEvent = 0; 00107 if(m_logLevel<=4) 00108 std::cout<<"SimulateEvent : done simulating one event "<<std::endl<<std::endl; 00109 }
|
|
|
|
|