Geant4-11
Public Member Functions | Static Public Member Functions | Data Fields
G4MoleculeShoot Class Referenceabstract

#include <G4MoleculeGun.hh>

Inheritance diagram for G4MoleculeShoot:
TG4MoleculeShoot< TYPE >

Public Member Functions

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

Static Public Member Functions

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

Data Fields

G4ThreeVectorfBoxSize
 
G4String fMoleculeName
 
G4int fNumber
 
G4ThreeVector fPosition
 
G4double fTime
 

Detailed Description

Definition at line 70 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

References fBoxSize, fMoleculeName, fNumber, and fTime.

◆ ~G4MoleculeShoot()

G4MoleculeShoot::~G4MoleculeShoot ( )
virtual

Definition at line 208 of file G4MoleculeGun.cc.

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

References fBoxSize.

Member Function Documentation

◆ ChangeType()

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

Definition at line 112 of file G4MoleculeGun.hh.

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

References fBoxSize, fMoleculeName, fNumber, fPosition, and fTime.

◆ 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

References G4UniformRand, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

◆ Shoot()

virtual void G4MoleculeShoot::Shoot ( G4MoleculeGun )
pure virtual

Field Documentation

◆ fBoxSize

G4ThreeVector* G4MoleculeShoot::fBoxSize

Definition at line 84 of file G4MoleculeGun.hh.

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

◆ fMoleculeName

G4String G4MoleculeShoot::fMoleculeName

Definition at line 80 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().

◆ fNumber

G4int G4MoleculeShoot::fNumber

Definition at line 83 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().

◆ fPosition

G4ThreeVector G4MoleculeShoot::fPosition

Definition at line 81 of file G4MoleculeGun.hh.

Referenced by ChangeType().

◆ fTime

G4double G4MoleculeShoot::fTime

Definition at line 82 of file G4MoleculeGun.hh.

Referenced by ChangeType(), and G4MoleculeShoot().


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