Warning, file /include/root/TMethodArg.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TMethodArg
0013 #define ROOT_TMethodArg
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024 #include "TDictionary.h"
0025 #include <string>
0026
0027 #ifdef R__LESS_INCLUDES
0028 class TDataMember;
0029 #else
0030 #include "TDataMember.h"
0031 #endif
0032
0033 class TFunction;
0034 class TMethod;
0035
0036 class TMethodArg : public TDictionary {
0037
0038 friend class TMethod;
0039
0040 private:
0041 TMethodArg(const TMethodArg&) = delete;
0042 TMethodArg& operator=(const TMethodArg&) = delete;
0043
0044 MethodArgInfo_t *fInfo;
0045 TFunction *fMethod;
0046 TDataMember *fDataMember;
0047
0048 public:
0049 TMethodArg(MethodArgInfo_t *info = nullptr, TFunction *method = nullptr);
0050 virtual ~TMethodArg();
0051 const char *GetDefault() const;
0052 TFunction *GetMethod() const { return fMethod; }
0053 const char *GetTypeName() const;
0054 const char *GetFullTypeName() const;
0055 std::string GetTypeNormalizedName() const;
0056 Long_t Property() const override;
0057 TypeInfo_t *GetTypeInfo() const;
0058
0059 TDataMember *GetDataMember() const;
0060 TList *GetOptions() const;
0061
0062 void Update(MethodArgInfo_t *info);
0063
0064 ClassDefOverride(TMethodArg,0)
0065 };
0066
0067 #endif
0068