EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FairParSet.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file FairParSet.h
1 #ifndef FAIRPARSET_H
2 #define FAIRPARSET_H
3 
4 #include "FairLogger.h"
5 #include "TNamed.h"
6 //#include "TArrayI.h"
7 
8 class FairParIo;
9 
10 class FairParSet : public TNamed
11 {
12  protected:
13  TString detName;
14  Int_t versions[3];
15  Bool_t status;
16  Bool_t changed;
17  TString paramContext; // Context/purpose for parameters and conditions
18  TString author; // Author of parameters
19  TString description ; // Description of parameters
22  public:
23  FairParSet(const char* name="",const char* title="",const char* context="");
24  virtual ~FairParSet() {}
25  virtual Bool_t init();
26  virtual Bool_t init(FairParIo* io) { return kFALSE; }
27  virtual Int_t write();
28  virtual Int_t write(FairParIo*) { return kFALSE; }
29  virtual void clear() {}
30  virtual void print();
31  const char* getDetectorName() {return detName.Data();}
32  void resetInputVersions();
33 
34  void setInputVersion(Int_t v=-1,Int_t i=0) {
35  if (i>=0 && i<3) { versions[i]=v; }
36  }
37  Int_t getInputVersion(Int_t i) {
38  if (i>=0 && i<3) { return versions[i]; }
39  else { return 0; }
40  }
41  void setStatic(Bool_t flag=kTRUE) {status=flag;}
42  Bool_t isStatic() {return status;}
43  void setChanged(Bool_t flag=kTRUE) {changed=flag;}
44  Bool_t hasChanged() {return changed;}
45 
46  const char* getParamContext() const { return paramContext.Data(); }
47 
48  void setAuthor(const char* s) {author=s;}
49  const char* getAuthor() const { return author.Data(); }
50 
51  void setDescription(const char* s) {description=s;}
52  const char* getDescription() const { return description.Data(); }
53 
55  author=r.getAuthor();
57  }
58 
59  private:
60 
62  FairParSet(const FairParSet&);
63 
64  ClassDef(FairParSet,1) // Base class for all parameter containers
65 };
66 
67 #endif /* !FAIRPARSET_H */
68