casacore
Loading...
Searching...
No Matches
casacore::python::numpy Namespace Reference

Classes

struct  ArrayCopy
 Copy/convert the array data as needed. More...
struct  ArrayCopy< Complex >
struct  ArrayCopy< DComplex >
struct  ArrayCopy< String >
struct  array_scalar_from_python
 Struct with static functions to convert a numpy array scalar to the templated type (e.g. More...

Functions

Bool PycArrayCheck (PyObject *obj_ptr)
Bool isImported ()
 Check if the API is or can be imported.
Bool canImport ()
Bool importArray ()
void loadAPI ()
ValueHolder makeArray (PyObject *obj_ptr, Bool copyData)
 Convert the python array to a Casacore array in the ValueHolder.
Array< String > ArrayCopyStr_toArray (const IPosition &shape, void *data, size_t slen)
Array< String > ArrayCopyUnicode_toArray (const IPosition &shape, void *data, size_t slen)
template<typename T>
boost::python::object makePyArrayObject (casacore::Array< T > const &arr)
 Convert a Casacore array to a Python array object.
bool PycArrayScalarCheck (PyObject *obj, int &type)
 Check if it is an array scalar object.
DataType PycArrayScalarType (PyObject *obj_ptr)
 Get the data type of the array scalar object.
ValueHolder makeScalar (PyObject *obj, int type)
 Make a scalar object.
void register_convert_arrayscalars ()
 Register all array scalar converters.
template<typename T>
T getScalar (const ValueHolder &)
 Templated helper function to get a value from a ValueHolder.
template<>
Bool getScalar (const ValueHolder &vh)
template<>
Char getScalar (const ValueHolder &vh)
template<>
uChar getScalar (const ValueHolder &vh)
template<>
Short getScalar (const ValueHolder &vh)
template<>
uShort getScalar (const ValueHolder &vh)
template<>
Int getScalar (const ValueHolder &vh)
template<>
uInt getScalar (const ValueHolder &vh)
template<>
Long getScalar (const ValueHolder &vh)
template<>
uLong getScalar (const ValueHolder &vh)
template<>
Int64 getScalar (const ValueHolder &vh)
template<>
uInt64 getScalar (const ValueHolder &vh)
template<>
Float getScalar (const ValueHolder &vh)
template<>
Double getScalar (const ValueHolder &vh)
template<>
Complex getScalar (const ValueHolder &vh)
template<>
DComplex getScalar (const ValueHolder &vh)

Function Documentation

◆ ArrayCopyStr_toArray()

Array< String > casacore::python::numpy::ArrayCopyStr_toArray ( const IPosition & shape,
void * data,
size_t slen )

◆ ArrayCopyUnicode_toArray()

Array< String > casacore::python::numpy::ArrayCopyUnicode_toArray ( const IPosition & shape,
void * data,
size_t slen )

◆ canImport()

Bool casacore::python::numpy::canImport ( )
inline

Definition at line 33 of file PycArrayNP.h.

◆ getScalar() [1/16]

template<typename T>
T casacore::python::numpy::getScalar ( const ValueHolder & )

Templated helper function to get a value from a ValueHolder.

Specialize for each type supported.

Referenced by casacore::python::numpy::array_scalar_from_python< T >::construct().

◆ getScalar() [2/16]

template<>
DComplex casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 122 of file PycArrayNP.h.

References casacore::ValueHolder::asDComplex().

◆ getScalar() [3/16]

template<>
Complex casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 118 of file PycArrayNP.h.

References casacore::ValueHolder::asComplex().

◆ getScalar() [4/16]

template<>
Double casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 114 of file PycArrayNP.h.

References casacore::ValueHolder::asDouble().

◆ getScalar() [5/16]

template<>
Float casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 110 of file PycArrayNP.h.

References casacore::ValueHolder::asFloat().

◆ getScalar() [6/16]

template<>
uInt64 casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 106 of file PycArrayNP.h.

References casacore::ValueHolder::asuInt().

◆ getScalar() [7/16]

template<>
Int64 casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 102 of file PycArrayNP.h.

References casacore::ValueHolder::asInt().

◆ getScalar() [8/16]

template<>
uLong casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 98 of file PycArrayNP.h.

References casacore::ValueHolder::asuInt().

◆ getScalar() [9/16]

template<>
Long casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 94 of file PycArrayNP.h.

References casacore::ValueHolder::asInt().

◆ getScalar() [10/16]

template<>
uInt casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 90 of file PycArrayNP.h.

References casacore::ValueHolder::asuInt().

◆ getScalar() [11/16]

template<>
Int casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 86 of file PycArrayNP.h.

References casacore::ValueHolder::asInt().

◆ getScalar() [12/16]

template<>
uShort casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 82 of file PycArrayNP.h.

References casacore::ValueHolder::asuShort().

◆ getScalar() [13/16]

template<>
Short casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 78 of file PycArrayNP.h.

References casacore::ValueHolder::asShort().

◆ getScalar() [14/16]

template<>
uChar casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 74 of file PycArrayNP.h.

◆ getScalar() [15/16]

template<>
Char casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 70 of file PycArrayNP.h.

◆ getScalar() [16/16]

template<>
Bool casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 66 of file PycArrayNP.h.

References casacore::ValueHolder::asBool().

◆ importArray()

Bool casacore::python::numpy::importArray ( )

◆ isImported()

Bool casacore::python::numpy::isImported ( )

Check if the API is or can be imported.

◆ loadAPI()

void casacore::python::numpy::loadAPI ( )

◆ makeArray()

ValueHolder casacore::python::numpy::makeArray ( PyObject * obj_ptr,
Bool copyData )

Convert the python array to a Casacore array in the ValueHolder.

If copyData is True, the array data is always copied. Otherwise only if needed.

◆ makePyArrayObject()

template<typename T>
boost::python::object casacore::python::numpy::makePyArrayObject ( casacore::Array< T > const & arr)

Convert a Casacore array to a Python array object.

◆ makeScalar()

ValueHolder casacore::python::numpy::makeScalar ( PyObject * obj,
int type )

◆ PycArrayCheck()

Bool casacore::python::numpy::PycArrayCheck ( PyObject * obj_ptr)

PycArrayComH.h: Common code to convert an Array to/from a Python array

Check if the PyObject is an array object.

◆ PycArrayScalarCheck()

bool casacore::python::numpy::PycArrayScalarCheck ( PyObject * obj,
int & type )

◆ PycArrayScalarType()

DataType casacore::python::numpy::PycArrayScalarType ( PyObject * obj_ptr)

Get the data type of the array scalar object.

It returns TpBool, TpInt, TpFloat, or TpComplex. TpOther is returned if unrecognized.

◆ register_convert_arrayscalars()

void casacore::python::numpy::register_convert_arrayscalars ( )

Register all array scalar converters.