LBNETrackInformation.hh
Go to the documentation of this file.
1 //
2 // LBNETrackInformation.hh
3 //
4 #ifndef LBNETrackInformation_h
5 #define LBNETrackInformation_h 1
6 
7 #include "globals.hh"
8 #include "G4ThreeVector.hh"
9 #include "G4ParticleDefinition.hh"
10 #include "G4Track.hh"
11 #include "G4Allocator.hh"
12 #include "G4VUserTrackInformation.hh"
13 
14 class LBNETrackInformation : public G4VUserTrackInformation
15 {
16  public:
18  LBNETrackInformation(const LBNETrackInformation* aTrackInfo);
19  LBNETrackInformation(const LBNETrackInformation& aTrackInfo);
22  virtual ~LBNETrackInformation();
23 
24  inline void *operator new(size_t);
25  inline void operator delete(void *aTrackInfo);
28 
29  inline G4int GetDecayCode() const
30  {return decay_code;}
31  inline void SetDecayCode(G4int decaycode)
32  {decay_code=decaycode;}
33 
34  inline G4int GetTgen() const
35  {return tgen;}
36  inline void SetTgen(G4int tgeneration)
37  {tgen=tgeneration;}
38 
39  inline G4double GetNImpWt() const
40  {return Nimpwt;}
41  inline void SetNImpWt(G4double nimpweight)
42  {Nimpwt=nimpweight;}
43 
44  void Print() const;
45 
46  void Print(const G4Track *aTrack) const;
47  inline G4ThreeVector GetParentMomentumAtThisProduction() const {
49  }
50 
51  inline void SetParentMomentumAtThisProduction( G4ThreeVector mom) {
53  }
54  private:
55  G4int decay_code;
56  G4int tgen;
57  G4double Nimpwt;
60 
61  public:
62 
63  inline int GetPFFlag() const { return fPerfectFocusingFlag; }
64  inline void SetPFFlag(int f) { fPerfectFocusingFlag = f; }
65 };
66 
67 extern G4Allocator<LBNETrackInformation> aTrackInformationAllocator;
68 
69 inline void* LBNETrackInformation::operator new(size_t)
70 { void* aTrackInfo;
71  aTrackInfo = (void*)aTrackInformationAllocator.MallocSingle();
72  return aTrackInfo;
73 }
74 
75 inline void LBNETrackInformation::operator delete(void *aTrackInfo)
76 { aTrackInformationAllocator.FreeSingle((LBNETrackInformation*)aTrackInfo);}
77 
78 #endif
79 
constexpr auto const & right(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
Definition: AssnsIter.h:104
G4Allocator< LBNETrackInformation > aTrackInformationAllocator
void SetParentMomentumAtThisProduction(G4ThreeVector mom)
G4ThreeVector fParentMomentumAtThisProduction
LBNETrackInformation & operator=(const LBNETrackInformation &right)
void SetNImpWt(G4double nimpweight)
void SetDecayCode(G4int decaycode)
G4double GetNImpWt() const
void SetTgen(G4int tgeneration)
G4ThreeVector GetParentMomentumAtThisProduction() const