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

#include <G4NeutronBuilder.hh>

Public Member Functions

 G4NeutronBuilder (G4bool fissionFlag=false)
 
virtual ~G4NeutronBuilder ()
 
void Build ()
 
void RegisterMe (G4VNeutronBuilder *aB)
 

Detailed Description

Definition at line 51 of file G4NeutronBuilder.hh.

Constructor & Destructor Documentation

G4NeutronBuilder::G4NeutronBuilder ( G4bool  fissionFlag = false)

Definition at line 45 of file G4NeutronBuilder.cc.

45  : wasActivated(false), isFissionActivated(fissionFlag)
46 {
47  theNeutronInelastic = new G4NeutronInelasticProcess;
48  theNeutronCapture = new G4HadronCaptureProcess;
49  if ( isFissionActivated ) {
50  theNeutronFission = new G4HadronFissionProcess;
51  } else {
52  theNeutronFission = 0;
53  }
54 }
G4NeutronBuilder::~G4NeutronBuilder ( )
virtual

Definition at line 57 of file G4NeutronBuilder.cc.

58 {
59  delete theNeutronInelastic;
60  delete theNeutronCapture;
61  if ( isFissionActivated ) delete theNeutronFission;
62 }

Member Function Documentation

void G4NeutronBuilder::Build ( )

Definition at line 65 of file G4NeutronBuilder.cc.

References G4ProcessManager::AddDiscreteProcess(), G4ParticleDefinition::GetProcessManager(), and G4Neutron::Neutron().

66 {
67  wasActivated = true;
68  std::vector<G4VNeutronBuilder *>::iterator i;
69  for(i=theModelCollections.begin(); i!=theModelCollections.end(); i++)
70  {
71  (*i)->Build(theNeutronInelastic);
72  (*i)->Build(theNeutronCapture);
73  if ( isFissionActivated ) (*i)->Build(theNeutronFission);
74  }
76  theProcMan->AddDiscreteProcess(theNeutronInelastic);
77  theProcMan->AddDiscreteProcess(theNeutronCapture);
78  if ( isFissionActivated ) theProcMan->AddDiscreteProcess(theNeutronFission);
79 }
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
G4ProcessManager * GetProcessManager() const
static G4Neutron * Neutron()
Definition: G4Neutron.cc:104
void G4NeutronBuilder::RegisterMe ( G4VNeutronBuilder aB)
inline

Definition at line 59 of file G4NeutronBuilder.hh.

59 {theModelCollections.push_back(aB);}

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