|
| | HyperCube (const HyperCube &other)=default |
| |
| | HyperCube (const CubeSignature &_sig) |
| | initialize a HyperCube with a CubeSignature More...
|
| |
| HyperCube & | operator= (const HyperCube< T > &other) |
| | assignment: signatures must be the same More...
|
| |
| bool | operator== (const HyperCube< T > &other) const |
| | equality testing: signatures must be the same More...
|
| |
| bool | operator!= (const HyperCube< T > &other) const |
| |
| const CubeSignature & | getSig () const |
| | const ref to signature More...
|
| |
| NTL::Vec< T > & | getData () |
| |
| const NTL::Vec< T > & | getData () const |
| | read-only ref to data vector More...
|
| |
| long | getSize () const |
| | total size of cube More...
|
| |
| long | getNumDims () const |
| | number of dimensions More...
|
| |
| long | getDim (long d) const |
| | size of dimension d More...
|
| |
| long | getProd (long d) const |
| | product of sizes of dimensions d, d+1, ... More...
|
| |
| long | getProd (long from, long to) const |
| | product of sizes of dimensions from, from+1, ..., to-1 More...
|
| |
| long | getCoord (long i, long d) const |
| | get coordinate in dimension d of index i More...
|
| |
| long | addCoord (long i, long d, long offset) const |
| | add offset to coordinate in dimension d of index i More...
|
| |
| long | numSlices (long d=1) const |
| | number of slices More...
|
| |
| long | sliceSize (long d=1) const |
| | size of one slice More...
|
| |
| long | numCols () const |
| | number of columns More...
|
| |
| T & | at (long i) |
| | reference to element at position i, with bounds check More...
|
| |
| T & | operator[] (long i) |
| | reference to element at position i, without bounds check More...
|
| |
| const T & | at (long i) const |
| | read-only reference to element at position i, with bounds check More...
|
| |
| const T & | operator[] (long i) const |
| | read-only reference to element at position i, without bounds check More...
|
| |
| void | rotate1D (long i, long k) |
| | rotate k positions along the i'th dimension More...
|
| |
| void | shift1D (long i, long k) |
| | Shift k positions along the i'th dimension with zero fill. More...
|
| |
template<typename T>
class helib::HyperCube< T >
A multi-dimensional cube.
Such an object is initialized with a CubeSignature: a reference to the signature is stored with the cube, and so the signature must remain alive during the lifetime of the cube, to prevent dangling pointers.