Moved Tao's code to TaoLEMuSR.
This commit is contained in:
71
geant4/TaoLEMuSR/include/LEMuSRParticleGun.hh
Normal file
71
geant4/TaoLEMuSR/include/LEMuSRParticleGun.hh
Normal file
@ -0,0 +1,71 @@
|
||||
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$//*
|
||||
// LOW ENERGY MUON SPIN RELAXATION, ROTATION, RADIATION
|
||||
//
|
||||
// ID : LEMuSRParticleGun.hh , v 1.2
|
||||
// AUTHOR: Taofiq PARAISO
|
||||
// DATE : 2004-08-20 10:48
|
||||
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$//
|
||||
//
|
||||
// & &&&&&&&&&& &&&&&&& &&&&&&&&
|
||||
// & & && && & &&
|
||||
// & & & & & & &&
|
||||
// & &&&&&&& & & &&&&&& &&&&&&&&
|
||||
// & & & && & & &&
|
||||
// & & && & & && && & &
|
||||
// &&&&&&&&&& &&&&&&&&&& & &&&&& && &&&&&&& & &&
|
||||
// &
|
||||
// &
|
||||
// &
|
||||
// &
|
||||
// PARTICLE GUN
|
||||
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$//
|
||||
|
||||
#ifndef LEMuSRParticleGun_h
|
||||
#define LEMuSRParticleGun_h 1
|
||||
|
||||
#include "G4ParticleGun.hh"
|
||||
#include "G4Event.hh"
|
||||
#include "G4PrimaryParticle.hh"
|
||||
|
||||
class LEMuSRParticleGunMessenger;
|
||||
#include"G4ParticleGunMessenger.hh"
|
||||
|
||||
/*!
|
||||
* The LEMuSRParticleGun is the class which stores the initial settings of the particles.
|
||||
* Its interplay with the LEMuSRPrimaryGeneratorAction (PGA) is very strong.
|
||||
* Indeed, the particle gun object is instanciated and initialized in the PGA.
|
||||
*
|
||||
* After this initialization, the PGA calls the particle gun's GeneratePrimaryVertex method
|
||||
* to create an event with the defined initial conditions.
|
||||
*
|
||||
* As an image one can think that the PGA loads the gun with some defined particles,
|
||||
* set the shooting energy, aims and fires. Hence the name.
|
||||
*/
|
||||
class LEMuSRParticleGun: public G4ParticleGun
|
||||
{
|
||||
public:
|
||||
//!\ct
|
||||
LEMuSRParticleGun();
|
||||
//!\dt
|
||||
~LEMuSRParticleGun();
|
||||
|
||||
//! Creates the first event.
|
||||
void GeneratePrimaryVertex(G4Event* evt);
|
||||
|
||||
//! Assign a decay time
|
||||
inline void SetDecayTime(G4double d) {decaytime = d;}
|
||||
|
||||
G4double decaytime;
|
||||
|
||||
|
||||
protected:
|
||||
//! Default initialization of the gun.
|
||||
void SetInitialValues();
|
||||
|
||||
private:
|
||||
//! Messenger
|
||||
LEMuSRParticleGunMessenger* theMessenger;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user