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

#include <G4MoleculeGun.hh>

+ Inheritance diagram for G4MoleculeShoot:

Public Member Functions

 G4MoleculeShoot ()
 
virtual ~G4MoleculeShoot ()
 
virtual void Shoot (G4MoleculeGun *)=0
 
template<typename TYPE >
G4shared_ptr< G4MoleculeShootChangeType ()
 

Static Public Member Functions

static void RandomPosInBox (const G4ThreeVector &boxSize, G4ThreeVector &output)
 

Public Attributes

G4String fMoleculeName
 
G4ThreeVector fPosition
 
G4double fTime
 
G4int fNumber
 
G4ThreeVectorfBoxSize
 

Detailed Description

Definition at line 72 of file G4MoleculeGun.hh.

Constructor & Destructor Documentation

◆ G4MoleculeShoot()

G4MoleculeShoot::G4MoleculeShoot ( )

Definition at line 197 of file G4MoleculeGun.cc.

197 :
198 G4enable_shared_from_this<G4MoleculeShoot>()
199{
200 fMoleculeName = "";
201 fTime = 0;
202 fNumber = 1;
203 fBoxSize = 0;
204}
G4ThreeVector * fBoxSize
G4String fMoleculeName

◆ ~G4MoleculeShoot()

G4MoleculeShoot::~G4MoleculeShoot ( )
virtual

Definition at line 208 of file G4MoleculeGun.cc.

209{
210 if(fBoxSize) delete fBoxSize;
211}

Member Function Documentation

◆ ChangeType()

template<typename TYPE >
G4shared_ptr< G4MoleculeShoot > G4MoleculeShoot::ChangeType

Definition at line 114 of file G4MoleculeGun.hh.

115{
116 G4shared_ptr<G4MoleculeShoot> output(new TG4MoleculeShoot<TYPE>);
117 output->fMoleculeName = fMoleculeName;
118 output->fPosition = fPosition;
119 output->fTime = fTime;
120 output->fNumber = fNumber;
121 output->fBoxSize = fBoxSize;
122 return output;
123}
G4ThreeVector fPosition

◆ RandomPosInBox()

void G4MoleculeShoot::RandomPosInBox ( const G4ThreeVector boxSize,
G4ThreeVector output 
)
static

Definition at line 187 of file G4MoleculeGun.cc.

189{
190 output[0] = boxSize.x() * G4UniformRand() - boxSize.x()/2;
191 output[1] = boxSize.y() * G4UniformRand() - boxSize.y()/2;
192 output[2] = boxSize.z() * G4UniformRand() - boxSize.z()/2;
193}
#define G4UniformRand()
Definition: Randomize.hh:52
double z() const
double x() const
double y() const

◆ Shoot()

virtual void G4MoleculeShoot::Shoot ( G4MoleculeGun )
pure virtual

Member Data Documentation

◆ fBoxSize

G4ThreeVector* G4MoleculeShoot::fBoxSize

Definition at line 86 of file G4MoleculeGun.hh.

Referenced by ChangeType(), G4MoleculeShoot(), and ~G4MoleculeShoot().

◆ fMoleculeName

G4String G4MoleculeShoot::fMoleculeName

Definition at line 82 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().

◆ fNumber

G4int G4MoleculeShoot::fNumber

Definition at line 85 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().

◆ fPosition

G4ThreeVector G4MoleculeShoot::fPosition

Definition at line 83 of file G4MoleculeGun.hh.

Referenced by ChangeType().

◆ fTime

G4double G4MoleculeShoot::fTime

Definition at line 84 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().


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