BaseClassPy.h
Go to the documentation of this file.00001
00002
00003
00004 #ifndef BASE_BASECLASSPY_H
00005 #define BASE_BASECLASSPY_H
00006
00007 #include <Base/PyObjectBase.h>
00008 #include <Base/BaseClass.h>
00009 #include <string>
00010
00011 namespace Base
00012 {
00013
00014
00015
00016
00017
00020 class BaseExport BaseClassPy : public Base::PyObjectBase
00021 {
00022 public:
00023 static PyTypeObject Type;
00024 static PyMethodDef Methods[];
00025 static PyGetSetDef GetterSetter[];
00026 static PyParentObject Parents[];
00027 virtual PyTypeObject *GetType(void) {return &Type;};
00028 virtual PyParentObject *GetParents(void) {return Parents;}
00029
00030 public:
00031 BaseClassPy(BaseClass *pcObject, PyTypeObject *T = &Type);
00032 static PyObject *PyMake(struct _typeobject *, PyObject *, PyObject *);
00033 virtual int PyInit(PyObject* args, PyObject*k);
00034 ~BaseClassPy();
00035
00036 typedef BaseClass* PointerType ;
00037
00038 virtual PyObject *_repr(void);
00039 std::string representation(void) const;
00040
00043
00044 static PyObject * staticCallback_isDerivedFrom (PyObject *self, PyObject *args);
00046 PyObject* isDerivedFrom(PyObject *args);
00048 static PyObject * staticCallback_getAllDerivedFrom (PyObject *self, PyObject *args);
00050 PyObject* getAllDerivedFrom(PyObject *args);
00052
00053
00056
00057 static PyObject * staticCallback_getType (PyObject *self, void *closure);
00059 Py::String getType(void) const;
00061 static int staticCallback_setType (PyObject *self, PyObject *value, void *closure);
00062
00064 static PyObject * staticCallback_getModule (PyObject *self, void *closure);
00066 Py::Int getModule(void) const;
00068 static int staticCallback_setModule (PyObject *self, PyObject *value, void *closure);
00069
00071
00073 PyObject *getCustomAttributes(const char* attr) const;
00075 int setCustomAttributes(const char* attr, PyObject *obj);
00076 PyObject *_getattr(char *attr);
00077 int _setattr(char *attr, PyObject *value);
00078
00080 BaseClass *getBaseClassPtr(void) const;
00081
00084
00086 };
00087
00088 #define PARENTSBaseBaseClassPy &BaseClassPy::Type,PARENTSBasePyObjectBase
00089
00090 }
00091
00092 #endif // BASE_BASECLASSPY_H
00093
00094