]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSRecPoint.h
Introducing Riostream.h
[u/mrichter/AliRoot.git] / ITS / AliITSRecPoint.h
1 #ifndef ALIITSRECPOINT_H
2 #define ALIITSRECPOINT_H 
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 */
9
10 ////////////////////////////////////////////////////
11 //  Reconstructed space point class for set:ITS   //
12 ////////////////////////////////////////////////////
13
14 #include <TObject.h>
15 #include <Riostream.h>
16
17
18 class AliITSRecPoint : public TObject {
19  public:
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
24     Float_t GetX() const {return fX;} // gets fX
25     Float_t GetZ() const {return fZ;} // gets fZ
26     Float_t GetQ() const {return fQ;} // gets fQ
27     Float_t GetdEdX() const {return fdEdX;} // gets fdEdX
28     Float_t GetSigmaX2() const {return fSigmaX2;} // gets fSigmaX2
29     Float_t GetSigmaZ2() const {return fSigmaZ2;} // gets fSigmaZ2
30     void SetLabel(Int_t i, Int_t lab){fTracks[i]=lab;} // sets track label
31     void SetX(Float_t x){fX=x;} // sets fX
32     void SetZ(Float_t z){fZ=z;} // sets fZ
33     void SetQ(Float_t q){fQ=q;} // sets fQ
34     void SetdEdX(Float_t dedx){fdEdX=dedx;} // sets fdEdX
35     void SetSigmaX2(Float_t sx2){fSigmaX2=sx2;} // sets fSigmaX2
36     void SetSigmaZ2(Float_t sz2){fSigmaZ2=sz2;} // sets fSigmaZ2
37     void  Use() { //if fQ<0 cluster is already associated with a track
38         fQ=-fQ;}
39     Int_t IsUsed() const {return (fQ<0) ? 1 : 0;} // checks Use condision
40     Int_t Compare(const TObject *o) const { //to be defined
41         return 0;}
42     // Prints out the content of this class in ASCII format.
43     void Print(ostream *os); 
44     // Reads in the content of this class in the format of Print
45     void Read(istream *is);
46  public:
47     Int_t     fTracks[3]; //labels of overlapped tracks
48     Float_t   fX ;        //X of cluster
49     Float_t   fZ ;        //Z of cluster
50     Float_t   fQ ;        //Q of cluster (in ADC counts)
51     Float_t   fdEdX;      //dE/dX inside this cluster
52     Float_t   fSigmaX2;   //Sigma X square of cluster
53     Float_t   fSigmaZ2;   //Sigma Z square of cluster
54
55     ClassDef(AliITSRecPoint,1)  // AliITSRecPoint class
56 };
57 // Input and output function for standard C++ input/output.
58 ostream& operator<<(ostream &os,AliITSRecPoint &source);
59 istream& operator>>(istream &is,AliITSRecPoint &source);
60 #endif