Classes | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
eigenpy::Register Struct Reference

Structure collecting all the types registers in Numpy via EigenPy. More...

#include <register.hpp>

Classes

struct  Compare_PyTypeObject
 
struct  Compare_TypeInfo
 

Static Public Member Functions

template<typename Scalar >
static PyArray_Descr * getPyArrayDescr ()
 
static PyArray_Descr * getPyArrayDescr (PyTypeObject *py_type_ptr)
 
template<typename Scalar >
static PyArray_Descr * getPyArrayDescrFromScalarType ()
 
static PyArray_Descr * getPyArrayDescrFromTypeNum (const int type_num)
 
template<typename Scalar >
static PyTypeObject * getPyType ()
 
template<typename Scalar >
static int getTypeCode ()
 
static int getTypeCode (PyTypeObject *py_type_ptr)
 
static Registerinstance ()
 
template<typename Scalar >
static bool isRegistered ()
 
static bool isRegistered (PyTypeObject *py_type_ptr)
 
static int registerNewType (PyTypeObject *py_type_ptr, const std::type_info *type_info_ptr, const int type_size, const int alignment, PyArray_GetItemFunc *getitem, PyArray_SetItemFunc *setitem, PyArray_NonzeroFunc *nonzero, PyArray_CopySwapFunc *copyswap, PyArray_CopySwapNFunc *copyswapn, PyArray_DotFunc *dotfunc, PyArray_FillFunc *fill, PyArray_FillWithScalarFunc *fillwithscalar)
 

Private Types

typedef std::map< PyTypeObject *, int, Compare_PyTypeObjectMapCode
 
typedef std::map< PyTypeObject *, PyArray_Descr *, Compare_PyTypeObjectMapDescr
 
typedef std::map< const std::type_info *, PyTypeObject *, Compare_TypeInfoMapInfo
 

Private Member Functions

 Register ()
 

Private Attributes

MapCode py_array_code_bindings
 
MapDescr py_array_descr_bindings
 
MapInfo type_to_py_type_bindings
 

Detailed Description

Structure collecting all the types registers in Numpy via EigenPy.

Definition at line 20 of file register.hpp.

Member Typedef Documentation

◆ MapCode

typedef std::map<PyTypeObject *, int, Compare_PyTypeObject> eigenpy::Register::MapCode
private

Definition at line 131 of file register.hpp.

◆ MapDescr

typedef std::map<PyTypeObject *, PyArray_Descr *, Compare_PyTypeObject> eigenpy::Register::MapDescr
private

Definition at line 128 of file register.hpp.

◆ MapInfo

typedef std::map<const std::type_info *, PyTypeObject *, Compare_TypeInfo> eigenpy::Register::MapInfo
private

Definition at line 124 of file register.hpp.

Constructor & Destructor Documentation

◆ Register()

eigenpy::Register::Register ( )
inlineprivate

Definition at line 109 of file register.hpp.

Member Function Documentation

◆ getPyArrayDescr() [1/2]

template<typename Scalar >
static PyArray_Descr* eigenpy::Register::getPyArrayDescr ( )
inlinestatic

Definition at line 73 of file register.hpp.

◆ getPyArrayDescr() [2/2]

PyArray_Descr * eigenpy::Register::getPyArrayDescr ( PyTypeObject *  py_type_ptr)
static

Definition at line 9 of file register.cpp.

◆ getPyArrayDescrFromScalarType()

template<typename Scalar >
static PyArray_Descr* eigenpy::Register::getPyArrayDescrFromScalarType ( )
inlinestatic

Definition at line 26 of file register.hpp.

◆ getPyArrayDescrFromTypeNum()

PyArray_Descr * eigenpy::Register::getPyArrayDescrFromTypeNum ( const int  type_num)
static

Definition at line 17 of file register.cpp.

◆ getPyType()

template<typename Scalar >
static PyTypeObject* eigenpy::Register::getPyType ( )
inlinestatic

Definition at line 52 of file register.hpp.

◆ getTypeCode() [1/2]

template<typename Scalar >
static int eigenpy::Register::getTypeCode ( )
inlinestatic

Definition at line 82 of file register.hpp.

◆ getTypeCode() [2/2]

int eigenpy::Register::getTypeCode ( PyTypeObject *  py_type_ptr)
static

Definition at line 35 of file register.cpp.

◆ instance()

Register & eigenpy::Register::instance ( )
static

Definition at line 114 of file register.cpp.

◆ isRegistered() [1/2]

template<typename Scalar >
static bool eigenpy::Register::isRegistered ( )
inlinestatic

Definition at line 43 of file register.hpp.

◆ isRegistered() [2/2]

bool eigenpy::Register::isRegistered ( PyTypeObject *  py_type_ptr)
static

Definition at line 28 of file register.cpp.

◆ registerNewType()

int eigenpy::Register::registerNewType ( PyTypeObject *  py_type_ptr,
const std::type_info *  type_info_ptr,
const int  type_size,
const int  alignment,
PyArray_GetItemFunc *  getitem,
PyArray_SetItemFunc *  setitem,
PyArray_NonzeroFunc *  nonzero,
PyArray_CopySwapFunc *  copyswap,
PyArray_CopySwapNFunc *  copyswapn,
PyArray_DotFunc *  dotfunc,
PyArray_FillFunc *  fill,
PyArray_FillWithScalarFunc *  fillwithscalar 
)
static

Definition at line 43 of file register.cpp.

Member Data Documentation

◆ py_array_code_bindings

MapCode eigenpy::Register::py_array_code_bindings
private

Definition at line 132 of file register.hpp.

◆ py_array_descr_bindings

MapDescr eigenpy::Register::py_array_descr_bindings
private

Definition at line 129 of file register.hpp.

◆ type_to_py_type_bindings

MapInfo eigenpy::Register::type_to_py_type_bindings
private

Definition at line 125 of file register.hpp.


The documentation for this struct was generated from the following files:


eigenpy
Author(s): Justin Carpentier, Nicolas Mansard
autogenerated on Sat Nov 2 2024 02:14:45