//
#include "TObject.h"
+#include "TClonesArray.h"
+
-class TClonesArray;
class AliTPChit;
class AliTPCTempHitInfoV2;
class AliTPCCurrentHitV2;
class AliTrackHitsParamV2 : public TObject {
+
public:
AliTrackHitsParamV2();
- AliTrackHitsParamV2(const AliTrackHitsParamV2 &hit): TObject(hit)
+
+ AliTrackHitsParamV2(const AliTrackHitsParamV2 &hit): TObject(hit),
+ fTrackID(0),
+ fVolumeID(0),
+ fR(0.),
+ fZ(0.),
+ fFi(0.),
+ fAn(0.),
+ fAd(0.),
+ fTheta(0.),
+ fThetaD(0.),
+ fNHits(0),
+ fHitDistance(0),
+ fCharge(0),
+ fTime(0)
{hit.Copy(*this);}
AliTrackHitsParamV2& operator = (const AliTrackHitsParamV2 &hit)
{hit.Copy(*this); return (*this);}
class AliTPCTrackHitsV2 : public TObject {
public:
- AliTPCTrackHitsV2();
+ AliTPCTrackHitsV2();
~AliTPCTrackHitsV2();
- AliTPCTrackHitsV2(const AliTPCTrackHitsV2 &hit): TObject(hit)
- {hit.Copy(*this);}
+ AliTPCTrackHitsV2(const AliTPCTrackHitsV2 &hit): TObject(hit),
+ fArray(0),
+ fSize(hit.fSize),
+ fPrecision(hit.fPrecision),
+ fStep(hit.fStep),
+ fMaxDistance(hit.fMaxDistance),
+ fNVolumes(hit.fNVolumes),
+ fVolumes(0),
+ fTempInfo(hit.fTempInfo),
+ fCurrentHit(hit.fCurrentHit),
+ fHit(hit.fHit)
+ { //
+ //copy constructor
+ //
+
+ (*fArray) = (*hit.fArray);
+ //
+ delete [] fVolumes;
+ fVolumes = new Int_t[fNVolumes];
+ memcpy(fVolumes,hit.fVolumes,fNVolumes*sizeof(Int_t));
+ }
AliTPCTrackHitsV2& operator = (const AliTPCTrackHitsV2 &hit)
- {hit.Copy(*this); return (*this);}
+ {
+ if(this!=&hit){
+ TObject::operator=(hit);
+ fSize=hit.fSize;
+ fPrecision=hit.fPrecision;
+ fStep=hit.fStep;
+ fMaxDistance=hit.fMaxDistance;
+ fNVolumes=hit.fNVolumes;
+ fTempInfo=hit.fTempInfo;
+ fCurrentHit=hit.fCurrentHit;
+ fHit=hit.fHit;
+ //
+ //delete fArray;
+ fArray->Clear();
+ (*fArray)=(*hit.fArray);
+ //
+ delete [] fVolumes;
+ fVolumes = new Int_t[fNVolumes];
+ memcpy(fVolumes,hit.fVolumes,fNVolumes*sizeof(Int_t));
+ //
+ }
+
+ return *this;
+ }
+
+
void Clear(Option_t * /*option*/ ="");
void AddHitKartez(Int_t volumeID, Int_t trackID, Double_t x,
Double_t y, Double_t z,Int_t q,Float_t time);