μHAL (v2.8.17)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
buffer_info Struct Reference

Information record describing a Python buffer object. More...

#include </builds/ipbus/ipbus-software/uhal/python/pybind11-python2/include/pybind11/buffer_info.h>

Classes

struct  private_ctr_tag
 

Public Member Functions

 buffer_info ()=default
 
 buffer_info (void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, detail::any_container< ssize_t > shape_in, detail::any_container< ssize_t > strides_in, bool readonly=false)
 
template<typename T >
 buffer_info (T *ptr, detail::any_container< ssize_t > shape_in, detail::any_container< ssize_t > strides_in, bool readonly=false)
 
 buffer_info (void *ptr, ssize_t itemsize, const std::string &format, ssize_t size, bool readonly=false)
 
template<typename T >
 buffer_info (T *ptr, ssize_t size, bool readonly=false)
 
template<typename T >
 buffer_info (const T *ptr, ssize_t size, bool readonly=true)
 
 buffer_info (Py_buffer *view, bool ownview=true)
 
 buffer_info (const buffer_info &)=delete
 
buffer_infooperator= (const buffer_info &)=delete
 
 buffer_info (buffer_info &&other) noexcept
 
buffer_infooperator= (buffer_info &&rhs) noexcept
 
 ~buffer_info ()
 
Py_buffer * view () const
 
Py_buffer *& view ()
 
 buffer_info ()=default
 
 buffer_info (void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, detail::any_container< ssize_t > shape_in, detail::any_container< ssize_t > strides_in, bool readonly=false)
 
template<typename T >
 buffer_info (T *ptr, detail::any_container< ssize_t > shape_in, detail::any_container< ssize_t > strides_in, bool readonly=false)
 
 buffer_info (void *ptr, ssize_t itemsize, const std::string &format, ssize_t size, bool readonly=false)
 
template<typename T >
 buffer_info (T *ptr, ssize_t size, bool readonly=false)
 
template<typename T >
 buffer_info (const T *ptr, ssize_t size, bool readonly=true)
 
 buffer_info (Py_buffer *view, bool ownview=true)
 
 buffer_info (const buffer_info &)=delete
 
buffer_infooperator= (const buffer_info &)=delete
 
 buffer_info (buffer_info &&other) noexcept
 
buffer_infooperator= (buffer_info &&rhs) noexcept
 
 ~buffer_info ()
 
Py_buffer * view () const
 
Py_buffer *& view ()
 

Public Attributes

void * ptr = nullptr
 
ssize_t itemsize = 0
 
ssize_t size = 0
 
std::string format
 
ssize_t ndim = 0
 
std::vector< ssize_tshape
 
std::vector< ssize_tstrides
 
bool readonly = false
 

Private Member Functions

 buffer_info (private_ctr_tag, void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, detail::any_container< ssize_t > &&shape_in, detail::any_container< ssize_t > &&strides_in, bool readonly)
 
 buffer_info (private_ctr_tag, void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, detail::any_container< ssize_t > &&shape_in, detail::any_container< ssize_t > &&strides_in, bool readonly)
 

Private Attributes

Py_buffer * m_view = nullptr
 
bool ownview = false
 

Detailed Description

Information record describing a Python buffer object.

Definition at line 43 of file buffer_info.h.

Constructor & Destructor Documentation

◆ buffer_info() [1/20]

buffer_info::buffer_info ( )
default

◆ buffer_info() [2/20]

buffer_info::buffer_info ( void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  ndim,
detail::any_container< ssize_t shape_in,
detail::any_container< ssize_t strides_in,
bool  readonly = false 
)
inline

Definition at line 57 of file buffer_info.h.

References pybind11_fail().

◆ buffer_info() [3/20]

template<typename T >
buffer_info::buffer_info ( T *  ptr,
detail::any_container< ssize_t shape_in,
detail::any_container< ssize_t strides_in,
bool  readonly = false 
)
inline

Definition at line 75 of file buffer_info.h.

◆ buffer_info() [4/20]

buffer_info::buffer_info ( void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  size,
bool  readonly = false 
)
inline

Definition at line 88 of file buffer_info.h.

◆ buffer_info() [5/20]

template<typename T >
buffer_info::buffer_info ( T *  ptr,
ssize_t  size,
bool  readonly = false 
)
inline

Definition at line 96 of file buffer_info.h.

◆ buffer_info() [6/20]

template<typename T >
buffer_info::buffer_info ( const T *  ptr,
ssize_t  size,
bool  readonly = true 
)
inline

Definition at line 100 of file buffer_info.h.

◆ buffer_info() [7/20]

buffer_info::buffer_info ( Py_buffer *  view,
bool  ownview = true 
)
inlineexplicit

Definition at line 104 of file buffer_info.h.

◆ buffer_info() [8/20]

buffer_info::buffer_info ( const buffer_info )
delete

◆ buffer_info() [9/20]

buffer_info::buffer_info ( buffer_info &&  other)
inlinenoexcept

Definition at line 127 of file buffer_info.h.

◆ ~buffer_info() [1/2]

buffer_info::~buffer_info ( )
inline

Definition at line 143 of file buffer_info.h.

