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