cppyabm  1.0.17
An agent-based library to integrate C++ and Python
Classes | Public Member Functions | Public Attributes | List of all members
buffer_info Struct Reference

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

#include <buffer_info.h>

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)
 
buffer_infooperator= (buffer_info &&rhs)
 
 ~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
 

Detailed Description

Information record describing a Python buffer object.

Definition at line 40 of file buffer_info.h.

Constructor & Destructor Documentation

◆ buffer_info() [1/9]

buffer_info::buffer_info ( )
default

◆ buffer_info() [2/9]

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 52 of file buffer_info.h.

◆ buffer_info() [3/9]

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 63 of file buffer_info.h.

◆ buffer_info() [4/9]

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

Definition at line 66 of file buffer_info.h.

◆ buffer_info() [5/9]

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

Definition at line 70 of file buffer_info.h.

◆ buffer_info() [6/9]

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

Definition at line 74 of file buffer_info.h.

◆ buffer_info() [7/9]

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

Definition at line 77 of file buffer_info.h.

◆ buffer_info() [8/9]

buffer_info::buffer_info ( const buffer_info )
delete

◆ buffer_info() [9/9]

buffer_info::buffer_info ( buffer_info &&  other)
inline

Definition at line 94 of file buffer_info.h.

◆ ~buffer_info()

buffer_info::~buffer_info ( )
inline

Definition at line 112 of file buffer_info.h.

Member Function Documentation

◆ operator=() [1/2]

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

Definition at line 98 of file buffer_info.h.

◆ operator=() [2/2]

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

◆ view() [1/2]

Py_buffer*& buffer_info::view ( )
inline

Definition at line 117 of file buffer_info.h.

◆ view() [2/2]

Py_buffer* buffer_info::view ( ) const
inline

Definition at line 116 of file buffer_info.h.

Member Data Documentation

◆ format

std::string buffer_info::format

Definition at line 44 of file buffer_info.h.

◆ itemsize

ssize_t buffer_info::itemsize = 0

Definition at line 42 of file buffer_info.h.

◆ ndim

ssize_t buffer_info::ndim = 0

Definition at line 45 of file buffer_info.h.

◆ ptr

void* buffer_info::ptr = nullptr

Definition at line 41 of file buffer_info.h.

◆ readonly

bool buffer_info::readonly = false

Definition at line 48 of file buffer_info.h.

◆ shape

std::vector<ssize_t> buffer_info::shape

Definition at line 46 of file buffer_info.h.

◆ size

ssize_t buffer_info::size = 0

Definition at line 43 of file buffer_info.h.

◆ strides

std::vector<ssize_t> buffer_info::strides

Definition at line 47 of file buffer_info.h.


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