00001 // @(#)root/meta:$Id: TMethodArg.h 25986 2008-10-28 08:39:44Z brun $ 00002 // Author: Rene Brun 04/02/95 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TMethodArg 00013 #define ROOT_TMethodArg 00014 00015 00016 ////////////////////////////////////////////////////////////////////////// 00017 // // 00018 // TMethodArg // 00019 // // 00020 // Dictionary interface for a method argument. // 00021 // // 00022 ////////////////////////////////////////////////////////////////////////// 00023 00024 #ifndef ROOT_TDictionary 00025 #include "TDictionary.h" 00026 #endif 00027 00028 #include "TDataMember.h" 00029 00030 class TFunction; 00031 class TMethod; 00032 00033 class TMethodArg : public TDictionary { 00034 00035 friend class TMethod; 00036 00037 private: 00038 TMethodArg(const TMethodArg&); // Not implemented 00039 TMethodArg& operator=(const TMethodArg&); // Not implemented 00040 00041 MethodArgInfo_t *fInfo; //pointer to CINT method argument info 00042 TFunction *fMethod; //pointer to the method or global function 00043 TDataMember *fDataMember; //TDataMember pointed by this arg,to get values and options from. 00044 00045 public: 00046 TMethodArg(MethodArgInfo_t *info = 0, TFunction *method = 0); 00047 virtual ~TMethodArg(); 00048 const char *GetDefault() const; 00049 TFunction *GetMethod() const { return fMethod; } 00050 const char *GetTypeName() const; 00051 const char *GetFullTypeName() const; 00052 Long_t Property() const; 00053 00054 TDataMember *GetDataMember() const; 00055 TList *GetOptions() const; 00056 00057 ClassDef(TMethodArg,0) //Dictionary for a method argument 00058 }; 00059 00060 #endif 00061