]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSDDLModuleMapSDD.h
SDD services on the cones implemented and activated (M. Sitta)
[u/mrichter/AliRoot.git] / ITS / AliITSDDLModuleMapSDD.h
1 #ifndef ALIITSDDLMODULEMAPSDD_H
2 #define ALIITSDDLMODULEMAPSDD_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 to store SDD DDL mapping in the OCDB                    //
11 // Origin: F.Prino, Torino, prino@to.infn.it                     //
12 //                                                               //
13 ///////////////////////////////////////////////////////////////////
14
15 #include<TObject.h>
16
17
18 class AliITSDDLModuleMapSDD : public TObject {
19
20  public:
21
22   AliITSDDLModuleMapSDD();
23   AliITSDDLModuleMapSDD(Char_t *ddlmapfile);
24   virtual ~AliITSDDLModuleMapSDD(){};
25
26   void SetDefaultMap();
27   void SetDec07part1Map();
28   void SetDec07part2Map();
29   void SetFeb08Map();
30   void SetDDLMapElement(Int_t iDDL, Int_t iChan, Int_t iMod){fDDLModuleMap[iDDL][iChan]=iMod;}
31   void SetDDLMap(AliITSDDLModuleMapSDD* ddlmap);
32   void ReadDDLModuleMap(Char_t *ddlmapfile);
33
34   Int_t GetModuleNumber(UInt_t iDDL, UInt_t iChan) const {return fDDLModuleMap[iDDL][iChan];}
35   static Int_t GetNDDLs(){return kDDLsNumber;}
36   static Int_t GetNModPerDDL(){return kModulesPerDDL;}
37
38
39   void PrintDDLMap() const ;
40
41  protected:
42   
43   enum {kDDLsNumber = 24};      // number of DDLs in SDD
44   enum {kModulesPerDDL = 12};   // number of modules in each DDL 
45
46   Int_t fDDLModuleMap[kDDLsNumber][kModulesPerDDL]; //  mapping DDL/module -> module number
47
48   ClassDef(AliITSDDLModuleMapSDD,1);
49 };
50 #endif