BoB robotics
The Brains on Board robotics library
pybind11::array_t< T, ExtraFlags > Class Template Reference
Inheritance diagram for pybind11::array_t< T, ExtraFlags >:
pybind11::array pybind11::buffer pybind11::object pybind11::handle pybind11::detail::object_api< handle > pybind11::detail::pyobject_tag

Public Types

using value_type = T
 
- Public Types inherited from pybind11::array
using ShapeContainer = detail::any_container< ssize_t >
 
using StridesContainer = detail::any_container< ssize_t >
 

Public Member Functions

 array_t (handle h, borrowed_t)
 
 array_t (handle h, stolen_t)
 
 __attribute__ ((deprecated("Use array_t<T>::ensure() instead"))) array_t(handle h
 
bool Dims mutable_unchecked () &
 
template<ssize_t Dims = -1>
detail::unchecked_reference< T, Dims > unchecked () const &
 
- Public Member Functions inherited from pybind11::array
 __attribute__ ((deprecated("Use reinterpret_borrow<""array"">() or reinterpret_steal<""array"">()"))) array(handle h
 
 array (const pybind11::dtype &dt, ShapeContainer shape, StridesContainer strides, const void *ptr=nullptr, handle base=handle())
 
 array (const pybind11::dtype &dt, ShapeContainer shape, const void *ptr=nullptr, handle base=handle())
 
template<typename T , typename = detail::enable_if_t<std::is_integral<T>::value && !std::is_same<bool, T>::value>>
 array (const pybind11::dtype &dt, T count, const void *ptr=nullptr, handle base=handle())
 
template<typename T >
 array (ShapeContainer shape, StridesContainer strides, const T *ptr, handle base=handle())
 
template<typename T >
 array (ShapeContainer shape, const T *ptr, handle base=handle())
 
template<typename T >
 array (ssize_t count, const T *ptr, handle base=handle())
 
 array (const buffer_info &info, handle base=handle())
 
pybind11::dtype dtype () const
 Array descriptor (dtype)
 
ssize_t size () const
 Total number of elements.
 
ssize_t itemsize () const
 Byte size of a single element.
 
ssize_t nbytes () const
 Total number of bytes.
 
ssize_t ndim () const
 Number of dimensions.
 
object base () const
 Base object.
 
const ssize_t * shape () const
 Dimensions of the array.
 
ssize_t shape (ssize_t dim) const
 Dimension along a given axis.
 
const ssize_t * strides () const
 Strides of the array.
 
ssize_t strides (ssize_t dim) const
 Stride along a given axis.
 
int flags () const
 Return the NumPy array flags.
 
bool writeable () const
 If set, the array is writeable (otherwise the buffer is read-only)
 
bool owndata () const
 If set, the array owns the data (will be freed when the array is deleted)
 
template<typename... Ix>
const void * data (Ix... index) const
 
template<typename... Ix>
void * mutable_data (Ix... index)
 
template<typename... Ix>
ssize_t offset_at (Ix... index) const
 
ssize_t offset_at () const
 
template<typename... Ix>
ssize_t index_at (Ix... index) const
 
template<typename T , ssize_t Dims = -1>
detail::unchecked_mutable_reference< T, Dims > mutable_unchecked () &
 
template<typename T , ssize_t Dims = -1>
detail::unchecked_reference< T, Dims > unchecked () const &
 
array squeeze ()
 Return a new view with all of the dimensions of length 1 removed.
 
void resize (ShapeContainer new_shape, bool refcheck=true)
 
array reshape (ShapeContainer new_shape)
 Optional order parameter omitted, to be added as needed.
 
array view (const std::string &dtype)
 
- Public Member Functions inherited from pybind11::buffer
 __attribute__ ((deprecated("Use reinterpret_borrow<""buffer"">() or reinterpret_steal<""buffer"">()"))) buffer(handle h
 
- Public Member Functions inherited from pybind11::object
 __attribute__ ((deprecated("Use reinterpret_borrow<object>() or reinterpret_steal<object>()"))) object(handle h
 
 object (const object &o)
 Copy constructor; always increases the reference count.
 
 object (object &&other) noexcept
 Move constructor; steals the object from other and preserves its reference count.
 
 ~object ()
 Destructor; automatically calls handle::dec_ref()
 
handle release ()
 
objectoperator= (const object &other)
 
objectoperator= (object &&other) noexcept
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
 object (handle h, borrowed_t)
 
 object (handle h, stolen_t)
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
template<>
void cast () const &
 
template<>
void cast () &&
 
- Public Member Functions inherited from pybind11::handle
 handle ()=default
 The default constructor creates a handle with a nullptr-valued pointer.
 
 handle (PyObject *ptr)
 Creates a handle from the given raw Python object pointer.
 
PyObject * ptr () const
 Return the underlying PyObject * pointer.
 
PyObject *& ptr ()
 
const handleinc_ref () const &
 
const handledec_ref () const &
 
template<typename T >
cast () const
 
 operator bool () const
 Return true when the handle wraps a valid Python object.
 
 __attribute__ ((deprecated("Use obj1.is(obj2) instead"))) bool operator
 
template<>
void cast () const
 
- Public Member Functions inherited from pybind11::detail::object_api< handle >
iterator begin () const
 
iterator end () const
 Return a sentinel which ends iteration.
 
item_accessor operator[] (handle key) const
 
item_accessor operator[] (const char *key) const
 See above (the only difference is that they key is provided as a string literal)
 
obj_attr_accessor attr (handle key) const
 
str_attr_accessor attr (const char *key) const
 See above (the only difference is that they key is provided as a string literal)
 
args_proxy operator* () const
 
object operator* (object_api const &other) const
 
bool contains (T &&item) const
 Check if the given item is contained within this object, i.e. item in obj.
 
object operator() (Args &&...args) const
 
 __attribute__ ((deprecated("call(...) was deprecated in favor of operator()(...)"))) object call(Args &&... args) const
 
bool is (object_api const &other) const
 Equivalent to obj is other in Python.
 
bool is_none () const
 Equivalent to obj is None in Python.
 
bool equal (object_api const &other) const
 Equivalent to obj == other in Python.
 
bool not_equal (object_api const &other) const
 
bool operator< (object_api const &other) const
 
bool operator<= (object_api const &other) const
 
bool operator> (object_api const &other) const
 
bool operator>= (object_api const &other) const
 
object operator- () const
 
object operator- (object_api const &other) const
 
object operator~ () const
 
object operator+ (object_api const &other) const
 
object operator+= (object_api const &other) const
 
object operator-= (object_api const &other) const
 
object operator*= (object_api const &other) const
 
object operator/ (object_api const &other) const
 
object operator/= (object_api const &other) const
 
object operator| (object_api const &other) const
 
object operator|= (object_api const &other) const
 
object operator& (object_api const &other) const
 
object operator&= (object_api const &other) const
 
object operator^ (object_api const &other) const
 
object operator^= (object_api const &other) const
 
object operator<< (object_api const &other) const
 
object operator<<= (object_api const &other) const
 
object operator>> (object_api const &other) const
 
object operator>>= (object_api const &other) const
 
__attribute__((deprecated("Use py::str(obj) instead"))) pybind11 str_attr_accessor doc () const
 Get or set the object's docstring, i.e. obj.__doc__.
 
int ref_count () const
 Return the object's current reference count.
 
handle get_type () const
 

Static Public Member Functions

static array_t ensure (handle h)
 
static bool check_ (handle h)
 
- Static Public Member Functions inherited from pybind11::array
static array ensure (handle h, int ExtraFlags=0)
 

Public Attributes

bool is_borrowed: array(raw_array_t(h.ptr())
 
bool stolen_t
 
- Public Attributes inherited from pybind11::array
bool is_borrowed: buffer (is_borrowed ? buffer (h
 
bool borrowed_t
 
- Public Attributes inherited from pybind11::buffer
bool is_borrowed: object (is_borrowed ? object (h
 
- Public Attributes inherited from pybind11::object
bool is_borrowed: handle(h) { if (is_borrowed) inc_ref()
 

Static Protected Member Functions

static PyObject * raw_array_t (PyObject *ptr)
 Create array from any object – always returns a new reference.
 
- Static Protected Member Functions inherited from pybind11::array
static PyObject * raw_array (PyObject *ptr, int ExtraFlags=0)
 Create array from any object – always returns a new reference.
 

Additional Inherited Members

- Protected Member Functions inherited from pybind11::array
void fail_dim_check (ssize_t dim, const std::string &msg) const
 
template<typename... Ix>
ssize_t byte_offset (Ix... index) const
 
void check_writeable () const
 
template<typename... Ix>
void check_dimensions (Ix... index) const
 
void check_dimensions_impl (ssize_t, const ssize_t *) const
 
template<typename... Ix>
void check_dimensions_impl (ssize_t axis, const ssize_t *shape, ssize_t i, Ix... index) const
 

Member Function Documentation

◆ ensure()

template<typename T , int ExtraFlags = array::forcecast>
static array_t pybind11::array_t< T, ExtraFlags >::ensure ( handle  h)
inlinestatic

Ensure that the argument is a NumPy array of the correct dtype (and if not, try to convert it). In case of an error, nullptr is returned and the Python error is cleared.

◆ unchecked()

template<typename T , int ExtraFlags = array::forcecast>
template<ssize_t Dims = -1>
detail::unchecked_reference< T, Dims > pybind11::array_t< T, ExtraFlags >::unchecked ( ) const &
inline

Returns a proxy object that provides const access to the array's data without bounds or dimensionality checking. Unlike unchecked(), this does not require that the underlying array have the writable flag. Use with care: the array must not be destroyed or reshaped for the duration of the returned object, and the caller must take care not to access invalid dimensions or dimension indices.


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