#ifndef ALIITSNEURALTRACK_H
#define ALIITSNEURALTRACK_H
-
+///////////////////////////////////////////////////
+// //
+// Neural track class //
+///////////////////////////////////////////////////
#include <TMatrixD.h>
class TObjArray;
class AliITSNeuralTrack : public TObject {
public:
- AliITSNeuralTrack();
- AliITSNeuralTrack(AliITSNeuralTrack &track);
- virtual ~AliITSNeuralTrack();
+ AliITSNeuralTrack();
+ AliITSNeuralTrack(const AliITSNeuralTrack &track);
+ AliITSNeuralTrack& operator=(const AliITSNeuralTrack& track );
+ virtual ~AliITSNeuralTrack();
// Points insertion and goodness evaluation
void CleanAllSlots(Bool_t del = kFALSE) {Int_t i; for(i=0;i<6;i++) CleanSlot(i,del);}
void GetModuleData(Int_t i, Int_t &mod, Int_t &pos);
void Insert(AliITSNeuralPoint *point);
- Bool_t IsGood(Int_t min) {return (fCount >= min);}
- Int_t OccupationMask();
+ Bool_t IsGood(Int_t min) const {return (fCount >= min);}
+ Int_t OccupationMask() const;
void PrintLabels();
// Fit procedures
Double_t GetZ(Double_t r) const; // z = dz + (tanl / C) * asin(argz(rho))
Double_t GetP() {return GetPt() * (1.0 + fTanL * fTanL);}
- Double_t GetPt() {return 0.299792658 * 0.2 * fField * fabs(1./fC/100.);}
+ Double_t GetPt() {return 0.299792658 * 0.2 * fField * TMath::Abs(1./fC/100.);}
Double_t GetPz() {return GetPt() * fTanL;}
- Double_t GetE() {return sqrt(fMass*fMass + GetPt()*GetPt());}
- Double_t GetLambda() {return atan(fTanL);}
+ Double_t GetE() {return TMath::Sqrt(fMass*fMass + GetPt()*GetPt());}
+ Double_t GetLambda() {return TMath::ATan(fTanL);}
Int_t GetPDGcode() const {return fPDG;}
Double_t GetdEdX();