//-------------------------------------------------------------------------
#include <TObject.h>
+#include <TClonesArray.h>
+#include <AliExternalTrackParam.h>
class AliTrackPointArray;
class AliKalmanTrack;
-
+class TObjArrray;
//_____________________________________________________________________________
class AliESDfriendTrack : public TObject {
public:
kMaxTRDcluster=180
};
AliESDfriendTrack();
- AliESDfriendTrack(const AliESDfriendTrack &);
+ AliESDfriendTrack(const AliESDfriendTrack &t);
virtual ~AliESDfriendTrack();
void Set1P(Float_t p) {f1P=p;}
void SetTRDtrack(AliKalmanTrack *t) {fTRDtrack=t;}
AliKalmanTrack *GetTRDtrack() {return fTRDtrack;}
AliKalmanTrack *GetITStrack() {return fITStrack;}
+ void AddCalibObject(TObject * calibObject);
+ TObject * GetCalibObject(Int_t index);
+ //
+ // parameters backup
+ void SetTPCOut(const AliExternalTrackParam ¶m);
+ void SetITSOut(const AliExternalTrackParam ¶m);
+ void SetTRDIn(const AliExternalTrackParam ¶m);
+ //
+
+ const AliExternalTrackParam * GetTPCOut() const {return fTPCOut;}
+ const AliExternalTrackParam * GetITSOut() const {return fITSOut;}
+ const AliExternalTrackParam * GetTRDIn() const {return fTRDIn;}
+
+ void SetITSIndices(Int_t* indices, Int_t n);
+ void SetTPCIndices(Int_t* indices, Int_t n);
+ void SetTRDIndices(Int_t* indices, Int_t n);
+
+ Int_t GetMaxITScluster() {return fnMaxITScluster;}
+ Int_t GetMaxTPCcluster() {return fnMaxTPCcluster;}
+ Int_t GetMaxTRDcluster() {return fnMaxTRDcluster;}
+
+ // bit manipulation for filtering
+ void SetSkipBit(Bool_t skip){SetBit(23,skip);}
+ Bool_t TestSkipBit() {return TestBit(23);}
protected:
Float_t f1P; // 1/P (1/(GeV/c))
- Int_t fITSindex[kMaxITScluster]; // indices of the ITS clusters
- Int_t fTPCindex[kMaxTPCcluster]; // indices of the TPC clusters
- Int_t fTRDindex[kMaxTRDcluster]; // indices of the TRD clusters
- AliTrackPointArray *fPoints;//Array of track space points in the global frame
+ Int_t fnMaxITScluster; // Max number of ITS clusters
+ Int_t fnMaxTPCcluster; // Max number of TPC clusters
+ Int_t fnMaxTRDcluster; // Max number of TRD clusters
+ Int_t* fITSindex; //[fnMaxITScluster] indices of the ITS clusters
+ Int_t* fTPCindex; //[fnMaxTPCcluster] indices of the TPC clusters
+ Int_t* fTRDindex; //[fnMaxTRDcluster] indices of the TRD clusters
+ AliTrackPointArray *fPoints;//Array of track space points in the global frame
+ TObjArray *fCalibContainer; //Array of objects for calibration
AliKalmanTrack *fITStrack; //! pointer to the ITS track (debug purposes)
AliKalmanTrack *fTRDtrack; //! pointer to the TRD track (debug purposes)
+ //
+ //
+ AliExternalTrackParam * fTPCOut; // tpc outer parameters
+ AliExternalTrackParam * fITSOut; // its outer parameters
+ AliExternalTrackParam * fTRDIn; // trd inner parameters
+
+private:
+ AliESDfriendTrack &operator=(const AliESDfriendTrack & /* t */) {return *this;}
- ClassDef(AliESDfriendTrack,1) //ESD friend track
+ ClassDef(AliESDfriendTrack,6) //ESD friend track
};
#endif