library: libCore #include "TMethodCall.h" |
TMethodCall
class description - source file - inheritance tree (.pdf)
private:
virtual void Execute(const char*, const char*, int* = 0)
virtual void Execute(TMethod*, TObjArray*, int* = 0)
public:
TMethodCall()
TMethodCall(TClass* cl, const char* method, const char* params)
TMethodCall(const char* function, const char* params)
TMethodCall(const TMethodCall& org)
~TMethodCall()
void CallDtorOnly(Bool_t set = kTRUE)
static TClass* Class()
virtual TObject* Clone(const char* newname) const
void Execute(void* object)
void Execute(void* object, const char* params)
void Execute(void* object, Long_t& retLong)
void Execute(void* object, const char* params, Long_t& retLong)
void Execute(void* object, Double_t& retDouble)
void Execute(void* object, const char* params, Double_t& retDouble)
void Execute(void* object, char** retText)
void Execute(void* object, const char* params, char** retText)
void Execute()
void Execute(const char* params)
void Execute(Long_t& retLong)
void Execute(const char* params, Long_t& retLong)
void Execute(Double_t& retDouble)
void Execute(const char* params, Double_t& retDouble)
TFunction* GetMethod()
const char* GetMethodName() const
const char* GetParams() const
const char* GetProto() const
void Init(TClass* cl, const char* method, const char* params)
void Init(const char* function, const char* params)
void InitWithPrototype(TClass* cl, const char* method, const char* proto)
void InitWithPrototype(const char* function, const char* proto)
virtual TClass* IsA() const
Bool_t IsValid() const
TMethodCall& operator=(const TMethodCall& rhs)
TMethodCall::EReturnType ReturnType()
void SetParamPtrs(void* paramArr, Int_t nparam = -1)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
private:
G__CallFunc* fFunc CINT method invocation environment
Long_t fOffset offset added to object pointer before method invocation
TClass* fClass pointer to the class info
TFunction* fMetPtr pointer to the method or function info
TString fMethod method name
TString fParams argument string
TString fProto prototype string
Bool_t fDtorOnly call only dtor and not delete when calling ~xxx
TMethodCall::EReturnType fRetType method return type
public:
static const TMethodCall::EReturnType kLong
static const TMethodCall::EReturnType kDouble
static const TMethodCall::EReturnType kString
static const TMethodCall::EReturnType kOther
static const TMethodCall::EReturnType kNone
TMethodCall
Method or function calling interface. Objects of this class contain
the (CINT) environment to call a global function or a method for an
object of a specific class with the desired arguments. This class is
espicially useful when a method has to be called more times for
different objects and/or with different arguments. If a function or
method needs to be called only once one better uses
TInterpreter::Execute().
TMethodCall()
Default TMethodCall ctor. Use Init() to initialize the method call
environment.
TMethodCall(TClass *cl, const char *method, const char *params)
Create a method invocation environment for a specific class, method and
parameters. The parameter string has the form: "\"aap\", 3, 4.35".
To execute the method call TMethodCall::Execute(object,...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
TMethodCall(const char *function, const char *params)
Create a global function invocation environment. The parameter
string has the form: "\"aap\", 3, 4,35". To execute the
function call TMethodCall::Execute(...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
TMethodCall(const TMethodCall &orig) : TObject(orig)
Copy ctor.
~TMethodCall()
TMethodCall dtor.
TObject* Clone(const char *) const
void Init(TClass *cl, const char *method, const char *params)
Initialize the method invocation environment. Necessary input
information: the class, method name and the parameter string
of the form "\"aap\", 3, 4.35".
To execute the method call TMethodCall::Execute(object,...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
void Init(const char *function, const char *params)
Initialize the function invocation environment. Necessary input
information: the function name and the parameter string of
the form "\"aap\", 3, 4.35".
To execute the method call TMethodCall::Execute(...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
void InitWithPrototype(TClass *cl, const char *method, const char *proto)
Initialize the method invocation environment. Necessary input
information: the class, method name and the prototype string of
the form: "char*,int,float".
To execute the method call TMethodCall::Execute(object,...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
void InitWithPrototype(const char *function, const char *proto)
Initialize the function invocation environment. Necessary input
information: the function name and the prototype string of
the form: "char*,int,float".
To execute the method call TMethodCall::Execute(...).
This two step method is much more efficient than calling for
every invocation TInterpreter::Execute(...).
Bool_t IsValid() const
Return true if the method call has been properly initialized and is
usable.
TFunction* GetMethod()
Returns the TMethod describing the method to be executed. This takes
all overriding and overloading into account (call TClass::GetMethod()).
Since finding the method is expensive the result is cached.
void Execute(void *object)
Execute the method (with preset arguments) for the specified object.
void Execute(void *object, const char *params)
Execute the method for the specified object and argument values.
void Execute(void *object, Long_t &retLong)
Execute the method (with preset arguments) for the specified object.
void Execute(void *object, const char *params, Long_t &retLong)
Execute the method for the specified object and argument values.
void Execute(void *object, Double_t &retDouble)
Execute the method (with preset arguments) for the specified object.
void Execute(void *object, const char *params, Double_t &retDouble)
Execute the method for the specified object and argument values.
void Execute(void *object, char **retText)
Execute the method (with preset arguments) for the specified object.
void Execute(void *object, const char *params, char **retText)
Execute the method for the specified object and argument values.
void SetParamPtrs(void *paramArr, Int_t nparam)
ParamArr is an array containing the function argument values.
If nparam = -1 then paramArr must contain values for all function
arguments, otherwise Nargs-NargsOpt <= nparam <= Nargs, where
Nargs is the number of all arguments and NargsOpt is the number
of default arguments.
Inline Functions
TMethodCall& operator=(const TMethodCall& rhs)
void CallDtorOnly(Bool_t set = kTRUE)
const char* GetMethodName() const
const char* GetParams() const
const char* GetProto() const
TMethodCall::EReturnType ReturnType()
void Execute(void* object, char** retText)
void Execute(void* object, const char* params, char** retText)
void Execute()
void Execute(const char* params)
void Execute(Long_t& retLong)
void Execute(const char* params, Long_t& retLong)
void Execute(Double_t& retDouble)
void Execute(const char* params, Double_t& retDouble)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Author: Fons Rademakers 13/06/96
Last update: root/meta:$Name: $:$Id: TMethodCall.cxx,v 1.18 2003/08/22 15:13:18 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.