/usr/include/openturns/swig/PolygonArray.i is in libopenturns-dev 1.7-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | // SWIG file PolygonArray.i
%{
#include "PolygonArray.hxx"
namespace OT {
template <>
struct traitsPythonType<OT::Polygon>
{
typedef _PyObject_ Type;
};
template <>
inline
bool
canConvert< _PyObject_, OT::Polygon >(PyObject * pyObj)
{
void * ptr = 0;
if (SWIG_IsOK(SWIG_ConvertPtr( pyObj, &ptr, SWIG_TypeQuery("OT::Polygon *"), 0 ))) {
OT::Polygon * p_it = reinterpret_cast< OT::Polygon * >( ptr );
return p_it != NULL;
}
return false;
}
template <>
inline
OT::Polygon
convert< _PyObject_, OT::Polygon >(PyObject * pyObj)
{
void * ptr = 0;
if (SWIG_IsOK(SWIG_ConvertPtr( pyObj, &ptr, SWIG_TypeQuery("OT::Polygon *"), 0))) {
OT::Polygon * p_it = reinterpret_cast< OT::Polygon * >( ptr );
return *p_it;
}
else {
throw OT::InvalidArgumentException(HERE) << "Object passed as argument is not convertible to a Polygon";
}
return OT::Polygon();
}
} // namespace OT
%}
%template(PolygonCollection) OT::Collection<OT::Polygon>;
%typemap(in) const PolygonCollection & {
if (SWIG_IsOK(SWIG_ConvertPtr($input, (void **) &$1, $1_descriptor, 0))) {
// From interface class, ok
} else {
try {
$1 = OT::buildCollectionFromPySequence< OT::Polygon >( $input );
} catch (OT::InvalidArgumentException & ex) {
SWIG_exception(SWIG_TypeError, "Object passed as argument is not convertible to a collection of Polygon");
}
}
}
%typemap(typecheck,precedence=SWIG_TYPECHECK_POINTER) const PolygonCollection & {
$1 = SWIG_IsOK(SWIG_ConvertPtr($input, NULL, $1_descriptor, 0))
|| OT::canConvertCollectionObjectFromPySequence< OT::Polygon >( $input );
}
%apply const PolygonCollection & { const OT::PolygonArray::PolygonCollection & };
%include PolygonArray_doc.i
%include PolygonArray.hxx
namespace OT { %extend PolygonArray { PolygonArray(const PolygonArray & other) { return new OT::PolygonArray(other); } } }
|