1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
<?xml version="1.0"?>
<typesystem>
<!-- Templates to fix bool* parameters -->
<template name="fix_bool*">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(&ok_);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_args,bool*">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(%ARGUMENT_NAMES, &ok_);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_arg,bool*,arg">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(%1, &ok_, %3);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_bool*,arg">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(&ok_, %2);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_arg,arg,arg,arg,arg,arg,arg,bool*,arg">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(%1, %2, %3, %4, %5, %6, %7, &ok_, %9);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_arg,arg,arg,arg,arg,arg,bool*,arg">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(%1, %2, %3, %4, %5, %6, &ok_, %8);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="fix_arg,arg,arg,arg,arg,bool*,arg">
bool ok_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(%1, %2, %3, %4, %5, &ok_, %7);
%PYARG_0 = Shiboken::makeTuple(retval_, ok_);
</template>
<template name="get_slice">
%TYPE* sequence;
Py_ssize_t start, end;
Py_ssize_t len = %CPPSELF->count();
if (_i1 > len)
start = len;
else if (_i1 < 0)
start = 0;
else
start = _i1;
if (_i2 > len)
end = len;
else if (_i2 < 0)
end = 0;
else
end = _i2;
sequence = new %TYPE();
for (Py_ssize_t i = start; i < end; i++)
sequence->append(%CPPSELF->at(i));
return %CONVERTTOPYTHON[%TYPE](*sequence);
</template>
<template name="fix_args,QRectF*">
QRectF rect_;
%CPPSELF.%FUNCTION_NAME(%ARGUMENT_NAMES, &rect_);
return %CONVERTTOPYTHON[QRectF](rect_);
</template>
<template name="fix_args,QRect*">
QRect rect_;
%CPPSELF.%FUNCTION_NAME(%ARGUMENT_NAMES, &rect_);
return %CONVERTTOPYTHON[QRectF](rect_);
</template>
<template name="fix_char*">
char val_;
%RETURN_TYPE retval_ = %CPPSELF.%FUNCTION_NAME(&val_);
%PYARG_0 = PyTuple_Pack(2, %CONVERTTOPYTHON[%RETURN_TYPE](retval_), %CONVERTTOPYTHON[char](val_));
</template>
<template name="fix_int*,int*,int*,int*">
int a, b, c, d;
%CPPSELF.%FUNCTION_NAME(&a, &b, &c, &d);
%PYARG_0 = Shiboken::makeTuple(a, b, c, d);
</template>
<template name="fix_qreal*,qreal*,qreal*,qreal*">
qreal a, b, c, d;
%CPPSELF.%FUNCTION_NAME(&a, &b, &c, &d);
%PYARG_0 = Shiboken::makeTuple(a, b, c, d);
</template>
<template name="fix_int*,int*,int*,int*,int*">
int a, b, c, d, e;
%CPPSELF.%FUNCTION_NAME(&a, &b, &c, &d, &e);
%PYARG_0 = Shiboken::makeTuple(a, b, c, d, e);
</template>
<template name="fix_qreal*,qreal*,qreal*,qreal*,qreal*">
qreal a, b, c, d, e;
%CPPSELF.%FUNCTION_NAME(&a, &b, &c, &d, &e);
%PYARG_0 = Shiboken::makeTuple(a, b, c, d, e);
</template>
<template name="read_wrapper">
char _data[%2];
qint64 _size = %CPPSELF.%FUNCTION_NAME(_data, %2);
if (_size > 0)
return %CONVERTTOPYTHON[QByteArray](QByteArray(_data, _size));
else
return %CONVERTTOPYTHON[QByteArray](QByteArray());
</template>
<template name="fix_return_args,int*">
RETURNTYPE _ret;
int _arg;
_ret = %CPPSELF.%FUNCTION_NAME(%ARGUMENT_NAMES, &_arg);
%PYARG_0 = Shiboken::makeTuple(_ret, _arg);
</template>
</typesystem>
|