From Laurent:
[u/mrichter/AliRoot.git] / MUON / AliMUONVGeometryDEIndexing.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$
5 //
6 // Class AliMUONVGeometryDEIndexing
7 // --------------------------------
8 // The abstract singleton base class for definition of
9 // the conversion between the detection element Ids and 
10 // the indexing in a simple array.
11 //
12 // Author: Ivana Hrivnacova, IPN Orsay
13
14 #ifndef ALI_MUON_V_GEOMETRY_DE_INDEXING_H
15 #define ALI_MUON_V_GEOMETRY_DE_INDEXING_H
16
17 #include <TObject.h>
18
19 class AliMUONVGeometryDEIndexing;
20
21 class AliMUONVGeometryDEIndexing : public TObject
22 {
23   public:
24     AliMUONVGeometryDEIndexing();
25     virtual ~AliMUONVGeometryDEIndexing();
26
27     // static method
28     static  Int_t GetModuleId(Int_t detElemId);
29             
30     // methods
31     virtual Int_t GetDetElementIndex(Int_t detElemId) const = 0;
32     virtual Int_t GetDetElementId(Int_t detElemIndex) const = 0;
33
34     virtual Int_t GetNofDetElements() const = 0;
35     virtual void  SetNofDetElements(Int_t  nofDetElements) = 0;  
36
37   ClassDef(AliMUONVGeometryDEIndexing, 1) // MUON transformations store
38 };
39
40 #endif //ALI_MUON_DE_INDEXING_H