|
PLearn 0.1
|
#include <PythonObjectWrapper.h>
Static Public Member Functions | |
| static double | convert (PyObject *, bool print_traceback) |
Definition at line 302 of file PythonObjectWrapper.h.
| double PLearn::ConvertFromPyObject< double >::convert | ( | PyObject * | pyobj, |
| bool | print_traceback | ||
| ) | [static] |
Definition at line 110 of file PythonObjectWrapper.cc.
References PLASSERT, and PLearn::PLPythonConversionError().
{
PLASSERT( pyobj );
if(PyFloat_Check(pyobj))
return PyFloat_AS_DOUBLE(pyobj);
if(PyLong_Check(pyobj))
return PyLong_AsDouble(pyobj);
if(PyInt_Check(pyobj))
return (double)PyInt_AS_LONG(pyobj);
if(PyArray_CheckScalar(pyobj))
{
double ret= 0.;
PyArray_CastScalarToCtype(pyobj, &ret, PyArray_DescrFromType(NPY_DOUBLE));
return ret;
}
PLPythonConversionError("ConvertFromPyObject<double>", pyobj,
print_traceback);
return 0;//shut up compiler
}

1.7.4