]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCConfigParser.h
--This li
[u/mrichter/AliRoot.git] / TPC / AliTPCConfigParser.h
1 #ifndef AliTPCConfigParser_H
2 #define AliTPCConfigParser_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5 #include <TObject.h>
6
7 class TObjArray;
8 class TList;
9
10 class AliTPCConfigParser : public TObject{
11   
12 public:
13   AliTPCConfigParser();
14   AliTPCConfigParser(const char* cfgfile);
15   AliTPCConfigParser(const AliTPCConfigParser &cfg);
16   AliTPCConfigParser& operator = (const AliTPCConfigParser &cfg);
17  
18   virtual ~AliTPCConfigParser();
19   
20   Int_t ParseConfigFileTxt(const char* cfgfile);
21   Float_t GetValue(const char* name, UInt_t position=0); 
22
23   const TList* GetConfigurationMap() const {return fConfigMap;}
24   void ResetMap();
25
26   const TList*    operator()() const {return fConfigMap;}
27   const TObject* operator()(const char* key) const {return fConfigMap->FindObject(key);}
28   const TObject* operator()(TObject* key) const {return fConfigMap->FindObject(key);}
29   TObject* NextKey();
30   TObject* NextValue(const char *key);
31   TObject* NextValue(TObject *key);
32
33 private:
34   TList *fConfigMap;
35   TIterator *fKeyIter;
36   TIterator *fValIter;
37
38   TObject *NextValueIter(TObjArray *obj);
39   
40   ClassDef(AliTPCConfigParser, 1)         // TPC DA configuration file parser
41 };
42 #endif