ndarray
NumPy-friendly multidimensional arrays in C++
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
ndarray::detail::Core< 0 > Class Reference

Public Types

typedef boost::mpl::int_< 0 > ND
 
typedef boost::intrusive_ptr< CorePtr
 
typedef boost::intrusive_ptr< Core const > ConstPtr
 

Public Member Functions

Ptr copy () const
 
Size getSize () const
 
Offset getStride () const
 
template<int M>
Offset computeOffset (Vector< Size, M > const &index) const
 Recursively compute the offset to an element.
 
Manager::Ptr getManager () const
 Return the Manager that determines the lifetime of the array data.
 
void setManager (Manager::Ptr const &manager)
 Set the Manager that determines the lifetime of the array data.
 
template<int M>
void fillShape (Vector< Size, M > const &shape) const
 Recursively fill a shape vector.
 
template<int M>
void fillStrides (Vector< Offset, M > const &strides) const
 Recursively fill a strides vector.
 
Size getNumElements () const
 Recursively determine the total number of elements.
 
int getRC () const
 Return the reference count (for debugging purposes).
 
bool isUnique () const
 Return true if the Core and Manager reference counts are 1 and the manager is unique.
 

Protected Member Functions

template<int M>
 Core (Vector< Size, M > const &shape, Vector< Offset, M > const &strides, Manager::Ptr const &manager)
 
template<int M>
 Core (Vector< Size, M > const &shape, Manager::Ptr const &manager)
 
template<int M>
 Core (Vector< Size, M > const &shape, Offset stride, Manager::Ptr const &manager)
 
 Core (Manager::Ptr const &manager)
 
 Core (Core const &other)
 

Friends

void intrusive_ptr_add_ref (Core const *core)
 
void intrusive_ptr_release (Core const *core)
 

The documentation for this class was generated from the following file: