diff options
| author | Anthony LaTorre <tlatorre9@gmail.com> | 2011-08-03 14:33:39 -0400 |
|---|---|---|
| committer | Anthony LaTorre <tlatorre9@gmail.com> | 2011-08-03 14:33:39 -0400 |
| commit | 4e1047698bad5a600dd6a2aaa825667fc3617b07 (patch) | |
| tree | 0fe658ce1f3fd2ef272997d800757056cfd18291 /G4chroma.hh | |
| parent | 4bf95f452e3275c12026b16b51dc646846598f19 (diff) | |
| parent | 91bf7a2e2371a321b3bd402810cfe3b2774e2777 (diff) | |
| download | chroma-4e1047698bad5a600dd6a2aaa825667fc3617b07.tar.gz chroma-4e1047698bad5a600dd6a2aaa825667fc3617b07.tar.bz2 chroma-4e1047698bad5a600dd6a2aaa825667fc3617b07.zip | |
merge heads
Diffstat (limited to 'G4chroma.hh')
| -rw-r--r-- | G4chroma.hh | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/G4chroma.hh b/G4chroma.hh new file mode 100644 index 0000000..4f085aa --- /dev/null +++ b/G4chroma.hh @@ -0,0 +1,49 @@ +#ifndef __G4chroma_hh__ +#define __G4chroma_hh__ + +#include <geant4/G4VModularPhysicsList.hh> +class ChromaPhysicsList: public G4VModularPhysicsList +{ +public: + ChromaPhysicsList(); + virtual ~ChromaPhysicsList(); + virtual void SetCuts(); +}; + +#include <geant4/G4UserTrackingAction.hh> +#include <vector> +#include <geant4/G4ThreeVector.hh> + +class PhotonTrackingAction : public G4UserTrackingAction +{ +public: + PhotonTrackingAction(); + virtual ~PhotonTrackingAction(); + + int GetNumPhotons() const; + void Clear(); + + void GetX(double *x) const; + void GetY(double *y) const; + void GetZ(double *z) const; + void GetDirX(double *dir_x) const; + void GetDirY(double *dir_y) const; + void GetDirZ(double *dir_z) const; + void GetPolX(double *pol_x) const; + void GetPolY(double *pol_y) const; + void GetPolZ(double *pol_z) const; + + void GetWavelength(double *wl) const; + void GetT0(double *t) const; + + virtual void PreUserTrackingAction(const G4Track *); + +protected: + std::vector<G4ThreeVector> pos; + std::vector<G4ThreeVector> dir; + std::vector<G4ThreeVector> pol; + std::vector<double> wavelength; + std::vector<double> t0; +}; + +#endif |
