Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef TGO4PARAMETER_H
00015 #define TGO4PARAMETER_H
00016
00017 #include "TNamed.h"
00018 #include "Riostream.h"
00019
00020 class TObjArray;
00021 class TIterator;
00022 class TDataMember;
00023
00029 class TGo4Parameter : public TNamed {
00030 public:
00031
00032 TGo4Parameter();
00033
00034 TGo4Parameter(const char* name, const char* title = "This is a Go4 Parameter Object");
00035
00036 virtual ~TGo4Parameter();
00037
00040 virtual Int_t PrintParameter(Text_t* buffer=0, Int_t buflen=0);
00041
00042 virtual void Print(Option_t* dummy="") const;
00043
00046 virtual Bool_t UpdateFrom(TGo4Parameter* rhs);
00047
00051 virtual Bool_t CustomUpdateFrom() const { return kTRUE; }
00052
00053
00054
00055
00056
00057
00058 virtual void Clear(Option_t* opt="");
00059
00060 void GetMemberValues(TObjArray* fItems);
00061 Bool_t SetMemberValues(TObjArray* fItems);
00062
00066 virtual void SavePrimitive(std::ostream& fs, Option_t* opt= "");
00067
00068 protected:
00069
00070 void GetMemberValues(TObjArray* fItems, TClass* cl, char* ptr, unsigned long int cloffset);
00071
00072 Bool_t SetMemberValues(TObjArray* items, Int_t& itemsindx, TClass* cl, char* ptr, unsigned long int cloffset);
00073
00074 Int_t FindArrayLength(TObjArray* items, Int_t& itemsindx, TDataMember* member);
00075
00076 ClassDef(TGo4Parameter,1)
00077 };
00078
00079 #endif //TGO4PARAMETER_H