source: trunk/MagicSoft/Mars/mbase/MArgs.h@ 2979

Last change on this file since 2979 was 2728, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 1.4 KB
Line 
1#ifndef MARS_MArgs
2#define MARS_MArgs
3
4#ifndef MARS_MAGIC
5#include "MAGIC.h"
6#endif
7
8#ifndef ROOT_TNamed
9#include <TNamed.h>
10#endif
11
12#ifndef ROOT_TList
13#include <TList.h>
14#endif
15
16class MArgsEntry : public TString, public TObject
17{
18public:
19 MArgsEntry(const char *c) : TString(c), TObject() {}
20
21 void Print(const Option_t *o) const;
22
23 ClassDef(MArgsEntry, 0)
24};
25
26class MArgs : public TNamed
27{
28private:
29 Int_t fArgc;
30 TList *fArgv; //->
31
32public:
33 MArgs(int argc, char **argv);
34 ~MArgs();
35
36 void Print(const Option_t *o="") const;
37
38 // FIXME: Add max, min option
39 // FIXME: Add default option
40
41 Int_t GetInt(const TString name) const;
42 Double_t GetFloat(const TString name) const;
43 TString GetString(const TString name) const;
44
45 Int_t GetIntAndRemove(const TString name);
46 Double_t GetFloatAndRemove(const TString name);
47 TString GetStringAndRemove(const TString name);
48
49 Bool_t Has(const TString name) const;
50 Bool_t HasOnly(const TString name) const;
51 Bool_t HasOption(const TString name) const;
52 Bool_t HasOnlyAndRemove(const TString name);
53
54 TString GetArgumentStr(Int_t i) const;
55 Int_t GetArgumentInt(Int_t i) const;
56 Float_t GetArgumentFloat(Int_t i) const;
57 Int_t GetNumArguments() const;
58 Int_t GetNumOptions() const;
59 Int_t GetNumEntries() const;
60
61 ClassDef(MArgs, 0) //Class to parse command line arguments
62};
63
64#endif
Note: See TracBrowser for help on using the repository browser.