Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4PiKBuilder Class Reference

#include <G4PiKBuilder.hh>

+ Inheritance diagram for G4PiKBuilder:

Public Member Functions

 G4PiKBuilder ()
 
virtual ~G4PiKBuilder ()
 
virtual void Build () final override
 
virtual void RegisterMe (G4PhysicsBuilderInterface *aB) final override
 
- Public Member Functions inherited from G4PhysicsBuilderInterface
 G4PhysicsBuilderInterface ()=default
 
virtual ~G4PhysicsBuilderInterface ()
 
virtual void Build ()
 
virtual void RegisterMe (G4PhysicsBuilderInterface *)
 
virtual void SetMinEnergy (G4double)
 
virtual void SetMaxEnergy (G4double)
 

Detailed Description

Definition at line 49 of file G4PiKBuilder.hh.

Constructor & Destructor Documentation

◆ G4PiKBuilder()

G4PiKBuilder::G4PiKBuilder ( )

Definition at line 45 of file G4PiKBuilder.cc.

46{
47 thePionPlusInelastic=new G4HadronInelasticProcess( "pi+Inelastic", G4PionPlus::Definition() );
48 thePionMinusInelastic=new G4HadronInelasticProcess( "pi-Inelastic", G4PionMinus::Definition() );
49 theKaonPlusInelastic=new G4HadronInelasticProcess( "kaon+Inelastic", G4KaonPlus::Definition() );
50 theKaonMinusInelastic=new G4HadronInelasticProcess( "kaon-Inelastic", G4KaonMinus::Definition() );
51 theKaonZeroLInelastic=new G4HadronInelasticProcess( "kaon0LInelastic", G4KaonZeroLong::Definition() );
52 theKaonZeroSInelastic=new G4HadronInelasticProcess( "kaon0SInelastic", G4KaonZeroShort::Definition() );
53}
static G4KaonMinus * Definition()
Definition: G4KaonMinus.cc:53
static G4KaonPlus * Definition()
Definition: G4KaonPlus.cc:53
static G4KaonZeroLong * Definition()
static G4KaonZeroShort * Definition()
static G4PionMinus * Definition()
Definition: G4PionMinus.cc:51
static G4PionPlus * Definition()
Definition: G4PionPlus.cc:51

◆ ~G4PiKBuilder()

virtual G4PiKBuilder::~G4PiKBuilder ( )
inlinevirtual

Definition at line 53 of file G4PiKBuilder.hh.

53{}

Member Function Documentation

◆ Build()

void G4PiKBuilder::Build ( )
finaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 55 of file G4PiKBuilder.cc.

57{
58 std::vector<G4VPiKBuilder *>::iterator i;
59 for(i=theModelCollections.begin(); i!=theModelCollections.end(); i++)
60 {
61 (*i)->Build(thePionPlusInelastic);
62 (*i)->Build(thePionMinusInelastic);
63 (*i)->Build(theKaonPlusInelastic);
64 (*i)->Build(theKaonMinusInelastic);
65 (*i)->Build(theKaonZeroLInelastic);
66 (*i)->Build(theKaonZeroSInelastic);
67 }
68 G4ProcessManager * theProcMan;
70 theProcMan->AddDiscreteProcess(thePionPlusInelastic);
71
73 theProcMan->AddDiscreteProcess(thePionMinusInelastic);
74
76 theProcMan->AddDiscreteProcess(theKaonPlusInelastic);
77
79 theProcMan->AddDiscreteProcess(theKaonMinusInelastic);
80
82 theProcMan->AddDiscreteProcess(theKaonZeroLInelastic);
83
85 theProcMan->AddDiscreteProcess(theKaonZeroSInelastic);
86}
static G4KaonMinus * KaonMinus()
Definition: G4KaonMinus.cc:112
static G4KaonPlus * KaonPlus()
Definition: G4KaonPlus.cc:112
static G4KaonZeroLong * KaonZeroLong()
static G4KaonZeroShort * KaonZeroShort()
G4ProcessManager * GetProcessManager() const
static G4PionMinus * PionMinus()
Definition: G4PionMinus.cc:97
static G4PionPlus * PionPlus()
Definition: G4PionPlus.cc:97
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)

◆ RegisterMe()

void G4PiKBuilder::RegisterMe ( G4PhysicsBuilderInterface aB)
finaloverridevirtual

Reimplemented from G4PhysicsBuilderInterface.

Definition at line 88 of file G4PiKBuilder.cc.

88 {
89 auto bld = dynamic_cast<G4VPiKBuilder*>(aB);
90 if ( bld != nullptr ) {
91 theModelCollections.push_back(bld);
92 } else {
94 }
95}
virtual void RegisterMe(G4PhysicsBuilderInterface *)

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