]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSCpvRecPoint.h
Replacing array of objects by array of pointers
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCpvRecPoint.h
1 #ifndef ALIPHOSCPVRECPOINT_H
2 #define ALIPHOSCPVRECPOINT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 /* History of cvs commits:
9  *
10  * $Log$
11  */
12
13 //_________________________________________________________________________
14 //  RecPoint implementation for PHOS-CPV
15 //  An CpvRecPoint is a cluster of digits   
16 //*-- Author: Yuri Kharlov
17 //  (after Dmitri Peressounko (RRC KI & SUBATECH))
18 //  30 October 2000 
19 // --- ROOT system ---
20
21 //#include "TObject.h"
22 //#include "TArrayI.h"
23  
24 // --- Standard library ---
25
26 // --- AliRoot header files ---
27
28 //#include "AliPHOSDigit.h"
29 #include "AliPHOSEmcRecPoint.h"
30 //#include "AliPHOSGeometry.h"
31
32 class AliPHOSCpvRecPoint : public AliPHOSEmcRecPoint  {
33
34 public:
35
36   AliPHOSCpvRecPoint() ;
37   AliPHOSCpvRecPoint(const char * opt) ;
38   AliPHOSCpvRecPoint(const AliPHOSCpvRecPoint & rp) : AliPHOSEmcRecPoint(rp) {
39     Fatal("cpy ctor", "not implemented") ; 
40   } 
41  
42   virtual ~AliPHOSCpvRecPoint() ;  
43
44   Int_t  Compare(const TObject * obj) const;                 // method for sorting  
45   void   EvalAll(Float_t logWeight,TClonesArray * digits) ;
46   void   EvalLocalPosition(Float_t logWeight,TClonesArray * digits ) ;  
47   void   EvalClusterLengths(TClonesArray * digits) ;
48
49   virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) /*const*/ ; 
50
51   void   GetClusterLengths(Int_t &lengX, Int_t &lengZ) const {lengX = fLengX ;lengZ = fLengZ ;}
52   Bool_t IsEmc(void) const {return kFALSE ; }        // tells that this is not a EMC
53   Bool_t IsCPV(void) const {return kTRUE  ; }        // true if the recpoint is in CPV
54   Bool_t IsSortable() const { return kTRUE ; }    // tells that this is a sortable object
55   void   Print(const Option_t * = "") const ; 
56
57   AliPHOSCpvRecPoint & operator = (const AliPHOSCpvRecPoint & /*rvalue*/)  {
58    Fatal("operator =", "not implemented") ; return *this ; 
59   }
60
61  protected:
62
63   Bool_t AreNeighbours(AliPHOSDigit * digit1, AliPHOSDigit * digit2 ) const ;
64
65   Int_t    fLengX ;          // cluster length along x
66   Int_t    fLengZ ;          // cluster length along z
67   
68   ClassDef(AliPHOSCpvRecPoint,1)  // CPV RecPoint (cluster)
69
70 };
71
72 #endif // AliPHOSCPVRECPOINT_H