Adding histos
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegment.h
CommitLineData
6c370def 1#ifndef ALIPHOSTRACKSEGMENT_H
2#define ALIPHOSTRACKSEGMENT_H
d15a28e7 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6ad0bfa0 6/* $Id$ */
7
702ab87e 8/* History of cvs commits:
9 *
10 * $Log$
648f392e 11 * Revision 1.23 2006/08/28 10:01:56 kharlov
12 * Effective C++ warnings fixed (Timur Pocheptsov)
13 *
3663622c 14 * Revision 1.22 2005/05/28 14:19:05 schutz
15 * Compilation warnings fixed by T.P.
16 *
702ab87e 17 */
18
b2a60966 19//_________________________________________________________________________
20// Track segment in PHOS
21// Can be : 1 EmcRecPoint
fbf5cb06 22// 1 EmcRecPoint + 1 CPV
b2a60966 23//
24//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
d15a28e7 25
26// --- ROOT system ---
27
28#include "TObject.h"
e957fea8 29class TClonesArray ;
d15a28e7 30
31// --- Standard library ---
32
33// --- AliRoot header files ---
e957fea8 34class AliPHOSRecPoint ;
35class AliPHOSEmcRecPoint ;
36class AliPHOSCpvRecPoint ;
fbf5cb06 37class AliESDtrack ;
d15a28e7 38
d15a28e7 39class AliPHOSTrackSegment : public TObject {
40
41public:
42
3663622c 43 AliPHOSTrackSegment() ;
88714635 44 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint ,
fbf5cb06 45 AliPHOSRecPoint * Cpv) ;
46 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint ,
47 AliPHOSRecPoint * Cpv, Int_t track) ;
648f392e 48 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint ,
49 AliPHOSRecPoint * Cpv, Int_t track,
50 Float_t dx, Float_t dz) ;
6ad0bfa0 51 AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
2731cd1e 52 virtual ~AliPHOSTrackSegment() { }
d15a28e7 53
648f392e 54 void SetCpvDistance(Float_t x,Float_t z){fDcpv[0]=x ; fDcpv[1]=z ; }
55
702ab87e 56 void Copy(TObject & obj) const;
2731cd1e 57
baef0810 58 Int_t GetIndexInList() const { return fIndexInList ; }
59 Int_t GetEmcIndex() const { return fEmcRecPoint ; }
fbf5cb06 60 Int_t GetCpvIndex() const { return fCpvRecPoint; }
61 Int_t GetTrackIndex() const { return fTrack; }
648f392e 62 Float_t GetCpvDistance(const Option_t* dr="r") const ;
2731cd1e 63
702ab87e 64 virtual void Print(const Option_t * = "") const;
2731cd1e 65 void SetIndexInList(Int_t val){ fIndexInList = val ; }
fbf5cb06 66 void SetCpvRecPoint(AliPHOSRecPoint * CpvRecPoint ); //sets CPV Rec Point
c0d5b57d 67
68 typedef TClonesArray TrackSegmentsList ;
83974468 69
6c8ba828 70private:
71 AliPHOSTrackSegment & operator = (const AliPHOSTrackSegment & /*ts*/);
88714635 72 private:
d15a28e7 73
83974468 74 Int_t fEmcRecPoint ; // The EMC reconstructed point index in array stored in TreeR/PHOSEmcRP
75 Int_t fIndexInList ; // the index of this TrackSegment in the list stored in TreeR (to be set by analysis)
fbf5cb06 76 Int_t fCpvRecPoint ; // The CPV reconstructed point in array stored in TreeR/PHOSCpvRP
77 Int_t fTrack ; // The charged track index (from global tracking) in ESD file
648f392e 78 Float_t fDcpv[2] ; // Distance to projection of CPV cluster
fbf5cb06 79
648f392e 80 ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS
d15a28e7 81
82};
83
6c370def 84#endif // ALIPHOSTRACKSEGMENT_H