cisst-saw
|
Implementation of a fixed-size vector using template metaprogramming. More...
#include <vctFixedSizeVector.h>
Public Member Functions | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
vctFixedSizeVector () | |
vctFixedSizeVector (const value_type &value) | |
template<class __elementType , stride_type __stride, class __dataPtrType > | |
vctFixedSizeVector (const vctFixedSizeConstVectorBase< _size, __stride, __elementType, __dataPtrType > &vector) | |
template<stride_type __stride, class __dataPtrType > | |
vctFixedSizeVector (const vctFixedSizeConstVectorBase< SIZEMINUSONE, __stride, _elementType, __dataPtrType > &vector, value_type lastElement) | |
template<class __elementType > | |
vctFixedSizeVector (const __elementType *elements) | |
template<class __vectorOwnerType > | |
vctFixedSizeVector (const vctDynamicConstVectorBase< __vectorOwnerType, value_type > &vector) | |
ThisType & | operator= (const value_type &value) |
bool | FromStreamRaw (std::istream &inputStream, const char delimiter= ' ') |
void | DeSerializeRaw (std::istream &inputStream) |
template<stride_type __stride> | |
vctFixedSizeVector (const vctFixedSizeConstVectorRef< _elementType, _size, __stride > &vector) | |
template<stride_type __stride> | |
vctFixedSizeVector (const vctFixedSizeVectorRef< _elementType, _size, __stride > &vector) | |
Size dependant constructors. | |
The following methods are size dependant, i.e. don't necessarily mean anything for all sizes of vector. For example, using the constructor vctFixedSizeVector(value, value, value) on a vector of size 2 shouldn't be allowed. It would have been possible to check these errors at compilation time, but this would require an overhead of code and therefore execution time which is not worth it. Therefore, we are using CMN_ASSERT to check that the template parameter _size is valid
| |
vctFixedSizeVector (const value_type &element0, const value_type &element1) | |
vctFixedSizeVector (const value_type &element0, const value_type &element1, const value_type &element2) | |
vctFixedSizeVector (const value_type &element0, const value_type &element1, const value_type &element2, const value_type &element3) | |
vctFixedSizeVector (const value_type element0, const value_type element1, const value_type element2, const value_type element3, const value_type element4,...) | |
ThisType & | operator= (const ThisType &other) |
template<stride_type __stride, class __elementType , class __dataPtrType > | |
ThisType & | operator= (const vctFixedSizeConstVectorBase< _size, __stride, __elementType, __dataPtrType > &other) |
template<stride_type __stride> | |
ThisType & | operator= (const vctFixedSizeConstVectorRef< value_type, _size, __stride > &other) |
template<stride_type __stride, class __elementType > | |
ThisType & | operator= (const vctFixedSizeConstVectorRef< __elementType, _size, __stride > &other) |
![]() | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
iterator | begin (void) |
const_iterator | begin (void) const |
iterator | end (void) |
const_iterator | end (void) const |
reverse_iterator | rbegin (void) |
const_reverse_iterator | rbegin (void) const |
reverse_iterator | rend (void) |
const_reverse_iterator | rend (void) const |
reference | operator[] (size_type index) |
const_reference | operator[] (size_type index) const |
reference | at (size_type index) throw (std::out_of_range) |
const_reference | at (size_type index) const throw (std::out_of_range) |
reference | operator() (size_type index) throw (std::out_of_range) |
const_reference | operator() (size_type index) const throw (std::out_of_range) |
reference | Element (size_type index) |
const_reference | Element (size_type index) const |
pointer | Pointer (size_type index=0) |
const_pointer | Pointer (size_type index=0) const |
value_type | SetAll (const value_type &value) |
bool | Zeros (void) |
ThisType & | Assign (const value_type element0, const value_type element1, const value_type element2, const value_type element3, const value_type element4,...) |
ThisType & | Assign (const value_type *elements) |
ThisType & | Assign (const vctDynamicConstVectorBase< __vectorOwnerType, value_type > &other) |
ThisType & | ConcatenationOf (const vctFixedSizeConstVectorBase< SIZEMINUSONE, __stride, __elementTypeVector, __dataPtrType > &other, __elementType last) |
void | SelectFrom (const vctFixedSizeConstVectorBase< __inputSize, __inputStride, _elementType, __inputDataPtrType > &input, const vctFixedSizeConstVectorBase< _size, __indexStride, index_type, __indexDataPtrType > &index) |
void | CrossProductOf (const vctFixedSizeConstVectorBase< 3, __stride1, _elementType, __dataPtr1Type > &inputVector1, const vctFixedSizeConstVectorBase< 3, __stride2, _elementType, __dataPtr2Type > &inputVector2) |
ThisType & | AddProductOf (const value_type scalar, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | AddElementwiseProductOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | Assign (const vctFixedSizeConstVectorBase< _size, __stride, __elementType, __dataPtrType > &other) |
ThisType & | operator= (const vctFixedSizeConstVectorBase< _size, __stride, __elementType, __dataPtrType > &other) |
ThisType & | Assign (const value_type element0) throw (std::runtime_error) |
ThisType & | Assign (const value_type element0, const value_type element1) throw (std::runtime_error) |
ThisType & | Assign (const value_type element0, const value_type element1, const value_type element2) throw (std::runtime_error) |
ThisType & | Assign (const value_type element0, const value_type element1, const value_type element2, const value_type element3) throw (std::runtime_error) |
ThisType & | ForceAssign (const vctFixedSizeConstVectorBase< _size, __stride, __elementType, __dataPtrType > &other) |
ThisType & | ForceAssign (const vctDynamicConstVectorBase< __vectorOwnerType, value_type > &other) |
bool | FastCopyOf (const vctDynamicConstVectorBase< __vectorOwnerType, value_type > &source, bool performSafetyChecks=true) throw (std::runtime_error) |
bool | FastCopyOf (const vctFixedSizeConstVectorBase< SIZE, STRIDE, value_type, __dataPtrType > &source, bool performSafetyChecks=true) throw (std::runtime_error) |
value_type & | X (void) |
const value_type & | X (void) const |
value_type & | Y (void) |
const value_type & | Y (void) const |
value_type & | Z (void) |
const value_type & | Z (void) const |
value_type & | W (void) |
const value_type & | W (void) const |
vctFixedSizeVectorRef < _elementType, 2, _stride > | XY (void) |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | XY (void) const |
vctFixedSizeVectorRef < _elementType, 2, 2 *_stride > | XZ (void) |
vctFixedSizeConstVectorRef < _elementType, 2, 2 *_stride > | XZ (void) const |
vctFixedSizeVectorRef < _elementType, 2, 3 *_stride > | XW (void) |
vctFixedSizeConstVectorRef < _elementType, 2, 3 *_stride > | XW (void) const |
vctFixedSizeVectorRef < _elementType, 2, _stride > | YZ (void) |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | YZ (void) const |
vctFixedSizeVectorRef < _elementType, 2, 2 *_stride > | YW (void) |
vctFixedSizeConstVectorRef < _elementType, 2, 2 *_stride > | YW (void) const |
vctFixedSizeVectorRef < _elementType, 2, _stride > | ZW (void) |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | ZW (void) const |
vctFixedSizeVectorRef < _elementType, 3, _stride > | XYZ (void) |
vctFixedSizeConstVectorRef < _elementType, 3, _stride > | XYZ (void) const |
vctFixedSizeVectorRef < _elementType, 3, _stride > | YZW (void) |
vctFixedSizeConstVectorRef < _elementType, 3, _stride > | YZW (void) const |
vctFixedSizeVectorRef < _elementType, 4, _stride > | XYZW (void) |
vctFixedSizeConstVectorRef < _elementType, 4, _stride > | XYZW (void) const |
RowConstMatrixRefType | AsRowMatrix (void) const |
RowMatrixRefType | AsRowMatrix (void) |
ColConstMatrixRefType | AsColMatrix (void) const |
ColMatrixRefType | AsColMatrix (void) |
vctFixedSizeConstVectorRef < _elementType, __subSize, _stride > | Ref (const size_type startPosition=0) const throw (std::out_of_range) |
vctFixedSizeVectorRef < _elementType, __subSize, _stride > | Ref (const size_type startPosition=0) throw (std::out_of_range) |
ThisType & | SumOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | DifferenceOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | ElementwiseProductOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | ElementwiseRatioOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | ElementwiseMinOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | ElementwiseMaxOf (const vctFixedSizeConstVectorBase< _size, __stride1, value_type, __dataPtrType1 > &vector1, const vctFixedSizeConstVectorBase< _size, __stride2, value_type, __dataPtrType2 > &vector2) |
ThisType & | Add (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | Subtract (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | ElementwiseMultiply (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | ElementwiseDivide (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | ElementwiseMin (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | ElementwiseMax (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | operator+= (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | operator-= (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | SwapElementsWith (vctFixedSizeVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | SumOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type scalar) |
ThisType & | DifferenceOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type scalar) |
ThisType & | ProductOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type scalar) |
ThisType & | RatioOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type scalar) |
ThisType & | ClippedAboveOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type upperBound) |
ThisType & | ClippedBelowOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector, const value_type lowerBound) |
ThisType & | SumOf (const value_type scalar, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | DifferenceOf (const value_type scalar, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | ProductOf (const value_type scalar, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | RatioOf (const value_type scalar, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | ClippedAboveOf (const value_type upperBound, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | ClippedBelowOf (const value_type lowerBound, const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &vector) |
ThisType & | Add (const value_type scalar) |
ThisType & | Subtract (const value_type scalar) |
ThisType & | operator+= (const value_type scalar) |
ThisType & | operator-= (const value_type scalar) |
ThisType & | Multiply (const value_type scalar) |
ThisType & | Divide (const value_type scalar) |
ThisType & | ClipAbove (const value_type upperBound) |
ThisType & | ClipBelow (const value_type lowerBound) |
ThisType & | operator*= (const value_type scalar) |
ThisType & | operator/= (const value_type scalar) |
ThisType & | ProductOf (const vctFixedSizeConstMatrixBase< _size, __matrixCols, __matrixRowStride, __matrixColStride, _elementType, __matrixDataPtrType > &inputMatrix, const vctFixedSizeConstVectorBase< __matrixCols, __vectorStride, _elementType, __vectorDataPtrType > &inputVector) |
ThisType & | ProductOf (const vctFixedSizeConstVectorBase< __vectorSize, __vectorStride, _elementType, __vectorDataPtrType > &inputVector, const vctFixedSizeConstMatrixBase< __vectorSize, _size, __matrixRowStride, __matrixColStride, _elementType, __matrixDataPtrType > &inputMatrix) |
ThisType & | AbsOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | NegationOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | FloorOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | CeilOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) |
ThisType & | NormalizedOf (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) throw (std::runtime_error) |
ThisType & | AbsSelf (void) |
ThisType & | NegationSelf (void) |
ThisType & | FloorSelf (void) |
ThisType & | CeilSelf (void) |
ThisType & | NormalizedSelf (void) throw (std::runtime_error) |
![]() | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
const_iterator | begin (void) const |
const_iterator | end (void) const |
const_reverse_iterator | rbegin (void) const |
const_reverse_iterator | rend (void) const |
size_type | size (void) const |
size_type | max_size (void) const |
difference_type | stride (void) const |
bool | empty (void) const |
const_reference | operator[] (size_type index) const |
const_reference | at (size_type index) const throw (std::out_of_range) |
const_reference | operator() (size_type index) const throw (std::out_of_range) |
const_reference | Element (size_type index) const |
const_pointer | Pointer (size_type index=0) const |
bool | ValidIndex (size_type index) const |
template<vct::size_type __subSize> | |
vctFixedSizeConstVectorRef < _elementType, __subSize, _stride > | Ref (const size_type startPosition=0) const throw (std::out_of_range) |
template<stride_type __stride, class __dataPtrType > | |
value_type | DotProduct (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
std::string | ToString (void) const |
void | ToStream (std::ostream &outputStream) const |
void | ToStreamRaw (std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const |
void | SerializeRaw (std::ostream &outputStream) const |
const value_type & | X (void) const |
const value_type & | Y (void) const |
const value_type & | Z (void) const |
const value_type & | W (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | XY (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, 2 *_stride > | XZ (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, 3 *_stride > | XW (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | YZ (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, 2 *_stride > | YW (void) const |
vctFixedSizeConstVectorRef < _elementType, 2, _stride > | ZW (void) const |
vctFixedSizeConstVectorRef < _elementType, 3, _stride > | XYZ (void) const |
vctFixedSizeConstVectorRef < _elementType, 3, _stride > | YZW (void) const |
vctFixedSizeConstVectorRef < _elementType, 4, _stride > | XYZW (void) const |
RowConstMatrixRefType | AsRowMatrix (void) const |
ColConstMatrixRefType | AsColMatrix (void) const |
value_type | SumOfElements (void) const |
value_type | ProductOfElements (void) const |
value_type | NormSquare (void) const |
NormType | Norm (void) const |
bool | IsNormalized (_elementType tolerance=cmnTypeTraits< _elementType >::Tolerance()) const |
value_type | L1Norm (void) const |
value_type | LinfNorm (void) const |
value_type | MaxElement (void) const |
value_type | MinElement (void) const |
value_type | MaxAbsElement (void) const |
value_type | MinAbsElement (void) const |
void | MinAndMaxElement (value_type &minElement, value_type &maxElement) const |
bool | IsPositive (void) const |
bool | IsNonNegative (void) const |
bool | IsNonPositive (void) const |
bool | IsNegative (void) const |
bool | All (void) const |
bool | Any (void) const |
bool | IsFinite (void) const |
bool | HasNaN (void) const |
bool | IsCompact (void) const |
bool | IsFortran (void) const |
template<size_type __size, stride_type __stride, class __dataPtrType > | |
bool | FastCopyCompatible (const vctFixedSizeConstVectorBase< __size, __stride, value_type, __dataPtrType > &source) const |
template<class __vectorOwnerType > | |
bool | FastCopyCompatible (const vctDynamicConstVectorBase< __vectorOwnerType, value_type > &source) const |
template<stride_type __stride, class __dataPtrType > | |
bool | Equal (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | operator== (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | AlmostEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector, value_type tolerance) const |
template<stride_type __stride, class __dataPtrType > | |
bool | AlmostEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | NotEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | operator!= (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | Lesser (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | LesserOrEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | Greater (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
bool | GreaterOrEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseNotEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseLesser (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseLesserOrEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseGreater (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
template<stride_type __stride, class __dataPtrType > | |
BoolVectorValueType | ElementwiseGreaterOrEqual (const vctFixedSizeConstVectorBase< _size, __stride, value_type, __dataPtrType > &otherVector) const |
bool | Equal (const value_type &scalar) const |
bool | operator== (const value_type &scalar) const |
bool | NotEqual (const value_type &scalar) const |
bool | operator!= (const value_type &scalar) const |
bool | Lesser (const value_type &scalar) const |
bool | LesserOrEqual (const value_type &scalar) const |
bool | Greater (const value_type &scalar) const |
bool | GreaterOrEqual (const value_type &scalar) const |
BoolVectorValueType | ElementwiseEqual (const value_type &scalar) const |
BoolVectorValueType | ElementwiseNotEqual (const value_type &scalar) const |
BoolVectorValueType | ElementwiseLesser (const value_type &scalar) const |
BoolVectorValueType | ElementwiseLesserOrEqual (const value_type &scalar) const |
BoolVectorValueType | ElementwiseGreater (const value_type &scalar) const |
BoolVectorValueType | ElementwiseGreaterOrEqual (const value_type &scalar) const |
VectorValueType | Abs (void) const |
VectorValueType | Negation (void) const |
VectorValueType | Floor (void) const |
VectorValueType | Ceil (void) const |
VectorValueType | Normalized (void) const throw (std::runtime_error) |
Additional Inherited Members | |
![]() | |
void | ThrowUnlessValidIndex (size_type index) const throw (std::out_of_range) |
![]() | |
_dataPtrType | Data |
Implementation of a fixed-size vector using template metaprogramming.
The vector type is stored as a contiguous array of a fixed size (stack allocation). It provides methods for operations which are implemented using template metaprogramming. See vctFixedSizeConstVectorBase and vctFixedSizeVectorBase for more implementation details.
_elementType | the type of an element in the vector |
_size | the size of the vector |
value_type *
. You can use vctFixedSizeVectorBase::Assign(const value_type * ) for that purpose. The reason is we did not want to have too many functions in the first place. typedef vctFixedSizeVectorBase<_size, 1, _elementType, typename VectorTraits::array> vctFixedSizeVector< _elementType, _size >::BaseType |
typedef BaseType::CopyType vctFixedSizeVector< _elementType, _size >::CopyType |
typedef TypeTraits::VaArgPromotion vctFixedSizeVector< _elementType, _size >::ElementVaArgPromotion |
typedef vctFixedSizeVector<value_type, _size> vctFixedSizeVector< _elementType, _size >::ThisType |
typedef class cmnTypeTraits< value_type > vctFixedSizeVector< _elementType, _size >::TypeTraits |
Type traits for the elements of the vector.
typedef vctFixedSizeVectorTraits<_elementType, _size, 1> vctFixedSizeVector< _elementType, _size >::VectorTraits |
Type traits for the vector. Based on type of elements, size and stride, it defines array, pointer, etc. (see vctFixedSizeVectorTraits).
|
inline |
Default constructor. Do nothing.
|
inlineexplicit |
Initialize all the elements to the given value.
value | the value used to set all the elements of the vector |
|
inlineexplicit |
Initialize the elements of this vector with values from another vector. The other vector can include elements of any type, which will be converted using standard conversion to elements of this vector.
|
inline |
initializing a vector from a vector-ref of the same element type does not need to be declared "explicit".
|
inline |
|
inline |
Initialize the elements of this vector by appending one value after the elements from another vector. The other vector has to have the same element type as this one.
|
inlineexplicit |
Initialize this vector from a conventional C array by copying the elements (assuming input stride == 1).
|
inline |
Initialize the vector from a dynamic vector with elements of the same type.
|
inline |
Constructor for a vector of size 2.
|
inline |
Constructor for a vector of size 3.
|
inline |
Constructor for a vector of size 4.
|
inline |
Constructor for any size greater than 4, using stdarg macros and variable number of arguments. This operation assumes that all the arguments are of type value_type, and that their number is equal to the size of the vector. The user may need to explicitly cast the parameters to value_type to avoid runtime bugs and errors. We have not checked if stdarg macros can use reference types (probably not), so unlike the other constructors, this constructor takes all arguments by value.
|
inline |
Binary deserialization
|
inline |
Read from an unformatted text input (e.g., one created by ToStreamRaw). Returns true if successful.
|
inline |
Assignment operation between vectors of different types.
other | The vector to be copied. |
|
inline |
|
inline |
|
inline |
|
inline |
Assignement of a scalar to all elements. See also SetAll.
vctFixedSizeVector< _elementType, _size >::VCT_CONTAINER_TRAITS_TYPEDEFS | ( | _elementType | ) |