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

TGo4ParameterMember.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 TGO4PARAMETERMEMBER_H
00017 #define TGO4PARAMETERMEMBER_H
00018 
00019 #include "TNamed.h"
00020 
00021 class TGo4ParameterMember : public TNamed {
00022    public:
00023 
00024       enum { kTString_t = 10001, kTGo4Fitter_t = 10002 };
00025 
00026       TGo4ParameterMember();
00027       TGo4ParameterMember(const char* name, const char* title);
00028       virtual ~TGo4ParameterMember();
00029 
00030       void SetType(const char* name, Int_t id) { fTypeName = name; fTypeId = id; }
00031       const char* GetTypeName() const { return fTypeName.Data(); }
00032       Int_t GetTypeId() const { return fTypeId; }
00033       Bool_t IsFitterItem() const { return GetTypeId()==kTGo4Fitter_t; }
00034 
00035       void SetMemberId(Int_t id) { fMemberId = id; }
00036       Int_t GetMemberId() const { return fMemberId; }
00037 
00038       void SetStrValue(const char* value) { fValue = value; }
00039       const char* GetStrValue() const { return fValue.Data(); }
00040       Bool_t CanStrEdit() const { return fTypeId!=kTGo4Fitter_t; }
00041 
00042       void SetArrayIndexes(Int_t ndim=0, Int_t indx1 = -1, Int_t indx2 = -1);
00043       Bool_t CheckArrayIndexes(Int_t ndim, Int_t indx1, Int_t indx2);
00044       Bool_t IsArrayItem() const { return (fIndex1>=0); }
00045       const char* GetFullName(TString& buf);
00046 
00047       void SetVisible(Bool_t on = kTRUE) { fVisible = on; }
00048       Bool_t IsVisible() const { return fVisible; }
00049 
00050       TObject* GetObject() const { return fObject; }
00051       void SetObject(TObject* obj, Bool_t owner);
00052 
00053       void SetValue(char* addr);
00054       void GetValue(char* addr);
00055 
00056 
00057    protected:
00058 
00059       TString   fTypeName;   // type name of data member
00060       Int_t     fTypeId;     // type id of data member
00061       Int_t     fMemberId;   // data member id (sequence number)
00062       TString   fValue;      // value of data member
00063       Int_t     fIndex1;     // first array index
00064       Int_t     fIndex2;     // second array index
00065       TObject*  fObject;     // place for objects like fitter
00066       Bool_t    fObjectOwner;
00067       Bool_t    fVisible;    //  is visible, used by GUI
00068 
00069    ClassDef(TGo4ParameterMember, 1);
00070 };
00071 
00072 
00073 #endif
00074 
00075 //----------------------------END OF GO4 SOURCE FILE ---------------------

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