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

Classes

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

Functions

Bool PycArrayCheck (PyObject *obj_ptr)
 Check if the PyObject is an array object.
 
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< StringArrayCopyStr_toArray (const IPosition &shape, void *data, size_t slen)
 
Array< StringArrayCopyUnicode_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 >
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<>
Bool casacore::python::numpy::getScalar ( const ValueHolder & vh)
inline

Definition at line 64 of file PycArrayNP.h.

◆ getScalar() [3/16]

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

Definition at line 66 of file PycArrayNP.h.

◆ getScalar() [4/16]

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

Definition at line 68 of file PycArrayNP.h.

References casacore::ValueHolder::asuChar().

◆ getScalar() [5/16]

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

Definition at line 70 of file PycArrayNP.h.

◆ getScalar() [6/16]

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

Definition at line 72 of file PycArrayNP.h.

◆ getScalar() [7/16]

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

Definition at line 74 of file PycArrayNP.h.

◆ getScalar() [8/16]

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

Definition at line 76 of file PycArrayNP.h.

References casacore::ValueHolder::asuInt().

◆ getScalar() [9/16]

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

Definition at line 78 of file PycArrayNP.h.

References casacore::ValueHolder::asInt().

◆ getScalar() [10/16]

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

Definition at line 80 of file PycArrayNP.h.

◆ getScalar() [11/16]

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

Definition at line 82 of file PycArrayNP.h.

◆ getScalar() [12/16]

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

Definition at line 84 of file PycArrayNP.h.

References casacore::ValueHolder::asuInt().

◆ getScalar() [13/16]

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

Definition at line 86 of file PycArrayNP.h.

References casacore::ValueHolder::asFloat().

◆ getScalar() [14/16]

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

Definition at line 88 of file PycArrayNP.h.

References casacore::ValueHolder::asDouble().

◆ getScalar() [15/16]

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

Definition at line 90 of file PycArrayNP.h.

References casacore::ValueHolder::asComplex().

◆ getScalar() [16/16]

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

Definition at line 92 of file PycArrayNP.h.

References casacore::ValueHolder::asDComplex().

◆ 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)

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.