summaryrefslogtreecommitdiff
path: root/docs/examples/userguide/wrapping_CPlusPlus/rect_ptr.pyx
blob: ec4b34ab4c2459c824e6e7d939ac2589437b1641 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# distutils: language = c++

from Rectangle cimport Rectangle

cdef class PyRectangle:
    cdef Rectangle*c_rect  # hold a pointer to the C++ instance which we're wrapping

    def __cinit__(self):
        self.c_rect = new Rectangle()

    def __init__(self, int x0, int y0, int x1, int y1):
        self.c_rect.x0 = x0
        self.c_rect.y0 = y0
        self.c_rect.x1 = x1
        self.c_rect.y1 = y1

    def __dealloc__(self):
        del self.c_rect