add callback and inout tests
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6281 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
6b9fdc6c86
commit
9ae33f3c4d
5 changed files with 171 additions and 1 deletions
43
SWIG/Examples/test-suite/python/inout.i
Normal file
43
SWIG/Examples/test-suite/python/inout.i
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
%module inout
|
||||
|
||||
%include "typemaps.i"
|
||||
%include "std_pair.i"
|
||||
|
||||
%{
|
||||
inline void AddOne3(double* a, double* b, double* c) {
|
||||
*a += 1;
|
||||
*b += 1;
|
||||
*c += 1;
|
||||
}
|
||||
|
||||
inline void AddOne1(double* a) {
|
||||
*a += 1;
|
||||
}
|
||||
|
||||
inline void AddOne1p(std::pair<double, double>* p) {
|
||||
p->first += 1;
|
||||
p->second += 1;
|
||||
}
|
||||
|
||||
inline void AddOne2p(std::pair<double, double>* p,double* a) {
|
||||
*a += 1;
|
||||
p->first += 1;
|
||||
p->second += 1;
|
||||
}
|
||||
|
||||
inline void AddOne3p(double* a, std::pair<double, double>* p,double* b) {
|
||||
*a += 1;
|
||||
*b += 1;
|
||||
p->first += 1;
|
||||
p->second += 1;
|
||||
}
|
||||
|
||||
%}
|
||||
|
||||
%template() std::pair<double, double>;
|
||||
|
||||
void AddOne1(double* INOUT);
|
||||
void AddOne3(double* INOUT, double* INOUT, double* INOUT);
|
||||
void AddOne1p(std::pair<double, double>* INOUT);
|
||||
void AddOne2p(std::pair<double, double>* INOUT, double* INOUT);
|
||||
void AddOne3p(double* INOUT, std::pair<double, double>* INOUT, double* INOUT);
|
||||
Loading…
Add table
Add a link
Reference in a new issue