X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliMC.h;h=4a271b8cb70800ce1af8a090bc0c97695f46a272;hb=c34d2b8ccb1743298929752841c807c87e3db3ce;hp=0df48b1455eed3dee6e1ff22c2264605ad85d12f;hpb=0561efebeb1143f57b883b76bf223330261cdc8b;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliMC.h b/STEER/AliMC.h index 0df48b1455e..4a271b8cb70 100644 --- a/STEER/AliMC.h +++ b/STEER/AliMC.h @@ -13,11 +13,17 @@ #include #include +#include #include #include +class TParticle; +class TFile; +class TTree; + class AliGenerator; class AliMCQA; +class AliTrackReference; class AliMC : public TVirtualMCApplication { public: @@ -36,7 +42,10 @@ public: // MC Application // virtual void ConstructGeometry(); + virtual Bool_t MisalignGeometry(); + virtual void ConstructOpGeometry(); virtual void InitGeometry(); + virtual void SetAllAlignableVolumes(); virtual void GeneratePrimaries(); virtual void BeginEvent(); virtual void BeginPrimary(); @@ -99,15 +108,18 @@ public: virtual void KeepTrack(Int_t itra) const; virtual void FlagTrack(Int_t track) const; virtual void SetCurrentTrack(Int_t track) const; -// Track reference related - virtual void AddTrackReference(Int_t label); - TClonesArray *TrackReferences() const {return fTrackReferences;} - virtual void RemapTrackReferencesIDs(Int_t *map); //remaping track references MI - virtual void ResetTrackReferences(); - virtual void FixParticleDecaytime(); - -private: +// Track reference related + AliTrackReference* AddTrackReference(Int_t label, Int_t id = -999); + TClonesArray* TrackReferences() const {return fTrackReferences;} + virtual void RemapTrackReferencesIDs(Int_t *map); //remaping track references MI + virtual void ResetTrackReferences(); + virtual void FixParticleDecaytime(); + private: + void MakeTmpTrackRefsTree(); + void ReorderAndExpandTreeTR(); + private: void Copy (TObject &mc) const; + void RemapHits(); AliGenerator *fGenerator; // Generator used in the MC TArrayF fEventEnergy; //! Energy deposit for current event TArrayF fSummEnergy; //! Energy per event in each volume @@ -120,11 +132,13 @@ private: TArrayI *fImedia; //! Array of correspondence between media and detectors TString fTransParName; // Name of the transport parameters file AliMCQA *fMCQA; // Pointer to MC Quality assurance class - //PH TList *fHitLists; //! Lists of hits to be remapped by PurifyKine - TClonesArray *fTrackReferences; //!list of track references - for one primary track only -MI - - ClassDef(AliMC,2) + //Temporary Track Reference tree related + TTree *fTmpTreeTR; //! Temporary track reference tree + TFile *fTmpFileTR; //! Temporary track reference file + TClonesArray *fTrackReferences; //! List of track references - for one primary track only + TClonesArray *fTmpTrackReferences; //! Temporary list of track references - for one primary track only + ClassDef(AliMC, 3) };