Adding the new detector MFT (Antonio Uras)
[u/mrichter/AliRoot.git] / STEER / CDB / AliShuttleInterface.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /* $Id$ */
17
18 //
19 // abstract interface class to AliShuttle
20 // This class is implemented by AliTestShuttle for testing and
21 // by AliShuttle for the full setup
22 //
23
24 #include "AliShuttleInterface.h"
25 #include "AliLog.h"
26 #include <TClass.h>
27 #include <TSystem.h>
28
29 ClassImp(AliShuttleInterface)
30
31         const char* AliShuttleInterface::fkSystemNames[4] = { "DAQ", "DCS", "HLT", "DQM" };
32
33 // names of the detectors preprocessors
34 const char* AliShuttleInterface::fgkDetName[kNDetectors] = {"SPD", "SDD", "SSD", "TPC", "TRD", "TOF",
35        "PHS", "CPV", "HMP", "EMC", "MCH", "MTR", "FMD", "ZDC", "PMD", "T00", "V00", "GRP", "HLT", "ACO", "TRI"
36 // #ifdef MFT_UPGRADE
37 //                                                          , "MFT" 
38 // #endif 
39                                                             , "MFT"     // AU
40        };
41
42 // names of the detectors in OCDB
43 const char* AliShuttleInterface::fgkOfflineDetName[kNDetectors] = {"ITS", "ITS", "ITS", "TPC", "TRD", "TOF",
44        "PHOS", "PHOS", "HMPID", "EMCAL", "MUON", "MUON", "FMD", "ZDC", "PMD", "T0", "VZERO", "GRP", "HLT", "ACORDE", "TRIGGER"
45 // #ifdef MFT_UPGRADE
46 //         , "MFT" 
47 // #endif 
48                                                                    , "MFT"     // AU
49            };
50
51 TString AliShuttleInterface::fgkMainCDB("alien://folder=ShuttleCDB");
52 TString AliShuttleInterface::fgkLocalCDB("local://LocalShuttleCDB");
53 TString AliShuttleInterface::fgkMainRefStorage("alien://folder=ShuttleReference");
54 TString AliShuttleInterface::fgkLocalRefStorage("local://LocalReferenceStorage");
55
56 TString AliShuttleInterface::fgkShuttleTempDir("/tmp");
57 TString AliShuttleInterface::fgkShuttleLogDir("/tmp/log");
58
59 //______________________________________________________________________________________________
60 const char* AliShuttleInterface::GetOfflineDetName(const char* detName){
61 // Return "offline" detector name
62
63         Int_t detPos = GetDetPos(detName);
64         if(detPos < 0) {
65                 AliErrorClass(Form("Unknown detector: %s",detName));
66                 return 0;
67         }
68
69         return fgkOfflineDetName[detPos];
70 }
71
72 //______________________________________________________________________________________________
73 const char* AliShuttleInterface::GetDetName(UInt_t detPos){
74 // Return detector code
75
76         if(detPos >= kNDetectors) {
77                 AliErrorClass(Form("Parameter out of bound: %d", detPos));
78                 return 0;
79         }
80
81         return fgkDetName[detPos];
82 }
83
84 //______________________________________________________________________________________________
85 Int_t AliShuttleInterface::GetDetPos(const char* detName){
86 // Return detector position in the detector code array
87
88         for(UInt_t iDet=0; iDet < kNDetectors; iDet++){
89                 if(!strcmp(fgkDetName[iDet], detName)) return iDet;
90         }
91         return -1;
92 }