23 #include "../BPy_Convert.h"
24 #include "../Iterator/BPy_Interface0DIterator.h"
63 "Class hierarchy: :class:`UnaryFunction0D` > :class:`UnaryFunction0DVectorViewShape`\n"
65 "Base class for unary functions (functors) that work on\n"
66 ":class:`Interface0DIterator` and return a list of :class:`ViewShape`\n"
69 ".. method:: __init__()\n"
71 " Default constructor.\n";
77 static const char *kwlist[] = {
nullptr};
79 if (!PyArg_ParseTupleAndKeywords(args, kwds,
"", (
char **)kwlist)) {
83 self->uf0D_vectorviewshape->
py_uf0D = (PyObject *)
self;
89 delete self->uf0D_vectorviewshape;
95 return PyUnicode_FromFormat(
96 "type: %s - address: %p", Py_TYPE(
self)->tp_name,
self->uf0D_vectorviewshape);
103 static const char *kwlist[] = {
"it",
nullptr};
106 if (!PyArg_ParseTupleAndKeywords(
111 if (
typeid(*(
self->uf0D_vectorviewshape)) ==
typeid(
UnaryFunction0D<std::vector<ViewShape *>>)) {
112 PyErr_SetString(PyExc_TypeError,
"__call__ method not properly overridden");
116 if (!PyErr_Occurred()) {
117 string class_name(Py_TYPE(
self)->tp_name);
118 PyErr_SetString(PyExc_RuntimeError, (class_name +
" __call__ method failed").c_str());
123 const unsigned int list_len =
self->uf0D_vectorviewshape->result.size();
124 PyObject *list = PyList_New(list_len);
125 for (
unsigned int i = 0; i < list_len; i++) {
126 ViewShape *
v =
self->uf0D_vectorviewshape->result[i];
136 PyVarObject_HEAD_INIT(
nullptr, 0)
"UnaryFunction0DVectorViewShape",
154 Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
PyObject * BPy_ViewShape_from_ViewShape(ViewShape &vs)
PyTypeObject GetOccludersF0D_Type
PyTypeObject Interface0DIterator_Type
PyTypeObject UnaryFunction0DVectorViewShape_Type
static PyObject * UnaryFunction0DVectorViewShape___call__(BPy_UnaryFunction0DVectorViewShape *self, PyObject *args, PyObject *kwds)
int UnaryFunction0DVectorViewShape_Init(PyObject *module)
static PyObject * UnaryFunction0DVectorViewShape___repr__(BPy_UnaryFunction0DVectorViewShape *self)
static char UnaryFunction0DVectorViewShape___doc__[]
static void UnaryFunction0DVectorViewShape___dealloc__(BPy_UnaryFunction0DVectorViewShape *self)
static int UnaryFunction0DVectorViewShape___init__(BPy_UnaryFunction0DVectorViewShape *self, PyObject *args, PyObject *kwds)
PyTypeObject UnaryFunction0D_Type
static struct PyModuleDef module
ATTR_WARN_UNUSED_RESULT const BMVert * v