LCOV - code coverage report
Current view: top level - STEER/STEERBase - AliVCluster.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 77 3.9 %
Date: 2016-06-14 17:26:59 Functions: 4 84 4.8 %

          Line data    Source code
       1             : #ifndef ALIVCLUSTER_H
       2             : #define ALIVCLUSTER_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : //-------------------------------------------------------------------------
       7             : /// \class AliVCluster
       8             : /// \brief Virtual class for calorimeter cluster data handling
       9             : ///
      10             : ///   Virtual class to access calorimeter 
      11             : ///   (EMCAL, PHOS, PMD, FMD) cluster data
      12             : ///
      13             : ///  \author Gustavo Conesa Balbastre, <Gustavo.Conesa.Balbastre@cern.ch>, LPSC-Grenoble
      14             : //
      15             : //-------------------------------------------------------------------------
      16             : 
      17             : #include <TObject.h>
      18             : #include <TLorentzVector.h>
      19             : 
      20             : class AliVCluster : public TObject 
      21             : {
      22             :   
      23             :  public:
      24             :   
      25         646 :   AliVCluster() { ; }
      26         732 :   virtual ~AliVCluster() { ; }
      27             :   AliVCluster(const AliVCluster& clus);
      28             :   AliVCluster & operator=(const AliVCluster& source);
      29           0 :   void Clear(const Option_t*) {;}
      30             :   
      31             :   /// Define the type of clusters for the different calorimeters
      32             :   enum VClu_t {
      33             :     kUndef = -2, 
      34             :     kPHOSNeutral, 
      35             :     kPHOSCharged,
      36             :     kEMCALClusterv1,             
      37             :     kPMDNeutral, 
      38             :     kPMDCharged};
      39             :   
      40             :   /// Define the PID types
      41             :   enum VCluPID_t {
      42             :     kElectron = 0,
      43             :     kMuon     = 1,
      44             :     kPion     = 2,
      45             :     kKaon     = 3,
      46             :     kProton   = 4,
      47             :     kPhoton   = 5,
      48             :     kPi0      = 6,
      49             :     kNeutron  = 7,
      50             :     kKaon0    = 8,
      51             :     kEleCon   = 9,
      52             :     kUnknown  = 10,
      53             :     kCharged  = 11,//For PMD?
      54             :     kNeutral  = 12 //For PMD? 
      55             :   };
      56             : 
      57             :   /// Define the correction types
      58             :   enum VCluUserDefEnergy_t {
      59             :     kNonLinCorr          = 0,
      60             :     kHadCorr             = 1,
      61             :     kUserDefEnergy1      = 2,
      62             :     kUserDefEnergy2      = 3,
      63             :     kLastUserDefEnergy   = 4
      64             :   };
      65             :   
      66             :   // Common EMCAL/PHOS/FMD/PMD
      67             :   
      68           0 :   virtual void        SetID(Int_t )                 { ; }
      69           0 :   virtual Int_t       GetID() const                 {return 0 ; }
      70             :   
      71           0 :   virtual void        SetType(Char_t )              { ; }  
      72           0 :   virtual Char_t      GetType() const               {return kUndef ; } 
      73             :   
      74           0 :   virtual void        SetE(Double_t )               { ; }
      75           0 :   virtual Double_t       E() const                  {return 0. ; }
      76             :   
      77           0 :   virtual void        SetChi2(Double_t )            { ; }
      78           0 :   virtual Double_t       Chi2() const               {return 0. ; }
      79             :   
      80           0 :   virtual void        SetPositionAt(Float_t,Int_t)  { ; }
      81           0 :   virtual void        SetPosition(Float_t *)        { ; }
      82           0 :   virtual void        GetPosition(Float_t *) const  { ; }       
      83             :   
      84           0 :   virtual void        SetPIDAt(Float_t , Int_t)     { ; }
      85           0 :   virtual void        SetPID(const Float_t *)       { ; }
      86           0 :   virtual const Double_t *GetPID() const            { return 0 ; }
      87             :   
      88             :   // CaloClusters, PHOS/EMCAL
      89             :   
      90           0 :   virtual Bool_t      IsEMCAL() const               {return kFALSE ; }
      91           0 :   virtual Bool_t      IsPHOS()  const               {return kFALSE ; }
      92             :   
      93           0 :   virtual void        SetDispersion(Double_t )      { ; }
      94           0 :   virtual Double_t    GetDispersion() const         {return 0. ;}
      95             :   
      96           0 :   virtual void        SetM20(Double_t)              { ; }
      97           0 :   virtual Double_t    GetM20() const                {return 0. ; }
      98             :   
      99           0 :   virtual void        SetM02(Double_t)              { ; }
     100           0 :   virtual Double_t    GetM02() const                {return 0. ; }
     101             :   
     102           0 :   virtual void        SetNExMax(UChar_t)            { ; }
     103           0 :   virtual UChar_t     GetNExMax() const             {return 0 ; } 
     104             :   
     105           0 :   virtual void        SetTOF(Double_t)              { ; }
     106           0 :   virtual Double_t    GetTOF() const                {return 0. ; }
     107             :   
     108           0 :   virtual void        SetEmcCpvDistance(Double_t)   { ; }
     109           0 :   virtual Double_t    GetEmcCpvDistance() const     {return 0. ; }
     110           0 :   virtual void        SetTrackDistance(Double_t, Double_t ){ ; }
     111           0 :   virtual Double_t    GetTrackDx(void)const         {return 0. ; }
     112           0 :   virtual Double_t    GetTrackDz(void)const         {return 0. ; }
     113             :   
     114           0 :   virtual void        SetDistanceToBadChannel(Double_t) { ; }
     115           0 :   virtual Double_t    GetDistanceToBadChannel() const   {return 0. ; }
     116             :   
     117           0 :   virtual void        SetNCells(Int_t)              { ; }
     118           0 :   virtual Int_t       GetNCells() const             {return 0 ; }
     119           0 :   virtual void        SetCellsAbsId(UShort_t */*array*/) {;}  
     120           0 :   virtual UShort_t   *GetCellsAbsId()               {return 0 ; }
     121           0 :   virtual void        SetCellsAmplitudeFraction(Double32_t */*array*/) {;}
     122           0 :   virtual Double_t   *GetCellsAmplitudeFraction()   {return 0 ; }
     123           0 :   virtual Int_t       GetCellAbsId(Int_t) const     {return 0 ; }  
     124           0 :   virtual Double_t    GetCellAmplitudeFraction(Int_t) const {return 0. ; }
     125             :   
     126           0 :   virtual Int_t       GetLabel() const              {return -1 ;}
     127           0 :   virtual Int_t       GetLabelAt(UInt_t) const      {return -1 ;}
     128           0 :   virtual Int_t      *GetLabels() const             {return 0 ; }
     129           0 :   virtual UInt_t      GetNLabels() const            {return 0 ; }
     130           0 :   virtual void        SetLabel(Int_t *, UInt_t )    { ; }
     131             : 
     132           0 :   virtual void        SetCellsMCEdepFractionMap(UInt_t * /*array*/) {;}  
     133           0 :   virtual UInt_t     *GetCellsMCEdepFractionMap()  const   {return 0 ; }
     134           0 :   virtual void        GetCellMCEdepFractionArray(Int_t, Float_t * /*eDepFraction[4]*/) const {;} 
     135           0 :   virtual UInt_t      PackMCEdepFraction(Float_t * /*eDepFraction[4]*/) const {return 0 ; } 
     136             :   
     137           0 :   virtual void        SetClusterMCEdepFractionFromEdepArray(Float_t  */*array*/) {;} 
     138           0 :   virtual void        SetClusterMCEdepFraction             (UShort_t */*array*/) {;}   
     139           0 :   virtual UShort_t   *GetClusterMCEdepFraction() const      {return 0 ; }
     140           0 :   virtual Float_t     GetClusterMCEdepFraction(Int_t) const {return 0 ; }
     141             :   
     142           0 :   virtual Int_t       GetNTracksMatched() const     {return 0 ; }
     143             :   
     144             :   /// Only for AODs
     145           0 :   virtual TObject    *GetTrackMatched(Int_t) const  {return 0 ; }
     146             :   
     147             :   /// Only for ESDs
     148           0 :   virtual Int_t       GetTrackMatchedIndex(Int_t=0) const  {return -1; }
     149             :   
     150           0 :   virtual Double_t    GetCoreEnergy() const         {return 0 ; }
     151           0 :   virtual void        SetCoreEnergy(Double_t)       { ; }
     152             : 
     153           0 :   virtual Double_t    GetMCEnergyFraction() const   { return 0 ; }
     154           0 :   virtual void        SetMCEnergyFraction(Double_t) { ; }
     155             : 
     156           0 :   virtual Bool_t      GetIsExotic() const           { return kFALSE; }
     157           0 :   virtual void        SetIsExotic(Bool_t /*b*/)     { ; }
     158             :   
     159           0 :   virtual Double_t    GetUserDefEnergy(VCluUserDefEnergy_t) const         { return 0.  ; }
     160           0 :   virtual void        SetUserDefEnergy(VCluUserDefEnergy_t, Double_t)     {  ; }
     161             : 
     162           0 :   virtual Double_t    GetUserDefEnergy(Int_t i) const           { return i >= 0 && i <= kLastUserDefEnergy ? GetUserDefEnergy((VCluUserDefEnergy_t)i) : 0.  ; }
     163           0 :   virtual void        SetUserDefEnergy(Int_t i, Double_t v)     { if (i >= 0 && i <= kLastUserDefEnergy) SetUserDefEnergy((VCluUserDefEnergy_t)i, v)        ; }
     164             : 
     165           0 :   Double_t            GetNonLinCorrEnergy() const      { return GetUserDefEnergy(kNonLinCorr)  ; }
     166           0 :   void                SetNonLinCorrEnergy(Double_t e)  { SetUserDefEnergy(kNonLinCorr, e)      ; }
     167             : 
     168           0 :   Double_t            GetHadCorrEnergy() const      { return GetUserDefEnergy(kHadCorr)     ; }
     169           0 :   void                SetHadCorrEnergy(Double_t e)  { SetUserDefEnergy(kHadCorr, e)         ; }
     170             :   
     171           0 :   virtual void GetMomentum(TLorentzVector &/*tl*/, const Double_t * /*v*/) const { ; }
     172           0 :   virtual void GetMomentum(TLorentzVector &/*tl*/, const Double_t * /*v*/, VCluUserDefEnergy_t /*t*/) const { ; }
     173             :   
     174             :   /// \cond CLASSIMP
     175         208 :   ClassDef(AliVCluster,0) ; //VCluster 
     176             :   /// \endcond
     177             : 
     178             : };
     179             : 
     180             : #endif //ALIVCLUSTER_H
     181             : 

Generated by: LCOV version 1.11