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 }