|
| narray (void) |
| in direct mode? if non null, this will be the handler More...
|
|
| narray (const this_type &src) |
| copy ctor
|
|
| narray (const index_type &sz) |
| sizing
|
|
| narray (size_t width, size_t height) |
| sizing
|
|
| ~narray (void) |
| dtor
|
|
bool | load (scopira::tool::itflow_i &in) |
|
void | save (scopira::tool::otflow_i &out) const |
|
const T * | c_array (void) const |
| raw c-array style access
|
|
T * | c_array (void) |
| raw c-array style access
|
|
iterator | begin (void) |
| begin-stl like iterator
|
|
iterator | end (void) |
| end-stl like iterator
|
|
const_iterator | begin (void) const |
| begin-stl like iterator
|
|
const_iterator | end (void) const |
| end-stl like iterator
|
|
bool | empty (void) const |
| empty?
|
|
size_t | size (void) const |
| gets the size (1D)
|
|
size_t | width (void) const |
| width
|
|
size_t | height (void) const |
| height
|
|
size_t | depth (void) const |
| depth
|
|
const index_type & | dimen (void) const |
| gets the size of this array
|
|
void | resize (size_t len) |
|
void | resize (size_t neww, size_t newh) |
|
void | resize (size_t neww, size_t newh, size_t newd) |
|
void | resize (const index_type &news) |
|
void | resize_direct (index_type sz, T *direct_ary, scopira::basekit::narray_delete_i *delfunc=null_narray_delete) |
|
scopira::basekit::narray_delete_i * | get_direct (void) const |
| gets the direct status/handler. non-null for direct mode
|
|
template<int SIM> |
nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen, nindex< SIM > direction) |
| main slicer
|
|
template<int SIM> |
nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen) |
| default directions
|
|
nslice< T, 1 > | slicer (index_type base, size_t len, size_t direction=x_axis_c) |
| 1D specialized slicer, just to be nice
|
|
nslice< T, 1 > | diagonal_slice (void) |
|
nslice< T, DIM > | all_slice (void) |
| all slice
|
|
size_t | size_rows (void) const |
| number of rows
|
|
nslice< T, DIM-1 > | row_slice (size_t r) |
| get a particular row
|
|
nslice< T, 1 > | xslice (size_t basex, size_t len) |
| vector to vector
|
|
nslice< T, 1 > | xslice (size_t basex, size_t basey, size_t len) |
| vector slice
|
|
nslice< T, 1 > | yslice (size_t basex, size_t basey, size_t len) |
| vector slice
|
|
nslice< T, 2 > | xyslice (size_t basex, size_t basey, size_t width, size_t height) |
| matrix slice
|
|
nslice< T, 1 > | xslice (index_type base, size_t len) |
| vector slice
|
|
nslice< T, 1 > | yslice (index_type base, size_t len) |
| vector slice
|
|
nslice< T, 1 > | zslice (index_type base, size_t len) |
| vector slice
|
|
nslice< T, 1 > | tslice (index_type base, size_t len) |
| vector slice
|
|
nslice< T, 2 > | xyslice (index_type base, size_t width, size_t height) |
| matrix slice
|
|
template<int SIM> |
const_nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen, nindex< SIM > direction) const |
| main slicer
|
|
template<int SIM> |
const_nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen) const |
| default directions
|
|
const_nslice< T, 1 > | slicer (index_type base, size_t len, size_t direction=x_axis_c) const |
| 1D specialized slicer, just to be nice
|
|
const_nslice< T, 1 > | diagonal_slice (void) const |
| diagnol
|
|
const_nslice< T, DIM > | all_slice (void) const |
| all slice
|
|
const_nslice< T, DIM-1 > | row_slice (size_t r) const |
| number of rows More...
|
|
const_nslice< T, 1 > | xslice (size_t basex, size_t len) const |
| vector to vector
|
|
const_nslice< T, 1 > | xslice (size_t basex, size_t basey, size_t len) const |
| vector slice
|
|
const_nslice< T, 1 > | yslice (size_t basex, size_t basey, size_t len) const |
| vector slice
|
|
const_nslice< T, 2 > | xyslice (size_t basex, size_t basey, size_t width, size_t height) const |
| matrix slice
|
|
const_nslice< T, 1 > | xslice (index_type base, size_t len) const |
| vector slice
|
|
const_nslice< T, 1 > | yslice (index_type base, size_t len) const |
| vector slice
|
|
const_nslice< T, 1 > | zslice (index_type base, size_t len) const |
| vector slice
|
|
const_nslice< T, 1 > | tslice (index_type base, size_t len) const |
| vector slice
|
|
const_nslice< T, 2 > | xyslice (index_type base, size_t width, size_t height) const |
| matrix slice
|
|
void | clear (void) |
| set all to 0
|
|
void | set_all (T v) |
| set all the elements
|
|
void | copy (const this_type &at) |
| deep copy
|
|
void | copy (const nslice< T, DIM > &at) |
| deep copy
|
|
void | copy (const const_nslice< T, DIM > &at) |
| deep copy
|
|
void | operator= (const this_type &at) |
| this turns out to be very handy
|
|
T | operator() (index_type c) const |
| [] ref
|
|
T & | operator() (index_type c) |
| [] ref
|
|
void | set (index_type c, T v) |
| setter
|
|
T | get (index_type c) const |
| getter
|
|
const T | operator[] (size_t idx) const |
| Nice, referece-based element access.
|
|
T & | operator[] (size_t idx) |
| Nice, referece-based element access.
|
|
void | set (size_t idx, T v) |
| Sets the value of an element.
|
|
T | get (size_t idx) const |
| Gets the value of an element.
|
|
const T | operator() (size_t x, size_t y) const |
|
T & | operator() (size_t x, size_t y) |
|
void | set (size_t x, size_t y, T v) |
|
T | get (size_t x, size_t y) const |
|
T & | operator() (size_t x, size_t y, size_t z) |
|
void | set (size_t x, size_t y, size_t z, T v) |
|
T | get (size_t x, size_t y, size_t z) const |
|
template<int SIM> |
scopira::basekit::nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen, nindex< SIM > direction) |
|
template<int SIM> |
scopira::basekit::nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen) |
|
template<int SIM> |
scopira::basekit::const_nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen, nindex< SIM > direction) const |
|
template<int SIM> |
scopira::basekit::const_nslice< T, SIM > | slicer (index_type base, nindex< SIM > dimen) const |
|
template<class T, int DIM>
class scopira::basekit::narray< T, DIM >
The is the core N-dimension numerical array class.
It a templated class that allows you to build N-dimensional arrays of any type.
See Numeric arrays for a introduction.
Arrays contains the elements in a C-like fasion. You can use the access methods to access the elements, STL style iteration or the c_array() function to get at the data.
The nslice class allow you to create subset views within narrays. The nindex class is a tiny array class that lets you do N-dimensional coordinate referencing.
- See also
- Numeric arrays
-
scopira::basekit::nslice
-
scopira::basekit::nindex
- Author
- Aleksander Demko