Logo ROOT  
Reference Guide
TMethodArg.h
Go to the documentation of this file.
1 // @(#)root/meta:$Id$
2 // Author: Rene Brun 04/02/95
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TMethodArg
13 #define ROOT_TMethodArg
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TMethodArg //
19 // //
20 // Dictionary interface for a method argument. //
21 // //
22 //////////////////////////////////////////////////////////////////////////
23 
24 #include "TDictionary.h"
25 #include <string>
26 
27 #ifdef R__LESS_INCLUDES
28 class TDataMember;
29 #else
30 #include "TDataMember.h"
31 #endif
32 
33 class TFunction;
34 class TMethod;
35 
36 class TMethodArg : public TDictionary {
37 
38 friend class TMethod;
39 
40 private:
41  TMethodArg(const TMethodArg&); // Not implemented
42  TMethodArg& operator=(const TMethodArg&); // Not implemented
43 
44  MethodArgInfo_t *fInfo; //pointer to CINT method argument info
45  TFunction *fMethod; //pointer to the method or global function
46  TDataMember *fDataMember; //TDataMember pointed by this arg,to get values and options from.
47 
48 public:
49  TMethodArg(MethodArgInfo_t *info = 0, TFunction *method = 0);
50  virtual ~TMethodArg();
51  const char *GetDefault() const;
52  TFunction *GetMethod() const { return fMethod; }
53  const char *GetTypeName() const;
54  const char *GetFullTypeName() const;
55  std::string GetTypeNormalizedName() const;
56  Long_t Property() const;
57 
58  TDataMember *GetDataMember() const;
59  TList *GetOptions() const;
60 
61  void Update(MethodArgInfo_t *info);
62 
63  ClassDef(TMethodArg,0) //Dictionary for a method argument
64 };
65 
66 #endif
67 
TMethodArg::GetTypeNormalizedName
std::string GetTypeNormalizedName() const
Get the normalized name of the return type.
Definition: TMethodArg.cxx:85
TMethodArg
Each ROOT method (see TMethod) has a linked list of its arguments.
Definition: TMethodArg.h:36
TMethodArg::Property
Long_t Property() const
Get property description word. For meaning of bits see EProperty.
Definition: TMethodArg.cxx:93
TDataMember.h
TMethodArg::fMethod
TFunction * fMethod
Definition: TMethodArg.h:45
TDataMember
All ROOT classes may have RTTI (run time type identification) support added.
Definition: TDataMember.h:31
TMethodArg::GetDataMember
TDataMember * GetDataMember() const
Returns TDataMember pointed by this methodarg.
Definition: TMethodArg.cxx:120
TMethodArg::fDataMember
TDataMember * fDataMember
Definition: TMethodArg.h:46
TMethodArg::GetFullTypeName
const char * GetFullTypeName() const
Get full type description of method argument, e.g.: "class TDirectory*".
Definition: TMethodArg.cxx:74
TDictionary.h
TMethodArg::GetMethod
TFunction * GetMethod() const
Definition: TMethodArg.h:52
TMethod
Each ROOT class (see TClass) has a linked list of methods.
Definition: TMethod.h:38
Long_t
long Long_t
Definition: RtypesCore.h:54
TMethodArg::GetDefault
const char * GetDefault() const
Get default value of method argument.
Definition: TMethodArg.cxx:57
TMethodArg::GetOptions
TList * GetOptions() const
Returns list of possible options - according to pointed datamember.
Definition: TMethodArg.cxx:102
TMethodArg::TMethodArg
TMethodArg(const TMethodArg &)
TMethodArg::operator=
TMethodArg & operator=(const TMethodArg &)
TDictionary
This class defines an abstract interface that must be implemented by all classes that contain diction...
Definition: TDictionary.h:167
TMethodArg::Update
void Update(MethodArgInfo_t *info)
Update fInfo (to 0 for unloading and non-zero for reloading).
Definition: TMethodArg.cxx:129
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TMethodArg::~TMethodArg
virtual ~TMethodArg()
TMethodArg dtor deletes adopted CINT MethodArgInfo object.
Definition: TMethodArg.cxx:49
TFunction
Global functions class (global functions are obtained from CINT).
Definition: TFunction.h:30
TMethodArg::fInfo
MethodArgInfo_t * fInfo
Definition: TMethodArg.h:44
TList
A doubly linked list.
Definition: TList.h:44
TMethodArg::GetTypeName
const char * GetTypeName() const
Get type of method argument, e.g.
Definition: TMethodArg.cxx:66