/tags/rel-1-3-26/SWIG/Examples/test-suite/python/template_matrix.i
Swig | 71 lines | 50 code | 21 blank | 0 comment | 0 complexity | 68fe073e8a0566884195a3fc80a38f6a MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module template_matrix
- %{
- #include <vector>
- struct pop
- {
- };
- %}
- %include "std_vector.i"
- %inline {
- namespace simuPOP
- {
- struct POP
- {
- };
- template<class _POP1, class _POP2 = POP>
- class Operator
- {
- };
- }
- }
- %template(vectorop) std::vector< simuPOP::Operator<pop> >;
- namespace simuPOP
- {
- %template(baseOperator) Operator<pop>;
- }
- #if 1
- namespace std
- {
- %template(vectori) vector<int>;
- %template(matrixi) vector< vector<int> >;
- %template(cubei) vector< vector< vector<int> > >;
- }
- %inline %{
- std::vector<int>
- passVector(const std::vector<int>& a)
- {
- return a;
- }
- std::vector< std::vector<int> >
- passMatrix(const std::vector< std::vector<int> >& a)
- {
- return a;
- }
- std::vector< std::vector< std::vector<int> > >
- passCube(const std::vector< std::vector< std::vector<int> > >& a)
- {
- return a;
- }
- %}
- #endif