Reordering includes, forward declarations from most specific to more
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpFiles.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 // $MpId: AliMpFiles.h,v 1.8 2006/03/17 11:34:29 ivana Exp $
6
7 /// \ingroup basic
8 /// \class AliMpFiles
9 /// \brief Class for generating file names and paths.
10 ///
11 /// The input files:
12 /// - zones.dat, zones_special.dat - sector description
13 /// - motif*.dat   - motif description (generated from Exceed)
14 /// - padPos*.dat  - pad positions in motif
15 ///
16 /// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
17
18 #ifndef ALI_MP_FILES_H
19 #define ALI_MP_FILES_H
20
21 #include <TObject.h>
22
23 #include "AliMpStationType.h"
24 #include "AliMpPlaneType.h"
25
26 #include <TString.h>
27
28 class AliMpFiles : public TObject
29 {
30   public:
31     // --> protected
32     //AliMpFiles();
33     //AliMpFiles(const AliMpFiles& right);
34     virtual ~AliMpFiles();
35   
36     //
37     // methods
38     //
39     
40     // bus patch
41     //
42     static TString BusPatchFilePath(); 
43
44     // de names
45     //
46     static TString DENamesFilePath(AliMpStationType stationType);
47
48     // trigger
49     //
50     static TString LocalTriggerBoardMapping();
51   
52     // slats
53     //
54     static TString SlatFilePath(AliMpStationType stationType, 
55                                 const char* slatType, AliMpPlaneType plane);
56     static TString SlatPCBFilePath(AliMpStationType stationType, 
57                                 const char* pcbType);
58     // sectors
59     //
60     static TString SectorFilePath(AliMpStationType station, 
61                                   AliMpPlaneType plane);
62     static TString SectorSpecialFilePath(AliMpStationType station, 
63                                   AliMpPlaneType plane);
64     static TString SectorSpecialFilePath2(AliMpStationType station, 
65                                   AliMpPlaneType plane);
66     // motifs
67     //
68     static TString MotifFilePath(AliMpStationType station, 
69                                  AliMpPlaneType plane, 
70                                  const TString& motifTypeID);
71     static TString MotifSpecialFilePath(AliMpStationType station,
72                                  AliMpPlaneType plane, const TString& motifID);
73     static TString PadPosFilePath(AliMpStationType station, 
74                                  AliMpPlaneType plane, const TString& motifTypeID);
75     static TString BergToGCFilePath(AliMpStationType station);
76   
77     // set methods
78     static void SetTopPath(const TString& topPath);
79   
80   protected:
81     AliMpFiles();
82     AliMpFiles(const AliMpFiles& right);
83   
84     // operators
85     AliMpFiles& operator=(const AliMpFiles& right);    
86   
87   private: 
88     // methods
89     static TString GetTop();
90     static TString PlaneDataDir(AliMpStationType station, AliMpPlaneType plane); 
91     static TString StationDataDir(AliMpStationType station); 
92   
93     // static data members  
94     static const TString fgkDataDir;       //data directory
95     static const TString fgkStationDir;    //station directory
96     static const TString fgkBendingDir;    //bending plane directory
97     static const TString fgkNonBendingDir; //non-bending plane directory
98     static const TString fgkDENames;       //DE names data file name
99     static const TString fgkSector;        //sector data file name
100     static const TString fgkSectorSpecial; //sector special data file name
101     static const TString fgkSectorSpecial2;//sector special data file name
102     static const TString fgkMotifPrefix;   //motif data file name
103     static const TString fgkMotifSpecialPrefix; //special motif data file name 
104     static const TString fgkPadPosPrefix;  //pad position data file name
105     static const TString fgkDataExt;       //file extension
106     static const TString fgkBergToGCFileName;  //BergToGC mapping filr name
107     static const TString fgkTriggerLocalBoards;// local board name to id mapping
108     static const TString fgkBusPatchFileName;  //DetElemIdToBusPatch file name
109     
110
111   ClassDef(AliMpFiles, 0) //File names and paths 
112 };  
113
114 #endif //ALI_MP_FILES_H