ROOT logo
#ifndef ALIITSCLUSTERPARAM_H
#define ALIITSCLUSTERPARAM_H
/* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

////////////////////////////////////////////////////
//                                                //
//  ITS cluster error and shape parameterization  //
//  andrea.dainese@lnl.infn.it                    //
////////////////////////////////////////////////////


#include <TObject.h>
//#include "AliITSRecPoint.h"

class AliITSRecPoint;

//_____________________________________________________________________________
class AliITSClusterParam : public TObject {
 public:
  static AliITSClusterParam* Instance();
  virtual           ~AliITSClusterParam(){;}
  virtual void	Print(Option_t* option = "") const;
  void SetInstance(AliITSClusterParam *param){fgInstance = param;}
  static void GetNTeor(Int_t layer,const AliITSRecPoint* cl,
		       Float_t tgl,Float_t tgphitr,
		       Float_t &ny,Float_t &nz);
  static Int_t GetError(Int_t layer,const AliITSRecPoint*cl,
			Float_t tgl,Float_t tgphitr,Float_t expQ,
			Float_t &erry,Float_t &errz,Float_t &covyz,
			Bool_t addMisalErr=kTRUE);
  static Int_t GetError(Int_t layer,const AliITSRecPoint*cl,
			Float_t tgl,Float_t tgphitr,Float_t expQ,
			Float_t &erry,Float_t &errz,
			Bool_t addMisalErr=kTRUE) {
                                  Float_t covyz;
    return GetError(layer,cl,tgl,tgphitr,expQ,erry,errz,covyz,addMisalErr);
  }

  //void FitData(TTree * tree);
  //
 private:
  AliITSClusterParam(){}
  AliITSClusterParam(const AliITSClusterParam &source); // copy constructor. Not to be used!
  AliITSClusterParam& operator=(const AliITSClusterParam &source); // = operator. Not to be used!
  static AliITSClusterParam*   fgInstance; //! Instance of this class (singleton implementation)
  static Int_t GetErrorOrigRecPoint(const AliITSRecPoint*cl,
				    Float_t &erry,Float_t &errz,Float_t &covyz);
  static Int_t GetErrorParamMI(Int_t layer,const AliITSRecPoint*cl,
			       Float_t tgl,Float_t tgphitr,Float_t expQ,
			       Float_t &erry,Float_t &errz);
  static Int_t GetErrorParamAngle(Int_t layer,const AliITSRecPoint*cl,
				  Float_t tgl,Float_t tgphitr,
				  Float_t &erry,Float_t &errz);
  static Int_t GetErrorParamAngleOld(Int_t layer,const AliITSRecPoint*cl,
                                  Float_t tgl,Float_t tgphitr,
                                  Float_t &erry,Float_t &errz);

  ClassDef(AliITSClusterParam,1)    //  ITS cluster parametrization class
};

#endif
 AliITSClusterParam.h:1
 AliITSClusterParam.h:2
 AliITSClusterParam.h:3
 AliITSClusterParam.h:4
 AliITSClusterParam.h:5
 AliITSClusterParam.h:6
 AliITSClusterParam.h:7
 AliITSClusterParam.h:8
 AliITSClusterParam.h:9
 AliITSClusterParam.h:10
 AliITSClusterParam.h:11
 AliITSClusterParam.h:12
 AliITSClusterParam.h:13
 AliITSClusterParam.h:14
 AliITSClusterParam.h:15
 AliITSClusterParam.h:16
 AliITSClusterParam.h:17
 AliITSClusterParam.h:18
 AliITSClusterParam.h:19
 AliITSClusterParam.h:20
 AliITSClusterParam.h:21
 AliITSClusterParam.h:22
 AliITSClusterParam.h:23
 AliITSClusterParam.h:24
 AliITSClusterParam.h:25
 AliITSClusterParam.h:26
 AliITSClusterParam.h:27
 AliITSClusterParam.h:28
 AliITSClusterParam.h:29
 AliITSClusterParam.h:30
 AliITSClusterParam.h:31
 AliITSClusterParam.h:32
 AliITSClusterParam.h:33
 AliITSClusterParam.h:34
 AliITSClusterParam.h:35
 AliITSClusterParam.h:36
 AliITSClusterParam.h:37
 AliITSClusterParam.h:38
 AliITSClusterParam.h:39
 AliITSClusterParam.h:40
 AliITSClusterParam.h:41
 AliITSClusterParam.h:42
 AliITSClusterParam.h:43
 AliITSClusterParam.h:44
 AliITSClusterParam.h:45
 AliITSClusterParam.h:46
 AliITSClusterParam.h:47
 AliITSClusterParam.h:48
 AliITSClusterParam.h:49
 AliITSClusterParam.h:50
 AliITSClusterParam.h:51
 AliITSClusterParam.h:52
 AliITSClusterParam.h:53
 AliITSClusterParam.h:54
 AliITSClusterParam.h:55
 AliITSClusterParam.h:56
 AliITSClusterParam.h:57
 AliITSClusterParam.h:58
 AliITSClusterParam.h:59
 AliITSClusterParam.h:60
 AliITSClusterParam.h:61
 AliITSClusterParam.h:62
 AliITSClusterParam.h:63
 AliITSClusterParam.h:64