]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSTrackSegment.h
Transition to NewIO
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegment.h
index 1ae2e5594c3742e55994b291e448db8044c50775..2f6e55c566660c6747d3b02ff06f842de30b461c 100644 (file)
@@ -1,62 +1,59 @@
-#ifndef ALIPHOSSUBTRACK_H
-#define ALIPHOSSUBTRACK_H
+#ifndef ALIPHOSTRACKSEGMENT_H
+#define ALIPHOSTRACKSEGMENT_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/////////////////////////////////////////////////
-//  Short description                          //
-//  Version SUBATECH                           //
-//  Author Dmitri Peressounko RRC KI           //
-//      comment: contains pairs (triplets) of  //  
-//               EMC+PPSD(+PPSD) clusters, and //
-//               evaluates particle type,      // 
-//               energy, etc                   //
-/////////////////////////////////////////////////
+/* $Id$ */
+
+//_________________________________________________________________________
+//  Track segment in PHOS
+//  Can be : 1 EmcRecPoint
+//           1 EmcRecPoint + 1 PPSD
+//           1 EmcRecPoint + 1 PPSD + 1 PPSD     
+//                  
+//*-- Author:  Dmitri Peressounko (RRC KI & SUBATECH)
 
 // --- ROOT system ---
 
 #include "TObject.h"
-#include "TVector3.h"
 
 // --- Standard library ---
 
 // --- AliRoot header files ---
 
 #include "AliPHOSEmcRecPoint.h"
-#include "AliPHOSPpsdRecPoint.h"
-
-
+#include "AliPHOSRecPoint.h"
 
 class AliPHOSTrackSegment : public TObject  {
 
 public:
 
-  AliPHOSTrackSegment() {} ; // ctor 
-  AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp, 
-                  AliPHOSPpsdRecPoint * PpsdLow  ) ;                    
-  virtual ~AliPHOSTrackSegment() ; // dtor 
-
-  Int_t GetPartType() ;          // Returns 0 - gamma, 1 - e+, e- ;  2 - neutral hadron ; 3 - charged hadron
-  Float_t GetEnergy(){ return fEmcRecPoint->GetTotalEnergy() ;}   // Returs energy in EMC  
-  Float_t GetDistanceInPHOSPlane(void) ;    // computes in PHOS plane the relative position between EMC and PPSD clusters 
-  Bool_t GetMomentumDirection( TVector3 & dir ) ;   // True if determined
-  void GetPosition( TVector3 & pos ) ;              // Returns positions of hits
-  void Print() ;
-  void SetDispersionCutOff(Float_t Dcut) {fCutOnDispersion = Dcut ; }    
-  
-  
-private:
-  
-  AliPHOSEmcRecPoint  * fEmcRecPoint ;
-  AliPHOSPpsdRecPoint * fPpsdLow ;
-  AliPHOSPpsdRecPoint * fPpsdUp ;
+  AliPHOSTrackSegment() {} 
+  AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , 
+                     AliPHOSRecPoint * PpsdUp) ;
+  AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ;  // ctor                   
+  virtual ~AliPHOSTrackSegment() {  } 
+
+  void Copy(TObject & obj) ;  
+
+  Int_t   GetIndexInList() const {  return fIndexInList ;   } 
+  Int_t   GetEmcIndex()    const {  return fEmcRecPoint ;   }
+  Int_t   GetCpvIndex()    const {  return fPpsdUpRecPoint; }
+
+  virtual void  Print(Option_t * option) const;
+  void    SetIndexInList(Int_t val){ fIndexInList = val ;     } 
+  void    SetCpvRecPoint(AliPHOSRecPoint * PpsdUpRecPoint ); //sets PPSD up Rec Point
+
+  typedef TClonesArray TrackSegmentsList ; 
+ private:
   
-  Float_t fCutOnDispersion ;   
+  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
   
-public:
-
-  ClassDef(AliPHOSTrackSegment,1)  // description , version 1
+  ClassDef(AliPHOSTrackSegment,1)  // Track segment in PHOS
 
 };
 
-#endif // AliPHOSSUBTRACK_H
+#endif // ALIPHOSTRACKSEGMENT_H