feature fixed (Christian)
[u/mrichter/AliRoot.git] / ITS / AliITSRecPoint.h
CommitLineData
b0f5e3fc 1#ifndef ALIITSRECPOINT_H
2#define ALIITSRECPOINT_H
ee84ac37 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/*
7 $Id$
8*/
b0f5e3fc 9
10////////////////////////////////////////////////////
11// Reconstructed space point class for set:ITS //
12////////////////////////////////////////////////////
13
14#include <TObject.h>
4ae5bbc4 15#include <Riostream.h>
b0f5e3fc 16
17
18class AliITSRecPoint : public TObject {
b0f5e3fc 19 public:
ee84ac37 20 AliITSRecPoint();
21 virtual ~AliITSRecPoint() {}; // distructor
22 Bool_t IsSortable() const {return kTRUE;} // allows for sorting
23 Int_t GetLabel(Int_t i) const {return fTracks[i];} // get track label
f8d9a5b8 24 Int_t *GetTracks(){return fTracks;}// Returns pointer to track array
25 Int_t GetNTracks(){return 3;} // returns track array size
ee84ac37 26 Float_t GetX() const {return fX;} // gets fX
27 Float_t GetZ() const {return fZ;} // gets fZ
28 Float_t GetQ() const {return fQ;} // gets fQ
29 Float_t GetdEdX() const {return fdEdX;} // gets fdEdX
30 Float_t GetSigmaX2() const {return fSigmaX2;} // gets fSigmaX2
31 Float_t GetSigmaZ2() const {return fSigmaZ2;} // gets fSigmaZ2
32 void SetLabel(Int_t i, Int_t lab){fTracks[i]=lab;} // sets track label
33 void SetX(Float_t x){fX=x;} // sets fX
34 void SetZ(Float_t z){fZ=z;} // sets fZ
35 void SetQ(Float_t q){fQ=q;} // sets fQ
36 void SetdEdX(Float_t dedx){fdEdX=dedx;} // sets fdEdX
37 void SetSigmaX2(Float_t sx2){fSigmaX2=sx2;} // sets fSigmaX2
38 void SetSigmaZ2(Float_t sz2){fSigmaZ2=sz2;} // sets fSigmaZ2
39 void Use() { //if fQ<0 cluster is already associated with a track
40 fQ=-fQ;}
41 Int_t IsUsed() const {return (fQ<0) ? 1 : 0;} // checks Use condision
ac74f489 42 Int_t Compare(const TObject *) const {return 0;} //to be defined
ee84ac37 43 // Prints out the content of this class in ASCII format.
44 void Print(ostream *os);
45 // Reads in the content of this class in the format of Print
46 void Read(istream *is);
d2f55a22 47 virtual void Print(Option_t *option="") const {TObject::Print(option);}
48 virtual Int_t Read(const char *name) {return TObject::Read(name);}
49
b0f5e3fc 50 public:
51 Int_t fTracks[3]; //labels of overlapped tracks
52 Float_t fX ; //X of cluster
53 Float_t fZ ; //Z of cluster
54 Float_t fQ ; //Q of cluster (in ADC counts)
55 Float_t fdEdX; //dE/dX inside this cluster
56 Float_t fSigmaX2; //Sigma X square of cluster
57 Float_t fSigmaZ2; //Sigma Z square of cluster
58
ee84ac37 59 ClassDef(AliITSRecPoint,1) // AliITSRecPoint class
b0f5e3fc 60};
ee84ac37 61// Input and output function for standard C++ input/output.
62ostream& operator<<(ostream &os,AliITSRecPoint &source);
63istream& operator>>(istream &is,AliITSRecPoint &source);
b0f5e3fc 64#endif