Logo ROOT   6.08/07
Reference Guide
PyCallable.h
Go to the documentation of this file.
1 // @(#)root/pyroot:$Id$
2 // Author: Wim Lavrijsen, Aug 2004
3 
4 #ifndef PYROOT_PYCALLABLE_H
5 #define PYROOT_PYCALLABLE_H
6 
7 // Bindings
8 #include "TCallContext.h"
9 
10 
11 namespace PyROOT {
12 
13  class ObjectProxy;
14 
15  class PyCallable {
16  public:
17  virtual ~PyCallable() {}
18 
19  public:
20  virtual PyObject* GetSignature() = 0;
21  virtual PyObject* GetPrototype() = 0;
22  virtual PyObject* GetDocString() { return GetPrototype(); }
23 
24  virtual Int_t GetPriority() = 0;
25 
26  virtual Int_t GetMaxArgs() = 0;
27  virtual PyObject* GetCoVarNames() = 0;
28  virtual PyObject* GetArgDefault( Int_t /* iarg */ ) = 0;
29 
30  virtual PyObject* GetScopeProxy() = 0;
31 
32  virtual PyCallable* Clone() = 0;
33 
34  public:
35  virtual PyObject* Call(
36  ObjectProxy*& self, PyObject* args, PyObject* kwds, TCallContext* ctxt = 0 ) = 0;
37  };
38 
39 } // namespace PyROOT
40 
41 #endif // !PYROOT_PYCALLABLE_H
virtual Int_t GetPriority()=0
virtual PyCallable * Clone()=0
virtual Int_t GetMaxArgs()=0
int Int_t
Definition: RtypesCore.h:41
virtual PyObject * GetSignature()=0
virtual PyObject * GetPrototype()=0
virtual PyObject * GetScopeProxy()=0
virtual PyObject * GetArgDefault(Int_t)=0
virtual PyObject * GetCoVarNames()=0
virtual PyObject * GetDocString()
Definition: PyCallable.h:22
virtual PyObject * Call(ObjectProxy *&self, PyObject *args, PyObject *kwds, TCallContext *ctxt=0)=0
virtual ~PyCallable()
Definition: PyCallable.h:17
_object PyObject
Definition: TPyArg.h:22