// //
///////////////////////////////////////////////////////////////////////////////
-#include "TVector3.h"
-#include "TClonesArray.h"
-#include "AliTPCTrackHits.h"
-#include "AliTPC.h"
-
-#include <Riostream.h>
-
+#include <TError.h>
+#include "AliTPC.h"
+#include "AliTPCTrackHits.h"
+// Interface classes
+#include "AliTPCTrackHitsInterfaces.h"
ClassImp(AliTPCTrackHits)
LClassImp(AliTrackHitsInfo)
const Double_t AliTPCTrackHits::fgkPrecision2=1e-20; //precision
-/************************************************************/
-// Interface classes //
-#include "AliTPCTrackHitsInterfaces.h"
-
-
-
-
-struct AliTPCCurrentHit {
- AliTPChit fHit;
+class AliTPCCurrentHit {
+ friend class AliTPCTrackHits;
+private:
+ AliTPChit fHit; // - hit in "standard" representation
UInt_t fInfoIndex;// - current info pointer
UInt_t fParamIndex;// - current param pointer
UInt_t fStackIndex; // - current hit stack index
};
-struct AliTPCTempHitInfo {
- enum { fkStackSize = 100};
- AliTPCTempHitInfo();
+class AliTPCTempHitInfo {
+ friend class AliTPCTrackHits;
+private:
+ enum { kStackSize = 100};
+ AliTPCTempHitInfo();
+ AliTPCTempHitInfo(const AliTPCTempHitInfo &)
+ {::Fatal("copy ctor","Not implemented\n");}
+ AliTPCTempHitInfo & operator = (const AliTPCTempHitInfo &)
+ {::Fatal("= operator","Not implemented\n");return *this;}
+
void NewParam(Double_t r, Double_t z, Double_t fi, Int_t q);
void SetHit(Double_t r, Double_t z, Double_t fi, Int_t q);
Double_t * GetPosition(Int_t index){return &fPositionStack[index*3];}
Double_t fSumX4, Int_t n,
Double_t &a, Double_t &b, Double_t &c);
void Fit(AliTrackHitsParam * param);
- Double_t fSumDr; //
- Double_t fSumDr2; //
- Double_t fSumDr3; //
- Double_t fSumDr4; //
- Double_t fSumDFi; //
- Double_t fSumDFiDr; //
- Double_t fSumDFiDr2;//
- Double_t fSumDZ; //
- Double_t fSumDZDr; //
- Double_t fSumDZDr2; //
+ Double_t fSumDr; //fSumDr
+ Double_t fSumDr2; //fSumDr2
+ Double_t fSumDr3; // fSumDr3
+ Double_t fSumDr4; //fSumDr4
+ Double_t fSumDFi; //fSumDFi
+ Double_t fSumDFiDr; // fSumDFiDr
+ Double_t fSumDFiDr2;//fSumDFiDr2
+ Double_t fSumDZ; //fSumDZ
+ Double_t fSumDZDr; //fSumDZDr
+ Double_t fSumDZDr2; //fSumDZDr2
Double_t fOldR; //previos r
- Double_t fPositionStack[3*fkStackSize]; //position stack
- UInt_t fQStack[fkStackSize]; //Q stack
+ Double_t fPositionStack[3*kStackSize]; //position stack
+ UInt_t fQStack[kStackSize]; //Q stack
UInt_t fStackIndex; //current stack index
UInt_t fInfoIndex; //current track info index
UInt_t fParamIndex; //current track parameters index
}
+AliTPCTrackHits::AliTPCTrackHits(const AliTPCTrackHits& r) : TObject(r)
+{
+ //dummy
+}
+AliTPCTrackHits &AliTPCTrackHits::operator=(const AliTPCTrackHits& /* r */)
+{
+ //dummy
+ return *this;
+}
+
AliTPCTrackHits::~AliTPCTrackHits()
{
//
void AliTPCTrackHits::AddHitKartez(Int_t volumeID, Int_t trackID, Double_t x,
Double_t y, Double_t z,Int_t q)
{
+ //add hits (cartesian)
Double_t r = TMath::Sqrt(x*x+y*y);
Double_t fi = TMath::ACos(x/r);
if (y<0) fi*=-1.;
}
//safety factor 1.25
if ( ( (dd*1.25>fPrecision) ) ||
- (fTempInfo->fStackIndex+4>fTempInfo->fkStackSize) ||
+ (fTempInfo->fStackIndex+4>fTempInfo->kStackSize) ||
(TMath::Abs(dl/fStep)>fMaxDistance) )
diff=kTRUE;
else{
}
*/
-AliTPChit * AliTPCTrackHits::GetHit()
+AliTPChit * AliTPCTrackHits::GetHit() const
{
//
return (fCurrentHit->fStatus)? &fCurrentHit->fHit:0;