library: libCore #include "TMethodArg.h"

# TMethodArg

class description - source file - inheritance tree (.pdf)

## class TMethodArg : public TDictionary

| Inheritance Chart:
`TObject`
| <- | `TNamed`
| <- | `TDictionary`
| <- | `TMethodArg` |

        public:

                          TMethodArg(G__MethodArgInfo* info = 0, TFunction* method = 0)
                          TMethodArg(const TMethodArg&)
                  virtual ~TMethodArg()
           static TClass* Class()
             TDataMember* GetDataMember() const
              const char* GetDefault() const
              const char* GetFullTypeName() const
               TFunction* GetMethod() const
                   TList* GetOptions() const
              const char* GetTypeName() const
          virtual TClass* IsA() const
              TMethodArg& operator=(const TMethodArg&)
           virtual Long_t Property() const
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          G__MethodArgInfo* fInfo        pointer to CINT method argument info
                 TFunction* fMethod      pointer to the method or global function
               TDataMember* fDataMember  TDataMember pointed by this arg,to get values and options from.

## Class Description

      Each ROOT method (see TMethod) has a linked list of its arguments.
      This class describes one single method argument.
      The method argument info is obtained via the CINT api.
      See class TCint.

      The method argument information is used a.o. in the TContextMenu
      and THtml classes.

TMethodArg(G__MethodArgInfo *info, TFunction *method) : TDictionary()

     Default TMethodArg ctor. TMethodArgs are constructed in TFunction
     via a call to TCint::CreateListOfMethodArgs().

~TMethodArg()

     TMethodArg dtor deletes adopted G__MethodArgInfo object.

const char* GetDefault() const

     Get default value of method argument.

const char* GetTypeName() const

     Get type of method argument, e.g.: "class TDirectory*" -> "TDirectory"
     Result needs to be used or copied immediately.

const char* GetFullTypeName() const

     Get full type description of method argument, e.g.: "class TDirectory*".

Long_t Property() const

     Get property description word. For meaning of bits see EProperty.

TList* GetOptions() const

     Returns list of possible options - according to pointed datamember.
     If there is no datamember field assigned to this methodarg - returns 0.

TDataMember* GetDataMember() const

     Returns TDataMember pointed by this methodarg.
     If you want to specify list of options or current value for your
     MethodArg (i.e. it is used as initial values in argument-asking dialogs
     popped up from context-meny),you can get this value from one of data
     members of the class.
     The only restriction is, that this DataMember object must have its
     Getter/Setter methods set-up correctly - for details look at TDataMember.
     To learn how to specify the data member to which the argument should
     "point", look at TMethod. This is TMethod which sets up fDataMember,
     so it could work correctly.

### Inline Functions

             TFunction* GetMethod() const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
             TMethodArg TMethodArg(const TMethodArg&)
            TMethodArg& operator=(const TMethodArg&)

Author: Rene Brun 04/02/95
Last update: root/meta:$Name: $:$Id: TMethodArg.cxx,v 1.3 2002/11/26 10:24:09 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *