//_________________________________________________________________________
// Track segment in PHOS
// Can be : 1 EmcRecPoint
-// 1 EmcRecPoint + 1 PPSD
-// 1 EmcRecPoint + 1 PPSD + 1 PPSD
+// 1 EmcRecPoint + 1 CPV
+// 1 EmcRecPoint + 1 CPV + 1 charged track
//
//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
// --- AliRoot header files ---
#include "AliPHOSEmcRecPoint.h"
#include "AliPHOSTrackSegment.h"
+#include "AliESDtrack.h"
ClassImp(AliPHOSTrackSegment)
//____________________________________________________________________________
AliPHOSTrackSegment::AliPHOSTrackSegment( AliPHOSEmcRecPoint * emc ,
- AliPHOSRecPoint * ppsdrp1)
+ AliPHOSRecPoint * cpvrp1)
{
// ctor
else
fEmcRecPoint = -1 ;
- if( ppsdrp1 )
- fPpsdUpRecPoint = ppsdrp1->GetIndexInList() ;
+ if( cpvrp1 )
+ fCpvRecPoint = cpvrp1->GetIndexInList() ;
else
- fPpsdUpRecPoint = -1 ;
+ fCpvRecPoint = -1 ;
+ fTrack = -1 ;
+
+ fIndexInList = -1 ;
+}
+
+//____________________________________________________________________________
+AliPHOSTrackSegment::AliPHOSTrackSegment( AliPHOSEmcRecPoint * emc ,
+ AliPHOSRecPoint * cpvrp1,
+ Int_t track)
+{
+ // ctor
+
+ if( emc )
+ fEmcRecPoint = emc->GetIndexInList() ;
+ else
+ fEmcRecPoint = -1 ;
+
+ if( cpvrp1 )
+ fCpvRecPoint = cpvrp1->GetIndexInList() ;
+ else
+ fCpvRecPoint = -1 ;
+
+ fTrack = track ;
fIndexInList = -1 ;
}
TObject::Copy(obj) ;
( (AliPHOSTrackSegment &)obj ).fEmcRecPoint = fEmcRecPoint ;
- ( (AliPHOSTrackSegment &)obj ).fPpsdUpRecPoint = fPpsdUpRecPoint ;
+ ( (AliPHOSTrackSegment &)obj ).fCpvRecPoint = fCpvRecPoint ;
( (AliPHOSTrackSegment &)obj ).fIndexInList = fIndexInList ;
-}
+ ( (AliPHOSTrackSegment &)obj ).fTrack = fTrack ;
+}
+
//____________________________________________________________________________
void AliPHOSTrackSegment::Print() const
// Print all information on this track Segment
- Info("Print", "--------AliPHOSTrackSegment-------- ");
- Info("Print", "Stored at position %d", fIndexInList) ;
- Info("Print", "Emc RecPoint # %d", fEmcRecPoint) ;
- if(fPpsdUpRecPoint >= 0)
- Info("Print", "CPV RecPoint # %d", fPpsdUpRecPoint) ;
+ Info("Print", "");
+ printf("Stored at position %d\n", fIndexInList) ;
+ printf(" Emc RecPoint # %d\n", fEmcRecPoint) ;
+ if(fCpvRecPoint >= 0)
+ printf(" CPV RecPoint # %d\n", fCpvRecPoint) ;
else
- Info("Print", "No CPV RecPoint ");
-
-
- Info("Print", "------------------------------------ ") ;
-
+ printf(" No CPV RecPoint\n");
+ if (fTrack >= 0)
+ printf(" Charged track # %d\n", fTrack) ;
+ else
+ printf(" No Charged track\n");
}
+
//____________________________________________________________________________
-void AliPHOSTrackSegment::SetCpvRecPoint(AliPHOSRecPoint * PpsdUpRecPoint)
+void AliPHOSTrackSegment::SetCpvRecPoint(AliPHOSRecPoint * cpvRecPoint)
{
// gives an id from its position in the list
- if( PpsdUpRecPoint )
- fPpsdUpRecPoint = PpsdUpRecPoint->GetIndexInList() ;
+ if( cpvRecPoint )
+ fCpvRecPoint = cpvRecPoint->GetIndexInList() ;
else
- fPpsdUpRecPoint = -1 ;
+ fCpvRecPoint = -1 ;
}
//_________________________________________________________________________
// Track segment in PHOS
// Can be : 1 EmcRecPoint
-// 1 EmcRecPoint + 1 PPSD
-// 1 EmcRecPoint + 1 PPSD + 1 PPSD
+// 1 EmcRecPoint + 1 CPV
//
//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
class AliPHOSRecPoint ;
class AliPHOSEmcRecPoint ;
class AliPHOSCpvRecPoint ;
+class AliESDtrack ;
class AliPHOSTrackSegment : public TObject {
AliPHOSTrackSegment() {}
AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint ,
- AliPHOSRecPoint * PpsdUp) ;
+ AliPHOSRecPoint * Cpv) ;
+ AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint ,
+ AliPHOSRecPoint * Cpv, Int_t track) ;
AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
virtual ~AliPHOSTrackSegment() { }
Int_t GetIndexInList() const { return fIndexInList ; }
Int_t GetEmcIndex() const { return fEmcRecPoint ; }
- Int_t GetCpvIndex() const { return fPpsdUpRecPoint; }
+ Int_t GetCpvIndex() const { return fCpvRecPoint; }
+ Int_t GetTrackIndex() const { return fTrack; }
virtual void Print() const;
void SetIndexInList(Int_t val){ fIndexInList = val ; }
- void SetCpvRecPoint(AliPHOSRecPoint * PpsdUpRecPoint ); //sets PPSD up Rec Point
+ void SetCpvRecPoint(AliPHOSRecPoint * CpvRecPoint ); //sets CPV Rec Point
typedef TClonesArray TrackSegmentsList ;
Int_t fEmcRecPoint ; // The EMC reconstructed point index in array stored in TreeR/PHOSEmcRP
Int_t fIndexInList ; // the index of this TrackSegment in the list stored in TreeR (to be set by analysis)
- Int_t fPpsdUpRecPoint ; // The CPV reconstructed point from the upper layer index in array stored in TreeR/PHOSPpsdRP
-
+ Int_t fCpvRecPoint ; // The CPV reconstructed point in array stored in TreeR/PHOSCpvRP
+ Int_t fTrack ; // The charged track index (from global tracking) in ESD file
+
ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS
};