Classes

Classes

struct  blaze::CustomVector< Type, AF, PF, TF >::Rebind< ET >
 Rebind mechanism to obtain a CustomVector with different data/element type. More...
 
class  blaze::CustomVector< Type, AF, PF, TF >
 Efficient implementation of a customizable vector. More...
 

CustomVector operators

template<typename Type , bool AF, bool PF, bool TF>
void blaze::reset (CustomVector< Type, AF, PF, TF > &v)
 Resetting the given custom vector. More...
 
template<typename Type , bool AF, bool PF, bool TF>
void blaze::clear (CustomVector< Type, AF, PF, TF > &v)
 Clearing the given custom vector. More...
 
template<typename Type , bool AF, bool PF, bool TF>
bool blaze::isDefault (const CustomVector< Type, AF, PF, TF > &v)
 Returns whether the given custom vector is in default state. More...
 
template<typename Type , bool AF, bool PF, bool TF>
bool blaze::isIntact (const CustomVector< Type, AF, PF, TF > &v)
 Returns whether the invariants of the given custom vector are intact. More...
 
template<typename Type , bool AF, bool PF, bool TF>
void blaze::swap (CustomVector< Type, AF, PF, TF > &a, CustomVector< Type, AF, PF, TF > &b)
 Swapping the contents of two vectors. More...
 
template<typename Type , bool AF, bool PF, bool TF>
void blaze::move (CustomVector< Type, AF, PF, TF > &dst, CustomVector< Type, AF, PF, TF > &src)
 Moving the contents of one custom vector to another. More...
 

Detailed Description

Function Documentation

template<typename Type , bool AF, bool PF, bool TF>
void blaze::clear ( CustomVector< Type, AF, PF, TF > &  v)
inline

Clearing the given custom vector.

Parameters
vThe custom vector to be cleared.
Returns
void
template<typename Type , bool AF, bool PF, bool TF>
bool blaze::isDefault ( const CustomVector< Type, AF, PF, TF > &  v)
inline

Returns whether the given custom vector is in default state.

Parameters
vThe custom vector to be tested for its default state.
Returns
true in case the given vector is component-wise zero, false otherwise.

This function checks whether the custom vector is in default state. For instance, in case the static vector is instantiated for a built-in integral or floating point data type, the function returns true in case all vector elements are 0 and false in case any vector element is not 0. Following example demonstrates the use of the isDefault function:

// ... Resizing and initialization
if( isDefault( a ) ) { ... }
template<typename Type , bool AF, bool PF, bool TF>
bool blaze::isIntact ( const CustomVector< Type, AF, PF, TF > &  v)
inline

Returns whether the invariants of the given custom vector are intact.

Parameters
vThe custom vector to be tested.
Returns
true in case the given vector's invariants are intact, false otherwise.

This function checks whether the invariants of the custom vector are intact, i.e. if its state is valid. In case the invariants are intact, the function returns true, else it will return false. The following example demonstrates the use of the isIntact() function:

// ... Resizing and initialization
if( isIntact( a ) ) { ... }
template<typename Type , bool AF, bool PF, bool TF>
void blaze::move ( CustomVector< Type, AF, PF, TF > &  dst,
CustomVector< Type, AF, PF, TF > &  src 
)
inline

Moving the contents of one custom vector to another.

Parameters
dstThe destination vector.
srcThe source vector.
Returns
void
Exceptions
no-throwguarantee.
template<typename Type , bool AF, bool PF, bool TF>
void blaze::reset ( CustomVector< Type, AF, PF, TF > &  v)
inline

Resetting the given custom vector.

Parameters
vThe custom vector to be resetted.
Returns
void
template<typename Type , bool AF, bool PF, bool TF>
void blaze::swap ( CustomVector< Type, AF, PF, TF > &  a,
CustomVector< Type, AF, PF, TF > &  b 
)
inline

Swapping the contents of two vectors.

Parameters
aThe first vector to be swapped.
bThe second vector to be swapped.
Returns
void
Exceptions
no-throwguarantee.