#include <AliModule.h>
class AliHit;
+class AliTrackReference;
class TTree;
class TBranch;
// Creators - distructors
AliDetector(const char* name, const char *title);
AliDetector();
- AliDetector(const AliDetector &det) {det.Copy(*this);}
+ AliDetector(const AliDetector &det);
virtual ~AliDetector();
// Inline functions
- void Copy(AliDetector &det) const;
+ void Copy(AliDetector &det) const;
virtual int GetNdigits() const {return fNdigits;}
virtual int GetNhits() const {return fNhits;}
TClonesArray *Digits() const {return fDigits;}
TClonesArray *Hits() const {return fHits;}
+ TClonesArray *TrackReferences() const {return fTrackReferences;}
+ virtual void RemapTrackReferencesIDs(Int_t *map); //remaping track references MI
+
TObjArray *Points() const {return fPoints;}
Int_t GetIshunt() const {return fIshunt;}
void SetIshunt(Int_t ishunt) {fIshunt=ishunt;}
virtual void FinishRun();
virtual void LoadPoints(Int_t track);
virtual void MakeBranch(Option_t *opt=" ", const char *file=0 );
+ virtual void MakeBranchTR(Option_t *opt=" ", const char *file=0 );
virtual void ResetDigits();
virtual void ResetHits();
+ virtual void ResetTrackReferences();
+
virtual void ResetPoints();
virtual void SetTreeAddress();
virtual void SetTimeGate(Float_t gate) {fTimeGate=gate;}
virtual void DrawModule() {}
virtual AliHit* FirstHit(Int_t track);
virtual AliHit* NextHit();
+ virtual AliTrackReference * FirstTrackReference(Int_t track);
+ virtual AliTrackReference * NextTrackReference();
virtual void SetBufferSize(Int_t bufsize=8000) {fBufferSize = bufsize;}
virtual TBranch* MakeBranchInTree(TTree *tree, const char* cname, void* address, Int_t size=32000, const char *file=0);
virtual TBranch* MakeBranchInTree(TTree *tree, const char* cname, const char* name, void* address, Int_t size=32000, Int_t splitlevel=99, const char *file=0);
TClonesArray *fDigits; //List of digits for this detector
char *fDigitsFile; //!File to store branches of digits tree for detector
TObjArray *fPoints; //!Array of points for each track (all tracks in memory)
-
- ClassDef(AliDetector,1) //Base class for ALICE detectors
+ TClonesArray *fTrackReferences; //list of track references - for one primary track only -MI
+ Int_t fMaxIterTrackRef; //!for track refernce iterator routines
+ Int_t fCurrentIterTrackRef; //!for track refernce iterator routines
+ ClassDef(AliDetector,2) //Base class for ALICE detectors
};
#endif