MOTION
0.01
Framework for mixed-protocol multi-party computation
|
Vector of 128 bit / 16 B blocks. More...
#include <block.h>
Public Member Functions | |
Block128Vector ()=default | |
Block128Vector (const Block128Vector &other) | |
Block128Vector (Block128Vector &&other) | |
Block128Vector & | operator= (const Block128Vector &other) |
Block128Vector & | operator= (Block128Vector &&other) |
~Block128Vector ()=default | |
Block128Vector (std::size_t size) | |
Creates uninitialized vector of size elements. More... | |
Block128Vector (std::size_t size, const Block128 &value) | |
Creates initialized vector of size elements with given value. More... | |
Block128Vector (std::size_t size, const void *__restrict__ pointer) | |
Creates initialized vector of size elements read from memory. More... | |
Block128 & | at (std::size_t index) |
Access Block128 at index . Throws an exception if index is out of bounds. More... | |
const Block128 & | at (std::size_t index) const |
Block128 * | data () |
Get pointer to the first Block128. More... | |
const Block128 * | data () const |
Get const pointer to the first Block128. More... | |
std::size_t | size () const |
Get size of Block128Vector. More... | |
std::size_t | ByteSize () const |
Get size of the Block128Vector content in bytes. More... | |
void | resize (std::size_t new_size) |
Resize the Block128Vector to contain new_size elements. New elements are left uninitialized. More... | |
void | resize (std::size_t new_size, const Block128 &value) |
Resize the Block128Vector to contain new_size elements. New elements are set to value . More... | |
auto | begin () |
Returns an iterator to the first element of the Block128Vector. More... | |
auto | begin () const |
Returns a const iterator to the first element of the Block128Vector. More... | |
auto | end () |
Returns an iterator to the element following the last element of the Block128Vector. More... | |
auto | end () const |
Returns a const iterator to the element following the last element of the Block128Vector. More... | |
void | SetToZero () |
Set all Block128 in this vector to zero. More... | |
void | SetToRandom () |
Set all Block128 in this vector to random values. More... | |
Block128Vector & | operator^= (const Block128Vector &__restrict__ other) |
Perform a XOR-assign operation between all the Block128 in this vector and the Block128 in a different one of same size. More... | |
Block128Vector | operator^ (const Block128Vector &__restrict__ other) const |
Perform a XOR operation between all the Block128 in this vector and the Block128 in a different one of same size. More... | |
Block128 & | operator[] (std::size_t index) |
Access Block128 at index . Undefined behaviour if index is out of bounds. More... | |
const Block128 & | operator[] (std::size_t index) const |
Access Block128 at index . Undefined behaviour if index is out of bounds. More... | |
Static Public Member Functions | |
static Block128Vector | MakeZero (std::size_t size) |
Creates a zero-filled vector of size elements. More... | |
static Block128Vector | MakeRandom (std::size_t size) |
Creates a vector of size elements filled with random data. More... | |
Public Attributes | |
std::vector< Block128, boost::alignment::aligned_allocator< Block128, kBlockAlignment > > | block_vector |
Static Public Attributes | |
static constexpr std::size_t | kBlockAlignment = kAlignment |
Vector of 128 bit / 16 B blocks.
|
default |
|
inline |
|
inline |
|
default |
|
inline |
Creates uninitialized vector of size elements.
size |
|
inline |
Creates initialized vector of size elements with given value.
size | |
value |
|
inline |
Creates initialized vector of size
elements read from memory.
size | |
pointer | Pointer to memory. |
|
inline |
Access Block128 at index
. Throws an exception if index is out of bounds.
index |
|
inline |
|
inline |
Returns an iterator to the first element of the Block128Vector.
|
inline |
Returns a const iterator to the first element of the Block128Vector.
|
inline |
Get size of the Block128Vector content in bytes.
|
inline |
|
inline |
Get const pointer to the first Block128.
|
inline |
Returns an iterator to the element following the last element of the Block128Vector.
|
inline |
Returns a const iterator to the element following the last element of the Block128Vector.
|
inlinestatic |
Creates a vector of size
elements filled with random data.
size |
|
inlinestatic |
Creates a zero-filled vector of size
elements.
size |
|
inline |
|
inline |
|
inline |
Access Block128 at index
. Undefined behaviour if index is out of bounds.
index |
|
inline |
Access Block128 at index
. Undefined behaviour if index is out of bounds.
index |
|
inline |
Perform a XOR operation between all the Block128 in this vector and the Block128 in a different one of same size.
other |
other
is has the same size as this Block128Vector.
|
inline |
Perform a XOR-assign operation between all the Block128 in this vector and the Block128 in a different one of same size.
other |
other
is has the same size as this Block128Vector.
|
inline |
Resize the Block128Vector to contain new_size
elements. New elements are left uninitialized.
new_size |
|
inline |
Resize the Block128Vector to contain new_size
elements. New elements are set to value
.
new_size | |
value |
void encrypto::motion::Block128Vector::SetToRandom | ( | ) |
Set all Block128 in this vector to random values.
|
inline |
Set all Block128 in this vector to zero.
|
inline |
std::vector<Block128, boost::alignment::aligned_allocator<Block128, kBlockAlignment> > encrypto::motion::Block128Vector::block_vector |
|
staticconstexpr |