Fix for the case of non-existent calibration files
[u/mrichter/AliRoot.git] / ITS / AliITSCorrMap2DSDD.h
CommitLineData
54af1add 1#ifndef ALIITSCORRMAP2DSDD_H
2#define ALIITSCORRMAP2DSDD_H
0ec6d8a9 3/* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
54af1add 6/* $Id$ */
0ec6d8a9 7
8///////////////////////////////////////////////////////////////////
9// //
10// Class for SDD maps in 2D used to correct for //
11// voltage divider shape and doping fluctuations //
12// Origin: F.Prino, Torino, prino@to.infn.it //
13// //
14///////////////////////////////////////////////////////////////////
15
0ec6d8a9 16#include<TNamed.h>
0ec6d8a9 17class TH1F;
18class TH2F;
cfe39822 19class AliITSsegmentationSDD;
0ec6d8a9 20
54af1add 21class AliITSCorrMap2DSDD : public AliITSCorrMapSDD {
0ec6d8a9 22
23 public:
54af1add 24 AliITSCorrMap2DSDD();
25 AliITSCorrMap2DSDD(Char_t *mapname);
26 AliITSCorrMap2DSDD(Char_t *mapname, Int_t nbinsan, Int_t nbinsdr);
27 virtual ~AliITSCorrMap2DSDD(){};
0ec6d8a9 28
29 virtual void ResetMap();
30 virtual void Set2DMap(TH2F* hmap);
31 virtual void SetCellContent(Int_t iAn, Int_t iTb, Float_t devMicron){
54af1add 32 if(CheckAnodeBounds(iAn) && CheckDriftBounds(iTb)) fCorrMap[iAn][iTb]=(Short_t)(devMicron*10.+0.5);
0ec6d8a9 33 }
34
35 virtual Float_t GetCellContent(Int_t iAn, Int_t iTb) const {
54af1add 36 if(CheckAnodeBounds(iAn) && CheckDriftBounds(iTb)) return (Float_t)fCorrMap[iAn][iTb]/10.;
0ec6d8a9 37 else return 0.;
38 }
39
40 protected:
54af1add 41 Short_t fCorrMap[kMaxNAnodePts][kMaxNDriftPts]; // map of deviations
0ec6d8a9 42 // stored as Short_t: integer
43 // values from -32000 to 32000
44 // in the range -3.2 - 3.2 mm
45
54af1add 46 ClassDef(AliITSCorrMap2DSDD,1);
0ec6d8a9 47};
48#endif