From 08f45a9c887b10771c96cd7dc35d6f5ddfe99a5e Mon Sep 17 00:00:00 2001 From: mkrzewic Date: Mon, 14 Jul 2014 16:23:57 +0200 Subject: [PATCH] a compiling version of the VV interface WITH friends still some warnings remaining about hidden methods - to be resolved --- HLT/global/AliFlatESDFriend.h | 4 +- HLT/global/AliFlatESDFriendTrack.h | 18 +++++--- STEER/CMakelibSTEERBase.pkg | 5 +++ STEER/ESD/AliESDEvent.h | 6 +-- STEER/ESD/AliESDfriend.h | 3 +- STEER/ESD/AliESDfriendTrack.h | 14 +++--- STEER/ESD/AliESDv0.h | 1 + STEER/ESD/AliTrackPointArray.cxx | 6 +-- STEER/ESD/AliTrackPointArray.h | 13 +++--- STEER/STEERBase/AliExternalTrackParam.h | 1 + STEER/STEERBase/AliVTrack.cxx | 3 ++ STEER/STEERBase/AliVTrack.h | 5 ++- STEER/STEERBase/AliVVTPCseed.cxx | 1 + STEER/STEERBase/AliVVTPCseed.h | 16 +++++++ STEER/STEERBase/AliVVTRDseed.cxx | 1 + STEER/STEERBase/AliVVTRDseed.h | 16 +++++++ STEER/STEERBase/AliVVevent.h | 4 +- STEER/STEERBase/AliVVexternalTrackParam.h | 9 ---- STEER/STEERBase/AliVVfriendEvent.cxx | 1 + STEER/STEERBase/AliVVfriendEvent.h | 11 +++-- STEER/STEERBase/AliVVfriendTrack.cxx | 1 + STEER/STEERBase/AliVVfriendTrack.h | 30 ++++++------- STEER/STEERBase/AliVVtrack.cxx | 1 + STEER/STEERBase/AliVVtrack.h | 8 +++- STEER/STEERBase/AliVVtrackPoint.cxx | 2 + STEER/STEERBase/AliVVtrackPoint.h | 52 +++++++++++++++++++++++ STEER/STEERBase/AliVVtrackPointArray.cxx | 2 + STEER/STEERBase/AliVVtrackPointArray.h | 18 ++++++++ STEER/STEERBaseLinkDef.h | 7 ++- TPC/Rec/AliTPCseed.h | 1 + 30 files changed, 197 insertions(+), 63 deletions(-) create mode 100644 STEER/STEERBase/AliVVTPCseed.cxx create mode 100644 STEER/STEERBase/AliVVTPCseed.h create mode 100644 STEER/STEERBase/AliVVTRDseed.cxx create mode 100644 STEER/STEERBase/AliVVTRDseed.h create mode 100644 STEER/STEERBase/AliVVfriendEvent.cxx create mode 100644 STEER/STEERBase/AliVVfriendTrack.cxx create mode 100644 STEER/STEERBase/AliVVtrackPoint.cxx create mode 100644 STEER/STEERBase/AliVVtrackPoint.h create mode 100644 STEER/STEERBase/AliVVtrackPointArray.cxx create mode 100644 STEER/STEERBase/AliVVtrackPointArray.h diff --git a/HLT/global/AliFlatESDFriend.h b/HLT/global/AliFlatESDFriend.h index c1eac21c7af..51348b3f7b5 100644 --- a/HLT/global/AliFlatESDFriend.h +++ b/HLT/global/AliFlatESDFriend.h @@ -11,14 +11,14 @@ #include "Rtypes.h" #include "AliFlatESDMisc.h" -#include "AliVVeventFriend.h" +#include "AliVVfriendEvent.h" #include "AliFlatESDFriendTrack.h" class AliVVVZEROfriend; class AliVVTZEROfriend; //_____________________________________________________________________________ -class AliFlatESDFriend : public AliVVfriend { +class AliFlatESDFriend : public AliVVfriendEvent { public: AliFlatESDFriend(); ~AliFlatESDFriend() {} diff --git a/HLT/global/AliFlatESDFriendTrack.h b/HLT/global/AliFlatESDFriendTrack.h index 7d12eb8ee36..beb423bc933 100644 --- a/HLT/global/AliFlatESDFriendTrack.h +++ b/HLT/global/AliFlatESDFriendTrack.h @@ -25,6 +25,8 @@ Op - Track parameters estimated at the point of maximal radial coordinate reache class AliESDtrack; class AliESDfriendTrack; class AliExternalTrackParam; +class AliTrackPointArray; +class AliVVtrack; class AliFlatESDFriendTrack :public AliVVfriendTrack { @@ -34,12 +36,16 @@ class AliFlatESDFriendTrack :public AliVVfriendTrack //implementation of AliVVfriendTrack methods - AliVVTPCseed* GetTPCseed() const {return NULL;} - AliVVTRDseed* GetTRDseed() const {return NULL;} - const AliTrackPointArray *GetTrackPointArray() const { return NULL; } - const AliExternalTrackParam * GetITSOut() const { return NULL; } - const AliExternalTrackParam * GetTPCOut() const { return NULL; } - const AliExternalTrackParam * GetTRDIn() const { return NULL; } + //AliVVTPCseed* GetTPCseed() const {return NULL;} + AliVVtrack* GetTPCseed() const {return NULL;} + //AliVVTRDseed* GetTRDseed() const {return NULL;} + const AliVVtrackPointArray *GetTrackPointArray() const { return NULL; } + //const AliExternalTrackParam * GetITSOut() const { return NULL; } + //const AliExternalTrackParam * GetTPCOut() const { return NULL; } + //const AliExternalTrackParam * GetTRDIn() const { return NULL; } + const AliVVtrack * GetITSOut() const { return NULL; } + const AliVVtrack * GetTPCOut() const { return NULL; } + const AliVVtrack * GetTRDIn() const { return NULL; } // own methods diff --git a/STEER/CMakelibSTEERBase.pkg b/STEER/CMakelibSTEERBase.pkg index e897eaf8d10..d33f553f17b 100644 --- a/STEER/CMakelibSTEERBase.pkg +++ b/STEER/CMakelibSTEERBase.pkg @@ -3,11 +3,16 @@ set ( SRCS STEERBase/AliVVevent.cxx STEERBase/AliVVtrack.cxx + STEERBase/AliVVfriendEvent.cxx + STEERBase/AliVVfriendTrack.cxx STEERBase/AliVVvertex.cxx STEERBase/AliVVv0.cxx STEERBase/AliVVkink.cxx STEERBase/AliVVcluster.cxx STEERBase/AliVVexternalTrackParam.cxx + STEERBase/AliVVtrackPointArray.cxx + STEERBase/AliVVtrackPoint.cxx + STEERBase/AliVVTPCseed.cxx STEERBase/AliVParticle.cxx STEERBase/AliVTrack.cxx STEERBase/AliEventplane.cxx diff --git a/STEER/ESD/AliESDEvent.h b/STEER/ESD/AliESDEvent.h index 28ce0747f1b..208b357e8dd 100644 --- a/STEER/ESD/AliESDEvent.h +++ b/STEER/ESD/AliESDEvent.h @@ -48,10 +48,8 @@ #include "AliESDTOFMatch.h" #include "AliESDv0.h" #include "AliESDkink.h" +#include "AliESDfriend.h" - - -class AliESDfriend; class AliESDHLTtrack; class AliESDVertex; class AliESDPmdTrack; @@ -280,7 +278,7 @@ public: void SetESDfriend(const AliESDfriend *f) const; void GetESDfriend(AliESDfriend *f) const; - //AliESDfriend* FindFriend() const { return static_cast(FindListObject("AliESDfriend")); } + AliESDfriend* FindFriend() const { return static_cast(FindListObject("AliESDfriend")); } void SetPrimaryVertexTPC(const AliESDVertex *vertex); const AliESDVertex *GetPrimaryVertexTPC() const {return fTPCVertex;} diff --git a/STEER/ESD/AliESDfriend.h b/STEER/ESD/AliESDfriend.h index 530389ee4c3..3999940c09a 100644 --- a/STEER/ESD/AliESDfriend.h +++ b/STEER/ESD/AliESDfriend.h @@ -11,12 +11,13 @@ #include #include "AliESDfriendTrack.h" +#include "AliVVfriendEvent.h" class AliESDVZEROfriend; class AliESDTZEROfriend; //_____________________________________________________________________________ -class AliESDfriend : public TObject { +class AliESDfriend : public TObject, public AliVVfriendEvent { public: AliESDfriend(); AliESDfriend(const AliESDfriend &); diff --git a/STEER/ESD/AliESDfriendTrack.h b/STEER/ESD/AliESDfriendTrack.h index 6e7329fe7eb..66aeb48368c 100644 --- a/STEER/ESD/AliESDfriendTrack.h +++ b/STEER/ESD/AliESDfriendTrack.h @@ -10,15 +10,16 @@ #include #include #include +#include "AliVVfriendTrack.h" +#include "AliTrackPointArray.h" -class AliTrackPointArray; class AliKalmanTrack; class TObjArrray; -class AliTPCseed; -class AliTRDseedV1; +class AliVVtrack; + //_____________________________________________________________________________ -class AliESDfriendTrack : public TObject { +class AliESDfriendTrack : public TObject, public AliVVfriendTrack { public: enum { kMaxITScluster=12, @@ -45,10 +46,7 @@ public: AliKalmanTrack *GetITStrack() {return fITStrack;} void AddCalibObject(TObject * calibObject); TObject * GetCalibObject(Int_t index); - void AddTPCseed(AliTPCseed* /*seed*/) {} - void AddTRDseed(AliTRDseedV1* /*seed*/) {} - AliTPCseed* GetTPCseed() const {return NULL;} - AliTRDseedV1* GetTRDseed() const {return NULL;} + AliVVtrack* GetTPCseed() const {return NULL;} // // parameters backup void SetTPCOut(const AliExternalTrackParam ¶m); diff --git a/STEER/ESD/AliESDv0.h b/STEER/ESD/AliESDv0.h index a3e9aea683c..af7da1b1143 100644 --- a/STEER/ESD/AliESDv0.h +++ b/STEER/ESD/AliESDv0.h @@ -76,6 +76,7 @@ public: void GetPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; void GetNPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; void GetPPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; + using AliVVtrack::GetXYZ; void GetXYZ(Double_t &x, Double_t &y, Double_t &z) const; Float_t GetD(Double_t x0,Double_t y0) const; Float_t GetD(Double_t x0,Double_t y0,Double_t z0) const; diff --git a/STEER/ESD/AliTrackPointArray.cxx b/STEER/ESD/AliTrackPointArray.cxx index 3b507418e64..40dfa6326be 100644 --- a/STEER/ESD/AliTrackPointArray.cxx +++ b/STEER/ESD/AliTrackPointArray.cxx @@ -220,7 +220,7 @@ Bool_t AliTrackPointArray::AddPoint(Int_t i, const AliTrackPoint *p) //______________________________________________________________________________ -Bool_t AliTrackPointArray::GetPoint(AliTrackPoint &p, Int_t i) const +Bool_t AliTrackPointArray::GetPoint(AliVVtrackPoint &p, Int_t i) const { // Get the point at position i // @@ -433,7 +433,7 @@ void AliTrackPoint::GetXYZ(Float_t *xyz, Float_t *cov) const } //______________________________________________________________________________ -Float_t AliTrackPoint::GetResidual(const AliTrackPoint &p, Bool_t weighted) const +Float_t AliTrackPoint::GetResidual(const AliVVtrackPoint &p, Bool_t weighted) const { // This method calculates the track to space-point residuals. The track // interpolation is also stored as AliTrackPoint. Using the option @@ -478,7 +478,7 @@ Float_t AliTrackPoint::GetResidual(const AliTrackPoint &p, Bool_t weighted) cons } //_____________________________________________________________________________ -Bool_t AliTrackPoint::GetPCA(const AliTrackPoint &p, AliTrackPoint &out) const +Bool_t AliTrackPoint::GetPCA(const AliVVtrackPoint &p, AliVVtrackPoint &out) const { // // Get the intersection point between this point and diff --git a/STEER/ESD/AliTrackPointArray.h b/STEER/ESD/AliTrackPointArray.h index 81856a31478..cdacbb2bb07 100644 --- a/STEER/ESD/AliTrackPointArray.h +++ b/STEER/ESD/AliTrackPointArray.h @@ -14,10 +14,13 @@ #include #include +#include "AliVVtrackPointArray.h" +#include "AliVVtrackPoint.h" +#include "Rtypes.h" class TGeoRotation; -class AliTrackPoint : public TObject { +class AliTrackPoint : public AliVVtrackPoint, public TObject { public: AliTrackPoint(); @@ -51,8 +54,8 @@ class AliTrackPoint : public TObject { Int_t GetClusterType() const { return fClusterType;} Bool_t IsExtra() const { return fIsExtra;} - Float_t GetResidual(const AliTrackPoint &p, Bool_t weighted = kFALSE) const; - Bool_t GetPCA(const AliTrackPoint &p, AliTrackPoint &out) const; + Float_t GetResidual(const AliVVtrackPoint &p, Bool_t weighted = kFALSE) const; + Bool_t GetPCA(const AliVVtrackPoint &p, AliVVtrackPoint &out) const; Float_t GetAngle() const; Bool_t GetRotMatrix(TGeoRotation& rot) const; @@ -88,7 +91,7 @@ class AliTrackPoint : public TObject { // cvetan.cheshkov@cern.ch 3/11/2005 // ////////////////////////////////////////////////////////////////////////////// -class AliTrackPointArray : public TObject { +class AliTrackPointArray : public TObject, public AliVVtrackPointArray { public: @@ -103,7 +106,7 @@ class AliTrackPointArray : public TObject { Int_t GetNPoints() const { return fNPoints; } Int_t GetCovSize() const { return fSize; } - Bool_t GetPoint(AliTrackPoint &p, Int_t i) const; + Bool_t GetPoint(AliVVtrackPoint &p, Int_t i) const; // Getters for fast access to the coordinate arrays const Float_t* GetX() const { return &fX[0]; } const Float_t* GetY() const { return &fY[0]; } diff --git a/STEER/STEERBase/AliExternalTrackParam.h b/STEER/STEERBase/AliExternalTrackParam.h index 208b931d128..c4feecaa930 100644 --- a/STEER/STEERBase/AliExternalTrackParam.h +++ b/STEER/STEERBase/AliExternalTrackParam.h @@ -219,6 +219,7 @@ class AliExternalTrackParam: public AliVTrack { void GetDirection(Double_t d[3]) const; Bool_t GetPxPyPz(Double_t *p) const; + using AliVVtrack::GetXYZ; Bool_t GetXYZ(Double_t *p) const; Bool_t GetCovarianceXYZPxPyPz(Double_t cv[21]) const; Bool_t GetPxPyPzAt(Double_t x, Double_t b, Double_t p[3]) const; diff --git a/STEER/STEERBase/AliVTrack.cxx b/STEER/STEERBase/AliVTrack.cxx index ad5cd14646f..abb5f80a225 100644 --- a/STEER/STEERBase/AliVTrack.cxx +++ b/STEER/STEERBase/AliVTrack.cxx @@ -37,6 +37,9 @@ AliVTrack& AliVTrack::operator=(const AliVTrack& vTrack) return *this; } +Bool_t AliVTrack::GetXYZ(Double_t* /*p*/) const {return kFALSE;}; +Bool_t AliVTrack::GetXYZAt(Double_t /*x*/, Double_t /*b*/, Double_t* /*r*/ ) const {return kFALSE;} + Double_t AliVTrack::GetBz() const { // returns Bz component of the magnetic field (kG) diff --git a/STEER/STEERBase/AliVTrack.h b/STEER/STEERBase/AliVTrack.h index a1ac10a678c..a27f89f5d82 100644 --- a/STEER/STEERBase/AliVTrack.h +++ b/STEER/STEERBase/AliVTrack.h @@ -138,8 +138,9 @@ public: virtual Double_t GetIntegratedLength() const { return 0.;} virtual ULong_t GetStatus() const = 0; - virtual Bool_t GetXYZ(Double_t *p) const = 0; - virtual Bool_t GetXYZAt(Double_t /*x*/, Double_t /*b*/, Double_t* /*r*/ ) const {return kFALSE;} + virtual Bool_t GetXYZAt(Double_t /*x*/, Double_t /*b*/, Double_t* /*r*/ ) const ; + using AliVVtrack::GetXYZ; + virtual Bool_t GetXYZ(Double_t* /*p*/) const ; virtual Double_t GetBz() const; virtual void GetBxByBz(Double_t b[3]) const; virtual Bool_t GetCovarianceXYZPxPyPz(Double_t cv[21]) const = 0; diff --git a/STEER/STEERBase/AliVVTPCseed.cxx b/STEER/STEERBase/AliVVTPCseed.cxx new file mode 100644 index 00000000000..88804e3dcc8 --- /dev/null +++ b/STEER/STEERBase/AliVVTPCseed.cxx @@ -0,0 +1 @@ +#include "AliVVTPCseed.h" diff --git a/STEER/STEERBase/AliVVTPCseed.h b/STEER/STEERBase/AliVVTPCseed.h new file mode 100644 index 00000000000..6d755b4c4dd --- /dev/null +++ b/STEER/STEERBase/AliVVTPCseed.h @@ -0,0 +1,16 @@ +#ifndef ALIVVTPCSEED_H +#define ALIVVTPCSEED_H + +/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * See cxx source for full Copyright notice * + * Primary Author: Mikolaj Krzewicki, mkrzewic@cern.ch + */ +#include "Rtypes.h" +class AliVVTPCseed { + public: + AliVVTPCseed() {} + virtual ~AliVVTPCseed() {} + ClassDef(AliVVTPCseed, 1); +}; + +#endif diff --git a/STEER/STEERBase/AliVVTRDseed.cxx b/STEER/STEERBase/AliVVTRDseed.cxx new file mode 100644 index 00000000000..16ad7e35c0c --- /dev/null +++ b/STEER/STEERBase/AliVVTRDseed.cxx @@ -0,0 +1 @@ +#include "AliVVTRDseed.h" diff --git a/STEER/STEERBase/AliVVTRDseed.h b/STEER/STEERBase/AliVVTRDseed.h new file mode 100644 index 00000000000..3ad43cf3e0e --- /dev/null +++ b/STEER/STEERBase/AliVVTRDseed.h @@ -0,0 +1,16 @@ +#ifndef ALIVVTRDSEED_H +#define ALIVVTRDSEED_H + +/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * See cxx source for full Copyright notice * + * Primary Author: Mikolaj Krzewicki, mkrzewic@cern.ch + */ + +class AliVVTRDseed { + public: + AliVVTRDseed(); + virtual ~AliVVTRDseed(); + ClassDef(AliVVTRDseed, 1); +}; + +#endif diff --git a/STEER/STEERBase/AliVVevent.h b/STEER/STEERBase/AliVVevent.h index dcf42ead28f..1075581d801 100644 --- a/STEER/STEERBase/AliVVevent.h +++ b/STEER/STEERBase/AliVVevent.h @@ -15,7 +15,7 @@ class AliVVvertex; class AliVVtrack; class AliMultiplicity; class AliVVkink; -class AliVVeventFriend; +class AliVVfriendEvent; class AliVVevent { public: @@ -50,7 +50,7 @@ class AliVVevent { virtual UInt_t GetTimeStamp() const { return 0;} virtual UInt_t GetEventSpecie() const { return 0;} virtual ULong64_t GetSize() {return 0;}; - //virtual AliVVeventFriend* FindFriend() const { return NULL; } + virtual AliVVfriendEvent* FindFriend() const { return NULL; } ClassDef(AliVVevent,1) // base class for event data diff --git a/STEER/STEERBase/AliVVexternalTrackParam.h b/STEER/STEERBase/AliVVexternalTrackParam.h index 9b6604ef5a0..183ec936302 100644 --- a/STEER/STEERBase/AliVVexternalTrackParam.h +++ b/STEER/STEERBase/AliVVexternalTrackParam.h @@ -17,15 +17,6 @@ class AliVVexternalTrackParam AliVVexternalTrackParam() {} AliVVexternalTrackParam(Bool_t) {} virtual ~AliVVexternalTrackParam() {} - virtual void SetAlpha(Float_t /*alpha*/) {} - virtual void SetX(Float_t /*x*/) {} - virtual void SetY(Float_t /*y*/) {} - virtual void SetZ(Float_t /*z*/) {} - virtual void SetSnp(Float_t /*snp*/) {} - virtual void SetTgl(Float_t /*tgl*/) {} - virtual void SetSigned1Pt(Float_t /*signed1Pt*/) {} - virtual void SetCovEntry(Int_t /*idx*/, Float_t /*cov*/) {} - virtual Float_t GetAlpha() const {return 0.;} virtual Float_t GetX() const {return 0.;} virtual Float_t GetY() const {return 0.;} diff --git a/STEER/STEERBase/AliVVfriendEvent.cxx b/STEER/STEERBase/AliVVfriendEvent.cxx new file mode 100644 index 00000000000..f322c5a8a7b --- /dev/null +++ b/STEER/STEERBase/AliVVfriendEvent.cxx @@ -0,0 +1 @@ +#include "AliVVfriendEvent.h" diff --git a/STEER/STEERBase/AliVVfriendEvent.h b/STEER/STEERBase/AliVVfriendEvent.h index d90bbda77c1..51b33c9abf3 100644 --- a/STEER/STEERBase/AliVVfriendEvent.h +++ b/STEER/STEERBase/AliVVfriendEvent.h @@ -1,11 +1,14 @@ #ifndef ALIVVFRIENDEVENT_H #define ALIVVFRIENDEVENT_H +#include "Rtypes.h" +class AliVVfriendTrack; + //_____________________________________________________________________________ class AliVVfriendEvent { public: - AliVVfriendEvent(); - virtual ~AliVVfriendEvent(); + AliVVfriendEvent() {} + virtual ~AliVVfriendEvent() {} virtual Int_t GetNclustersTPC(UInt_t /*sector*/) const {return 0;} virtual Int_t GetNclustersTPCused(UInt_t /*sector*/) const {return 0;} @@ -13,11 +16,13 @@ public: //used in calibration virtual Bool_t TestSkipBit() {return kFALSE;} virtual Int_t GetNumberOfTracks() const {return 0;} - virtual const AliESDfriendTrack *GetTrack(Int_t /*i*/) const {return NULL;} + virtual const AliVVfriendTrack *GetTrack(Int_t /*i*/) const {return NULL;} private: AliVVfriendEvent(const AliVVfriendEvent &); AliVVfriendEvent& operator=(const AliVVfriendEvent& esd); + + ClassDef(AliVVfriendEvent,1); }; #endif diff --git a/STEER/STEERBase/AliVVfriendTrack.cxx b/STEER/STEERBase/AliVVfriendTrack.cxx new file mode 100644 index 00000000000..0fd25531e1b --- /dev/null +++ b/STEER/STEERBase/AliVVfriendTrack.cxx @@ -0,0 +1 @@ +#include "AliVVfriendTrack.h" diff --git a/STEER/STEERBase/AliVVfriendTrack.h b/STEER/STEERBase/AliVVfriendTrack.h index f2e7dec084b..25c11ff59c4 100644 --- a/STEER/STEERBase/AliVVfriendTrack.h +++ b/STEER/STEERBase/AliVVfriendTrack.h @@ -1,29 +1,29 @@ #ifndef ALIVVFRIENDTRACK_H #define ALIVVFRIENDTRACK_H -//_____________________________________________________________________________ - +#include "Rtypes.h" class AliVVTPCseed; -class AliVVTRDseed; -class AliTrackPointArray; -class AliExternalTrackParam; +class AliVVtrackPointArray; +class AliVVtrack; +//_____________________________________________________________________________ class AliVVfriendTrack { public: - AliVVfriendTrack(){} - virtual ~AliVVfriendTrack(){} + AliVVfriendTrack() {} + virtual ~AliVVfriendTrack() {} //used in calibration - virtual AliVVTPCseed* GetTPCseed() const {return NULL;} - virtual AliVVTRDseed* GetTRDseed() const {return NULL;} - virtual const AliTrackPointArray *GetTrackPointArray() const {return NULL;} - virtual const AliExternalTrackParam * GetITSOut() const {return NULL;} - virtual const AliExternalTrackParam * GetTPCOut() const {return NULL;} - virtual const AliExternalTrackParam * GetTRDIn() const {return NULL;} + virtual AliVVtrack* GetTPCseed() const {return NULL;} + virtual const AliVVtrackPointArray *GetTrackPointArray() const {return NULL;} + virtual const AliVVtrack * GetITSOut() const {return NULL;} + virtual const AliVVtrack * GetTPCOut() const {return NULL;} + virtual const AliVVtrack * GetTRDIn() const {return NULL;} private: - AliVVfriendTrack(const AliVVfriendTrack &){} - AliVVfriendTrack& operator=(const AliVVfriendTrack& ){} + AliVVfriendTrack(const AliVVfriendTrack &); + AliVVfriendTrack& operator=(const AliVVfriendTrack& esd); + + ClassDef(AliVVfriendTrack,1); }; #endif diff --git a/STEER/STEERBase/AliVVtrack.cxx b/STEER/STEERBase/AliVVtrack.cxx index d0580222e45..73ab69b1c70 100644 --- a/STEER/STEERBase/AliVVtrack.cxx +++ b/STEER/STEERBase/AliVVtrack.cxx @@ -41,6 +41,7 @@ Bool_t AliVVtrack::GetXYZ(Double_t* /*p*/) const {return kFALSE;} void AliVVtrack::GetXYZ(Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} + Bool_t AliVVtrack::GetXYZAt(Double_t /*x*/, Double_t /*y*/, Double_t* /*z*/) const {return kFALSE;} Double_t AliVVtrack::GetTgl() const {return 0.;} UShort_t AliVVtrack::GetTPCNclsF() const { return 0;} diff --git a/STEER/STEERBase/AliVVtrack.h b/STEER/STEERBase/AliVVtrack.h index 1d9ec4771f2..ebafbf13db5 100644 --- a/STEER/STEERBase/AliVVtrack.h +++ b/STEER/STEERBase/AliVVtrack.h @@ -37,8 +37,12 @@ class AliVVtrack { virtual Int_t GetNumberOfITSClusters() ; virtual AliVVtrack *GetNextTrack() ; - virtual Bool_t GetXYZ(Double_t* /*p*/) const ; - virtual void GetXYZ(Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const ; + virtual Bool_t GetXYZ(Double_t* p) const ; + virtual Bool_t GetXYZAt(Double_t x, Double_t y, Double_t* z) const ; + + //AliESDv0 + virtual void GetXYZ(Double_t& x, Double_t& y, Double_t& z) const ; + virtual Double_t GetTgl() const ; virtual UShort_t GetTPCNclsF() const ; diff --git a/STEER/STEERBase/AliVVtrackPoint.cxx b/STEER/STEERBase/AliVVtrackPoint.cxx new file mode 100644 index 00000000000..c02bb35ef63 --- /dev/null +++ b/STEER/STEERBase/AliVVtrackPoint.cxx @@ -0,0 +1,2 @@ +#include "AliVVtrackPoint.h" + diff --git a/STEER/STEERBase/AliVVtrackPoint.h b/STEER/STEERBase/AliVVtrackPoint.h new file mode 100644 index 00000000000..522ffbe2c60 --- /dev/null +++ b/STEER/STEERBase/AliVVtrackPoint.h @@ -0,0 +1,52 @@ +#ifndef ALIVVTRACKPOINT_H +#define ALIVVTRACKPOINT_H + +#include "Rtypes.h" +class TGeoRotation; +class AliTrackPoint; + + +class AliVVtrackPoint { + public: + AliVVtrackPoint() {} + virtual ~AliVVtrackPoint() {} + + + virtual void SetXYZ(Float_t /*x*/, Float_t /*y*/, Float_t /*z*/, const Float_t *cov = 0) {if (cov) return;} + virtual void SetXYZ(const Float_t* /*xyz*/, const Float_t *cov = 0) {if (cov) return;} + virtual void SetCov(const Float_t* /*cov*/) {} + virtual void SetVolumeID(UShort_t /*volid*/) {} + virtual void SetCharge(Float_t /*charge*/) {} + virtual void SetDriftTime(Float_t /*time*/) {} + virtual void SetChargeRatio(Float_t /*ratio*/) {} + virtual void SetClusterType(Int_t /*clutype*/) {} + virtual void SetExtra(Bool_t flag=kTRUE) {if (flag) return;} + + virtual Float_t GetX() const { return 0.; } + virtual Float_t GetY() const { return 0.; } + virtual Float_t GetZ() const { return 0.; } + virtual void GetXYZ(Float_t* /*xyz*/, Float_t* cov = 0) const {if (cov) return;} + virtual const Float_t* GetCov() const { return NULL; } + virtual UShort_t GetVolumeID() const { return 0; } + virtual Float_t GetCharge() const { return 0.; } + virtual Float_t GetDriftTime() const { return 0.;} + virtual Float_t GetChargeRatio() const { return 0.;} + virtual Int_t GetClusterType() const { return 0;} + virtual Bool_t IsExtra() const { return kFALSE;} + + virtual Float_t GetResidual(const AliVVtrackPoint& /*p*/, Bool_t weighted = kFALSE) const {if (weighted) return 0.; else return 0.;} + virtual Bool_t GetPCA(const AliVVtrackPoint& /*p*/, AliVVtrackPoint& /*out*/) const {return kFALSE;} + + virtual Float_t GetAngle() const {return 0.;} + virtual Bool_t GetRotMatrix(TGeoRotation& /*rot*/) const {return kFALSE;} + //virtual void SetAlignCovMatrix(const TMatrixDSym& /*alignparmtrx*/) {} + + //virtual AliTrackPoint& Rotate(Float_t /*alpha*/) const {return *this;} + //virtual AliTrackPoint& MasterToLocal() const {return *this;} + + virtual void Print(Option_t*) const {} + + ClassDef(AliVVtrackPoint, 1); +}; + +#endif diff --git a/STEER/STEERBase/AliVVtrackPointArray.cxx b/STEER/STEERBase/AliVVtrackPointArray.cxx new file mode 100644 index 00000000000..eee81020122 --- /dev/null +++ b/STEER/STEERBase/AliVVtrackPointArray.cxx @@ -0,0 +1,2 @@ +#include "AliVVtrackPointArray.h" + diff --git a/STEER/STEERBase/AliVVtrackPointArray.h b/STEER/STEERBase/AliVVtrackPointArray.h new file mode 100644 index 00000000000..ccd40b5fff9 --- /dev/null +++ b/STEER/STEERBase/AliVVtrackPointArray.h @@ -0,0 +1,18 @@ +#ifndef ALIVVTRACKPOINTARRAY_H +#define ALIVVTRACKPOINTARRAY_H + +#include "Rtypes.h" + +#include "AliVVtrackPoint.h" + +class AliVVtrackPointArray { + public: + AliVVtrackPointArray() {} + virtual ~AliVVtrackPointArray() {} + virtual Int_t GetNPoints() const {return 0;} + virtual Bool_t GetPoint(AliVVtrackPoint& /*p*/, Int_t /*i*/) const =0 ; + + ClassDef(AliVVtrackPointArray, 1); +}; + +#endif diff --git a/STEER/STEERBaseLinkDef.h b/STEER/STEERBaseLinkDef.h index 21d7e0f9cbd..3e4a73eb9a4 100644 --- a/STEER/STEERBaseLinkDef.h +++ b/STEER/STEERBaseLinkDef.h @@ -138,13 +138,18 @@ #pragma link C++ class AliVTOFMatch+; #pragma link C++ class AliVTOFcluster+; +#pragma link C++ class AliVVevent+; #pragma link C++ class AliVVtrack+; +#pragma link C++ class AliVVfriendEvent+; +#pragma link C++ class AliVVfriendTrack+; #pragma link C++ class AliVVvertex+; -#pragma link C++ class AliVVevent+; #pragma link C++ class AliVVkink+; #pragma link C++ class AliVVv0+; #pragma link C++ class AliVVcluster+; #pragma link C++ class AliVVexternalTrackParam+; +#pragma link C++ class AliVVtrackPointArray+; +#pragma link C++ class AliVVtrackPoint+; +#pragma link C++ class AliVVTPCseed+; #endif diff --git a/TPC/Rec/AliTPCseed.h b/TPC/Rec/AliTPCseed.h index 6ded28396df..e6255114f35 100644 --- a/TPC/Rec/AliTPCseed.h +++ b/TPC/Rec/AliTPCseed.h @@ -20,6 +20,7 @@ #include "AliTPCtrack.h" #include "AliComplexCluster.h" #include "AliPID.h" +#include "AliVVTPCseed.h" class TFile; class AliTPCParam; -- 2.43.0