Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

TGo4Parameter.h

Go to the documentation of this file.
00001 //-------------------------------------------------------------
00002 //        Go4 Release Package v3.04-01 (build 30401)
00003 //                      28-November-2008
00004 //---------------------------------------------------------------
00005 //   The GSI Online Offline Object Oriented (Go4) Project
00006 //   Experiment Data Processing at EE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #ifndef TGO4PARAMETER_H
00017 #define TGO4PARAMETER_H
00018 
00019 #include "TNamed.h"
00020 
00021 class TObjArray;
00022 class TIterator;
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       /* We overwrite the default TNamed::Clear that would
00054       *  erase our name and title!
00055       * Implement this method in your parameter class
00056       * if you would like to reset any values with the
00057       * eraser button in the gui remote browser*/
00058       virtual void Clear(Option_t* opt="");
00059 
00060       void GetMemberValues(TObjArray* fItems);
00061       Bool_t SetMemberValues(TObjArray* fItems);
00062 
00063    protected:
00064 
00065       void GetMemberValues(TObjArray* fItems, TClass* cl, char* ptr, unsigned long int cloffset);
00066 
00067       Bool_t SetMemberValues(TIterator* fItems, TClass* cl, char* ptr, unsigned long int cloffset);
00068 
00069    ClassDef(TGo4Parameter,1)
00070 };
00071 
00072 #endif //TGO4PARAMETER_H
00073 
00074 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Fri Nov 28 12:59:29 2008 for Go4-v3.04-1 by  doxygen 1.4.2