◆ buffer_info() [10/20]

buffer_info::buffer_info ( private_ctr_tag  ,
void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  ndim,
detail::any_container< ssize_t > &&  shape_in,
detail::any_container< ssize_t > &&  strides_in,
bool  readonly 
)
inlineprivate

Definition at line 156 of file buffer_info.h.

◆ buffer_info() [11/20]

buffer_info::buffer_info ( )
default

◆ buffer_info() [12/20]

buffer_info::buffer_info ( void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  ndim,
detail::any_container< ssize_t shape_in,
detail::any_container< ssize_t strides_in,
bool  readonly = false 
)
inline

Definition at line 57 of file buffer_info.h.

References ndim, pybind11_fail(), shape, size, and strides.

◆ buffer_info() [13/20]

template<typename T >
buffer_info::buffer_info ( T *  ptr,
detail::any_container< ssize_t shape_in,
detail::any_container< ssize_t strides_in,
bool  readonly = false 
)
inline

Definition at line 75 of file buffer_info.h.

◆ buffer_info() [14/20]

buffer_info::buffer_info ( void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  size,
bool  readonly = false 
)
inline

Definition at line 88 of file buffer_info.h.

References size.

◆ buffer_info() [15/20]

template<typename T >
buffer_info::buffer_info ( T *  ptr,
ssize_t  size,
bool  readonly = false 
)
inline

Definition at line 96 of file buffer_info.h.

◆ buffer_info() [16/20]

template<typename T >
buffer_info::buffer_info ( const T *  ptr,
ssize_t  size,
bool  readonly = true 
)
inline

Definition at line 100 of file buffer_info.h.

◆ buffer_info() [17/20]

buffer_info::buffer_info ( Py_buffer *  view,
bool  ownview = true 
)
inlineexplicit

Definition at line 104 of file buffer_info.h.

References view().

◆ buffer_info() [18/20]

buffer_info::buffer_info ( const buffer_info )
delete

◆ buffer_info() [19/20]

buffer_info::buffer_info ( buffer_info &&  other)
inlinenoexcept

Definition at line 127 of file buffer_info.h.

◆ ~buffer_info() [2/2]

buffer_info::~buffer_info ( )
inline

Definition at line 143 of file buffer_info.h.

◆ buffer_info() [20/20]

buffer_info::buffer_info ( private_ctr_tag  ,
void *  ptr,
ssize_t  itemsize,
const std::string &  format,
ssize_t  ndim,
detail::any_container< ssize_t > &&  shape_in,
detail::any_container< ssize_t > &&  strides_in,
bool  readonly 
)
inlineprivate

Definition at line 156 of file buffer_info.h.

Member Function Documentation

◆ operator=() [1/4]

buffer_info & buffer_info::operator= ( buffer_info &&  rhs)
inlinenoexcept

Definition at line 129 of file buffer_info.h.

References ptr.

◆ operator=() [2/4]

buffer_info & buffer_info::operator= ( buffer_info &&  rhs)
inlinenoexcept

Definition at line 129 of file buffer_info.h.

References ptr.

◆ operator=() [3/4]

buffer_info & buffer_info::operator= ( const buffer_info )
delete

◆ operator=() [4/4]

buffer_info & buffer_info::operator= ( const buffer_info )
delete

◆ view() [1/4]

Py_buffer *& buffer_info::view ( )
inline

Definition at line 151 of file buffer_info.h.

◆ view() [2/4]

Py_buffer *& buffer_info::view ( )
inline

Definition at line 151 of file buffer_info.h.

◆ view() [3/4]

Py_buffer * buffer_info::view ( ) const
inline

Definition at line 150 of file buffer_info.h.

Referenced by buffer_info().

◆ view() [4/4]

Py_buffer * buffer_info::view ( ) const
inline

Definition at line 150 of file buffer_info.h.

Member Data Documentation

◆ format

std::string buffer_info::format

◆ itemsize

ssize_t buffer_info::itemsize = 0

◆ m_view

Py_buffer * buffer_info::m_view = nullptr
private

Definition at line 167 of file buffer_info.h.

◆ ndim

ssize_t buffer_info::ndim = 0

Definition at line 49 of file buffer_info.h.

Referenced by broadcast(), buffer_info(), and pybind11_getbuffer().

◆ ownview

bool buffer_info::ownview = false
private

Definition at line 168 of file buffer_info.h.

◆ ptr

void * buffer_info::ptr = nullptr

Definition at line 44 of file buffer_info.h.

Referenced by operator=(), and pybind11_getbuffer().

◆ readonly

bool buffer_info::readonly = false

Definition at line 53 of file buffer_info.h.

Referenced by pybind11_getbuffer().

◆ shape

std::vector< ssize_t > buffer_info::shape

Definition at line 50 of file buffer_info.h.

Referenced by buffer_info(), and pybind11_getbuffer().

◆ size

ssize_t buffer_info::size = 0

Definition at line 46 of file buffer_info.h.

Referenced by buffer_info().

◆ strides

std::vector< ssize_t > buffer_info::strides

Definition at line 51 of file buffer_info.h.

Referenced by buffer_info(), and pybind11_getbuffer().


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