SLIC  6.1.1
Simulation for the Linear Collider (SLIC) - Geant4 simulation application
UserTrackInformation.hh
Go to the documentation of this file.
1 #ifndef SLIC_USERTRACKINFORMATION_HH_
2 #define SLIC_USERTRACKINFORMATION_HH_ 1
3 
4 // LCDD
5 #include "lcdd/core/VUserTrackInformation.hh"
6 
7 // SLIC
8 #include "TrackSummary.hh"
9 
10 // Geant4
11 #include "globals.hh"
12 #include "G4Allocator.hh"
13 #include "G4VUserTrackInformation.hh"
14 
15 namespace slic {
16 
21 class UserTrackInformation: public VUserTrackInformation {
22  //: public G4VUserTrackInformation {
23 
24  public:
25 
31  _trackSummary = aTrackSummary;
32  }
33 
38  }
39 
43  inline void *operator new(size_t);
44 
48  inline void operator delete(void *trackInfo);
49 
55  return _trackSummary;
56  }
57 
59  if (_trackSummary != NULL)
61  }
62 
67  void Print() const {
68  G4cout << "UserTrackInformation::Print is not implemented!!!" << G4endl;
69  }
70 
71  private:
73 };
74 
75 extern G4Allocator<UserTrackInformation> UserTrackInformationAllocator;
76 
77 inline void* UserTrackInformation::operator new(size_t) {
78  void* trackInfo;
79  trackInfo = (void*) UserTrackInformationAllocator.MallocSingle();
80  return trackInfo;
81 }
82 
83 inline void UserTrackInformation::operator delete(void *trackInfo) {
84  UserTrackInformationAllocator.FreeSingle((UserTrackInformation*) trackInfo);
85 }
86 
87 }
88 
89 #endif
90 
Container for all information from G4Track that may be persisted to MCParticle output collection.
Definition: TrackSummary.hh:33
The implementation of the G4VUserTrackInformation class for storing track information within the even...
TrackSummary * getTrackSummary() const
UserTrackInformation(TrackSummary *aTrackSummary)
G4Allocator< UserTrackInformation > UserTrackInformationAllocator