ROOT logo
AliRoot » HMPID » AliHMPIDParam

class AliHMPIDParam: public TNamed

  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  *                                                                        *
  * Author: The ALICE Off-line Project.                                    *
  * Contributors are mentioned in the code where appropriate.              *
  *                                                                        *
  * Permission to use, copy, modify and distribute this software and its   *
  * documentation strictly for non-commercial purposes is hereby granted   *
  * without fee, provided that the above copyright notice appears in all   *
  * copies and that both the copyright notice and this permission notice   *
  * appear in the supporting documentation. The authors make no claims     *
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *

Function Members (Methods)

public:
virtual~AliHMPIDParam()
static Int_tA2C(Int_t pad)
static Int_tA2P(Int_t pad)
static Int_tA2X(Int_t pad)
static Int_tA2Y(Int_t pad)
static Int_tAbs(Int_t ch, Int_t pc, Int_t x, Int_t y)
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Float_tChPhiMax(Int_t ch)
Float_tChPhiMin(Int_t ch)
Float_tChThMax(Int_t ch)
Float_tChThMin(Int_t ch)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
static Int_tDDL2C(Int_t ddl)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
Float_tDistCut() const
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
static Double_tEPhotMax()
static Double_tEPhotMin()
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
static Double_tFindTemp(Double_t tLow, Double_t tHigh, Double_t y)
Double_tGapIdx() const
Double_tGapThick() const
static Double_tGausPar(Double_t x, Double_t a1, Double_t a2, Double_t a3)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Double_tGetEPhotMean() const
virtual const char*TObject::GetIconName() const
Bool_tGetInstType() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Double_tGetRefIdx() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
static Double_tHinRad(Float_t y)
static voidIdealPosition(Int_t iCh, TGeoHMatrix* m)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
static Int_tInHVSector(Float_t y)
virtual voidTObject::Inspect() constMENU
static AliHMPIDParam*Instance()
static AliHMPIDParam*InstanceNoGeo()
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
static Bool_tIsDeadPad(Int_t padx, Int_t pady, Int_t ch)
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
static Bool_tIsInDead(Float_t x, Float_t y)
static Bool_tIsInside(Float_t x, Float_t y, Float_t d = 0)
Bool_tTObject::IsOnHeap() const
static Bool_tIsOverTh(Float_t q)
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
static Double_tK1x()
static Double_tK1y()
static Double_tK2x()
static Double_tK2y()
static Double_tK4x()
static Double_tK4y()
static Double_tLAbsGap(Double_t eV)
static Double_tLAbsRad(Double_t eV)
static Double_tLAbsWin(Double_t eV)
TVector3Lors2Mars(Int_t c, Float_t x, Float_t y, Int_t pl = kPc) const
voidLors2Mars(Int_t c, Float_t x, Float_t y, Double_t* m, Int_t pl = kPc) const
voidLors2MarsVec(Int_t c, Double_t* m, Double_t* l) const
static voidLors2Pad(Float_t x, Float_t y, Int_t& pc, Int_t& px, Int_t& py)
static Float_tLorsX(Int_t pc, Int_t padx)
static Float_tLorsY(Int_t pc, Int_t pady)
virtual voidTNamed::ls(Option_t* option = "") const
voidMars2Lors(Int_t c, Double_t* m, Float_t& x, Float_t& y) const
voidMars2LorsVec(Int_t c, Double_t* m, Float_t& th, Float_t& ph) const
static Float_tMaxPcX(Int_t iPc)
static Float_tMaxPcY(Int_t iPc)
voidTObject::MayNotUse(const char* method) const
Double_tMeanIdxRad() const
Double_tMeanIdxWin() const
static Float_tMinPcX(Int_t iPc)
static Float_tMinPcY(Int_t iPc)
Float_tMultCut() const
static Double_tNIdxGap(Double_t eV)
static Double_tNIdxRad(Double_t eV, Double_t temp)
static Double_tNIdxWin(Double_t eV)
static Double_tNMgF2Idx(Double_t eV)
TVector3Norm(Int_t c) const
voidNorm(Int_t c, Double_t* n) const
virtual Bool_tTObject::Notify()
static Int_tNsig()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
static Double_tPitchAnodeCathode()
voidPoint(Int_t c, Double_t* p, Int_t plane) const
virtual voidTObject::Pop()
virtual voidPrint(Option_t* opt = "") const
voidPrintChStatus(Int_t ch)
Float_tQCut() const
static Double_tQEffCSI(Double_t eV)
static Float_tr2d()
static Int_tRadiator(Float_t y)
Double_tRadThick() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetChStatus(Int_t ch, Bool_t status = kTRUE)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEPhotMean(Double_t ePhotMean)
voidSetGeomAccept()
voidSetInstanceType(Bool_t inst)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNSigmas(Int_t sigmas)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPcStatus(Int_t ch, Int_t pc, Bool_t status)
voidSetRefIdx(Double_t refRadIdx)
voidSetSectStatus(Int_t ch, Int_t sect, Bool_t status)
voidSetTemp(Double_t temp)
voidSetThreshold(Int_t thres)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
Double_tSigCrom(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
Double_tSigGeom(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
Double_tSigLoc(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
Double_tSigma2(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh)
static Double_tSigmaCorrFact(Int_t iPart, Double_t occupancy)
static Float_tSizeAllX()
static Float_tSizeAllY()
virtual Int_tTNamed::Sizeof() const
static Float_tSizePadX()
static Float_tSizePadY()
static Float_tSizePcX()
static Float_tSizePcY()
static Double_tSqrtK3x()
static Double_tSqrtK3y()
static Int_tStack(Int_t evt = -1, Int_t tid = -1)
static Int_tStackCount(Int_t pid, Int_t evt)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
Double_tWinIdx() const
Double_tWinThick() const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
AliHMPIDParam(Bool_t noGeo)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum EChamberData { kMinCh
kMaxCh
kMinPc
kMaxPc
};
enum EPadxData { kPadPcX
kMinPx
kMaxPx
kMaxPcx
};
enum EPadyData { kPadPcY
kMinPy
kMaxPy
kMaxPcy
};
enum EPedestalData { kPadMeanZeroCharge
kPadSigmaZeroCharge
kPadMeanMasked
kPadSigmaMasked
};
enum EPlaneId { kPc
kRad
kAnod
};
enum ETrackingFlags { kMipDistCut
kMipQdcCut
kNoPhotAccept
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TGeoHMatrix*fM[7]pointers to matrices defining HMPID chambers rotations-translations
TStringTNamed::fNameobject identifier
Double_tfPhotEMeanmean energy of photon
Double_tfRefIdxrunning refractive index of C6F14
Double_tfTempactual temparature of C6F14
TStringTNamed::fTitleobject title
Float_tfXx shift of LORS with respect to rotated MARS
Float_tfYy shift of LORS with respect to rotated MARS
static Float_tfgAllX
static Float_tfgAllYdefinition of HMPID geometric parameters
static Float_tfgCellX
static Float_tfgCellY
static AliHMPIDParam*fgInstancestatic pointer to instance of AliHMPIDParam singleton
static Bool_tfgInstanceTypekTRUE if from geomatry kFALSE if from ideal geometry
static Bool_tfgMapPad[160][144][7]map of pads to evaluate if they are active or dead (160,144) pads for 7 chambers
static Int_tfgNSigmassigma Cut
static Float_tfgPcX
static Float_tfgPcY
static Int_tfgThresholdsigma Cut
static const Double_tfgkDANODE-CATHODE distance 0.445/2
static const Double_tfgkK1x
static const Double_tfgkK1y
static const Double_tfgkK2x
static const Double_tfgkK2y
static const Double_tfgkK4x
static const Double_tfgkK4y
static Float_tfgkMaxPcX[6]limits PC
static Float_tfgkMaxPcY[6]
static Float_tfgkMinPcX[6]limits PC
static Float_tfgkMinPcY[6]limits PC
static const Double_tfgkSqrtK3x
static const Double_tfgkSqrtK3y

Class Charts

Inheritance Chart:
TNamed
AliHMPIDParam

Function documentation

AliHMPIDParam(Bool_t noGeo)
 Here all the intitializition is taken place when AliHMPIDParam::Instance() is invoked for the first time.
 In particular, matrices to be used for LORS<->MARS trasnformations are initialized from TGeo structure.
 Note that TGeoManager should be already initialized from geometry.root file
void Print(Option_t* opt = "") const
 print some usefull (hopefully) info on some internal guts of HMPID parametrisation
void IdealPosition(Int_t iCh, TGeoHMatrix* m)
 Construct ideal position matrix for a given chamber
 Arguments: iCh- chamber ID; pMatrix- pointer to precreated unity matrix where to store the results
   Returns: none
Int_t Stack(Int_t evt = -1, Int_t tid = -1)
 Prints some useful info from stack
 Arguments: evt - event number. if not -1 print info only for that event
            tid - track id. if not -1 then print it and all it's mothers if any
   Returns: mother tid of the given tid if any
Int_t StackCount(Int_t pid, Int_t evt)
 Counts total number of particles of given sort (including secondary) for a given event
Double_t Sigma2(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh)
 Analithical calculation of total error (as a sum of localization, geometrical and chromatic errors) on Cerenkov angle for a given Cerenkov photon
 created by a given MIP. Fromulae according to CERN-EP-2000-058
 Arguments: Cerenkov and azimuthal angles for Cerenkov photon, [radians]
            dip and azimuthal angles for MIP taken at the entrance to radiator, [radians]
            MIP beta
   Returns: absolute error on Cerenkov angle, [radians]
Double_t SigLoc(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
 Analitical calculation of localization error (due to finite segmentation of PC) on Cerenkov angle for a given Cerenkov photon
 created by a given MIP. Fromulae according to CERN-EP-2000-058
 Arguments: Cerenkov and azimuthal angles for Cerenkov photon, [radians]
            dip and azimuthal angles for MIP taken at the entrance to radiator, [radians]
            MIP beta
   Returns: absolute error on Cerenkov angle, [radians]
Double_t SigCrom(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
 Analitical calculation of chromatic error (due to lack of knowledge of Cerenkov photon energy) on Cerenkov angle for a given Cerenkov photon
 created by a given MIP. Fromulae according to CERN-EP-2000-058
 Arguments: Cerenkov and azimuthal angles for Cerenkov photon, [radians]
            dip and azimuthal angles for MIP taken at the entrance to radiator, [radians]
            MIP beta
   Returns: absolute error on Cerenkov angle, [radians]
Double_t SigGeom(Double_t trkTheta, Double_t trkPhi, Double_t ckovTh, Double_t ckovPh, Double_t beta)
 Analitical calculation of geometric error (due to lack of knowledge of creation point in radiator) on Cerenkov angle for a given Cerenkov photon
 created by a given MIP. Formulae according to CERN-EP-2000-058
 Arguments: Cerenkov and azimuthal angles for Cerenkov photon, [radians]
            dip and azimuthal angles for MIP taken at the entrance to radiator, [radians]
            MIP beta
   Returns: absolute error on Cerenkov angle, [radians]
Double_t SigmaCorrFact(Int_t iPart, Double_t occupancy)
AliHMPIDParam* Instance()
AliHMPIDParam* InstanceNoGeo()
Bool_t IsInDead(Float_t x, Float_t y)
Bool_t IsDeadPad(Int_t padx, Int_t pady, Int_t ch)
void Lors2Pad(Float_t x, Float_t y, Int_t& pc, Int_t& px, Int_t& py)
Int_t InHVSector(Float_t y)
Double_t FindTemp(Double_t tLow, Double_t tHigh, Double_t y)
void SetChStatus(Int_t ch, Bool_t status = kTRUE)
void SetSectStatus(Int_t ch, Int_t sect, Bool_t status)
void SetPcStatus(Int_t ch, Int_t pc, Bool_t status)
void PrintChStatus(Int_t ch)
void SetGeomAccept()
#include <TVector3.h> // Lors2Mars()
Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved.
 See cxx source for full Copyright notice                               
Id
virtual ~AliHMPIDParam()
 Class providing all the needed parametrised information
 to construct the geometry, to define segmentation and to provide response model
 In future will also provide all the staff needed for alignment and calibration
ctor&dtor
Float_t r2d()
{return 57.2957795; }
Float_t SizePadX()
{return fgCellX; }
Float_t SizePadY()
{return fgCellY; }
Float_t SizePcX()
{return fgPcX; }
Float_t SizePcY()
{return fgPcY; }
Float_t MaxPcX(Int_t iPc)
{return fgkMaxPcX[iPc]; }
Float_t MaxPcY(Int_t iPc)
{return fgkMaxPcY[iPc]; }
Float_t MinPcX(Int_t iPc)
{return fgkMinPcX[iPc]; }
Float_t MinPcY(Int_t iPc)
{return fgkMinPcY[iPc]; }
Int_t Nsig()
{return fgNSigmas; }
Float_t SizeAllX()
{return fgAllX; }
Float_t SizeAllY()
{return fgAllY; }
Float_t LorsX(Int_t pc, Int_t padx)
{return (padx +0.5)*SizePadX()+fgkMinPcX[pc]; }
Float_t LorsY(Int_t pc, Int_t pady)
{return (pady +0.5)*SizePadY()+fgkMinPcY[pc]; }
Float_t ChPhiMin(Int_t ch)
{return Lors2Mars(ch,LorsX(ch,kMinPx)-fX,LorsY(ch,kMinPy)-fY).Phi()*r2d();}
Float_t ChThMin(Int_t ch)
{return Lors2Mars(ch,LorsX(ch,kMinPx)-fX,LorsY(ch,kMinPy)-fY).Theta()*r2d();}
Float_t ChPhiMax(Int_t ch)
{return Lors2Mars(ch,LorsX(ch,kMaxPcx)-fX,LorsY(ch,kMaxPcy)-fY).Phi()*r2d();}
Float_t ChThMax(Int_t ch)
{return Lors2Mars(ch,LorsX(ch,kMaxPcx)-fX,LorsY(ch,kMaxPcy)-fY).Theta()*r2d();}
Int_t Abs(Int_t ch, Int_t pc, Int_t x, Int_t y)
{return ch*100000000+pc*1000000+x*1000+y; }
Int_t DDL2C(Int_t ddl)
{return ddl/2; }
Int_t A2C(Int_t pad)
{return pad/100000000; }
Int_t A2P(Int_t pad)
{return pad%100000000/1000000; }
Int_t A2X(Int_t pad)
{return pad%1000000/1000; }
Int_t A2Y(Int_t pad)
{return pad%1000; }
Bool_t IsOverTh(Float_t q)
{return q >= fgThreshold; }
Bool_t GetInstType() const
{return fgInstanceType; }
Int_t Radiator(Float_t y)
{if (InHVSector(y)<0) return -1; return InHVSector(y)/2;}
Double_t HinRad(Float_t y)
{if (Radiator(y)<0) return -1;return y-Radiator(y)*fgkMinPcY[Radiator(y)];}
Bool_t IsInside(Float_t x, Float_t y, Float_t d = 0)
{return x>-d&&y>-d&&x<fgkMaxPcX[kMaxPc]+d&&y<fgkMaxPcY[kMaxPc]+d; }
Double_t EPhotMin()
For optical properties
{return 5.5;}
Double_t EPhotMax()
{return 8.5;}
Double_t NIdxRad(Double_t eV, Double_t temp)
{return TMath::Sqrt(1+0.554*(1239.84/eV)*(1239.84/eV)/((1239.84/eV)*(1239.84/eV)-5769))-0.0005*(temp-20);}
Double_t NIdxWin(Double_t eV)
{return TMath::Sqrt(1+46.411/(10.666*10.666-eV*eV)+228.71/(18.125*18.125-eV*eV));}
Double_t NMgF2Idx(Double_t eV)
{return 1.7744 - 2.866e-3*(1239.842609/eV) + 5.5564e-6*(1239.842609/eV)*(1239.842609/eV);}
Double_t NIdxGap(Double_t eV)
{return 1+0.12489e-6/(2.62e-4 - eV*eV/1239.84/1239.84);}
Double_t LAbsRad(Double_t eV)
{return (eV<7.8)*(GausPar(eV,3.20491e16,-0.00917890,0.742402)+GausPar(eV,3035.37,4.81171,0.626309))+(eV>=7.8)*0.0001;}
Double_t LAbsWin(Double_t eV)
{return (eV<8.2)*(818.8638-301.0436*eV+36.89642*eV*eV-1.507555*eV*eV*eV)+(eV>=8.2)*0.0001;}
Double_t LAbsGap(Double_t eV)
{return (eV<7.75)*6512.399+(eV>=7.75)*3.90743e-2/(-1.655279e-1+6.307392e-2*eV-8.011441e-3*eV*eV+3.392126e-4*eV*eV*eV);}
Double_t QEffCSI(Double_t eV)
{return (eV>6.07267)*0.344811*(1-exp(-1.29730*(eV-6.07267)));}
Double_t GausPar(Double_t x, Double_t a1, Double_t a2, Double_t a3)
{return a1*TMath::Exp(-0.5*((x-a2)/a3)*((x-a2)/a3));}
Double_t GetEPhotMean() const
{return fPhotEMean;}
Double_t GetRefIdx() const
{return fRefIdx;}
Double_t MeanIdxRad() const
Double_t MeanIdxWin() const
{return NIdxWin(fPhotEMean);}
Float_t DistCut() const
{return 1.0;}
Float_t QCut() const
{return 100;}
Float_t MultCut() const
{return 30;}
Double_t RadThick() const
{return 1.5;}
Double_t WinThick() const
{return 0.5;}
Double_t GapThick() const
{return 8.0;}
Double_t WinIdx() const
{return 1.5787;}
Double_t GapIdx() const
{return 1.0005;}
void Lors2Mars(Int_t c, Float_t x, Float_t y, Double_t* m, Int_t pl = kPc) const
trasformation methodes
void Mars2Lors(Int_t c, Double_t* m, Float_t& x, Float_t& y) const
{Double_t l[3];fM[c]->MasterToLocal(m,l);x=l[0]+fX;y=l[1]+fY;}
void Mars2LorsVec(Int_t c, Double_t* m, Float_t& th, Float_t& ph) const
void Lors2MarsVec(Int_t c, Double_t* m, Double_t* l) const
{fM[c]->LocalToMasterVect(m,l); }
TVector3 Norm(Int_t c) const
{Double_t n[3]; Norm(c,n); return TVector3(n); }
void Norm(Int_t c, Double_t* n) const
void Point(Int_t c, Double_t* p, Int_t plane) const
{Lors2Mars(c,0,0,p,plane);}
void SetTemp(Double_t temp)
{fTemp = temp;}
void SetEPhotMean(Double_t ePhotMean)
{fPhotEMean = ePhotMean;}
void SetRefIdx(Double_t refRadIdx)
{fRefIdx = refRadIdx;}
void SetNSigmas(Int_t sigmas)
{fgNSigmas = sigmas;}
void SetThreshold(Int_t thres)
{fgThreshold = thres;}
void SetInstanceType(Bool_t inst)
For PID
{fgInstanceType = inst;}
Double_t PitchAnodeCathode()
Mathieson Getters
{return fgkD;}
Double_t SqrtK3x()
{return fgkSqrtK3x;}
Double_t K2x()
{return fgkK2x;}
Double_t K1x()
{return fgkK1x;}
Double_t K4x()
{return fgkK4x;}
Double_t SqrtK3y()
{return fgkSqrtK3y;}
Double_t K2y()
{return fgkK2y;}
Double_t K1y()
{return fgkK1y;}
Double_t K4y()
{return fgkK4y;}
AliHMPIDParam(Bool_t noGeo)
AliHMPIDParam & operator=(const AliHMPIDParam& r)