35 #ifndef _BLAZE_MATH_EXPRESSIONS_VECTOR_H_
36 #define _BLAZE_MATH_EXPRESSIONS_VECTOR_H_
89 return *
static_cast<VectorType*
>( this );
99 return *
static_cast<const VectorType*
>( this );
117 template<
typename VT,
bool TF >
120 template<
typename VT,
bool TF >
123 template<
typename VT,
bool TF >
126 template<
typename VT,
bool TF >
129 template<
typename VT,
bool TF >
132 template<
typename VT,
bool TF >
135 template<
typename VT,
bool TF >
138 template<
typename VT,
bool TF >
141 template<
typename VT,
bool TF >
144 template<
typename VT,
bool TF >
147 template<
typename VT1,
bool TF1,
typename VT2,
bool TF2 >
159 template<
typename VT
163 return (~vector).begin();
174 template<
typename VT
178 return (~vector).begin();
189 template<
typename VT
193 return (~vector).begin();
204 template<
typename VT
208 return (~vector).end();
219 template<
typename VT
223 return (~vector).end();
234 template<
typename VT
238 return (~vector).end();
250 template<
typename VT
254 return (~vector).size();
266 template<
typename VT
270 return (~vector).capacity();
285 template<
typename VT
289 return (~vector).nonZeros();
308 template<
typename VT
311 resize_backend( Vector<VT,TF>& vector,
size_t n,
bool preserve )
315 if( (~vector).
size() != n ) {
335 template<
typename VT
338 resize_backend( Vector<VT,TF>& vector,
size_t n,
bool preserve )
340 (~vector).
resize( n, preserve );
374 template<
typename VT
378 resize_backend( vector, n, preserve );
416 template<
typename VT1
423 reinterpret_cast<const void*>( &a ) == reinterpret_cast<const void*>( &b ) );
443 template<
typename VT1
452 (~lhs).assign( ~rhs );
473 template<
typename VT1
482 (~lhs).addAssign( ~rhs );
503 template<
typename VT1
512 (~lhs).subAssign( ~rhs );
533 template<
typename VT1
542 (~lhs).multAssign( ~rhs );
563 template<
typename VT1
567 BLAZE_ALWAYS_INLINE bool tryAssign(
const Vector<VT1,TF1>& lhs,
const Vector<VT2,TF2>& rhs,
size_t index )
595 template<
typename VT1
599 BLAZE_ALWAYS_INLINE bool tryAddAssign(
const Vector<VT1,TF1>& lhs,
const Vector<VT2,TF2>& rhs,
size_t index )
627 template<
typename VT1
631 BLAZE_ALWAYS_INLINE bool trySubAssign(
const Vector<VT1,TF1>& lhs,
const Vector<VT2,TF2>& rhs,
size_t index )
659 template<
typename VT1
663 BLAZE_ALWAYS_INLINE bool tryMultAssign(
const Vector<VT1,TF1>& lhs,
const Vector<VT2,TF2>& rhs,
size_t index )
691 template<
typename VT
#define BLAZE_THROW_INVALID_ARGUMENT(MESSAGE)
Macro for the emission of a std::invalid_argument exceptionThis macro encapsulates the default way of...
Definition: Exception.h:187
Header file for the UNUSED_PARAMETER function template.
Header file for basic type definitions.
BLAZE_ALWAYS_INLINE MT::ConstIterator cbegin(const Matrix< MT, SO > &matrix, size_t i)
Returns an iterator to the first element of row/column i.
Definition: Matrix.h:229
BLAZE_ALWAYS_INLINE size_t size(const Vector< VT, TF > &vector)
Returns the current size/dimension of the vector.
Definition: Vector.h:252
BLAZE_ALWAYS_INLINE MT::ConstIterator cend(const Matrix< MT, SO > &matrix, size_t i)
Returns an iterator just past the last element of row/column i.
Definition: Matrix.h:292
BLAZE_ALWAYS_INLINE MT::Iterator end(Matrix< MT, SO > &matrix, size_t i)
Returns an iterator just past the last element of row/column i.
Definition: Matrix.h:250
BLAZE_ALWAYS_INLINE bool isSame(const Matrix< MT1, SO1 > &a, const Matrix< MT2, SO2 > &b)
Returns whether the two given matrices represent the same observable state.
Definition: Matrix.h:647
Header file for the IsSame and IsStrictlySame type traits.
BLAZE_ALWAYS_INLINE size_t capacity(const Matrix< MT, SO > &matrix)
Returns the maximum capacity of the matrix.
Definition: Matrix.h:340
void UNUSED_PARAMETER(const T1 &)
Suppression of unused parameter warnings.
Definition: Unused.h:81
BLAZE_ALWAYS_INLINE size_t nonZeros(const Matrix< MT, SO > &matrix)
Returns the total number of non-zero elements in the matrix.
Definition: Matrix.h:378
Type relationship analysis.This class tests if the two data types A and B are equal. For this type comparison, the cv-qualifiers of both data types are ignored. If A and B are the same data type (ignoring the cv-qualifiers), then the value member enumeration is set to 1, the nested type definition Type is TrueType, and the class derives from TrueType. Otherwise value is set to 0, Type is FalseType, and the class derives from FalseType.
Definition: IsSame.h:158
VT VectorType
Type of the vector.
Definition: Vector.h:80
BLAZE_ALWAYS_INLINE VectorType & operator~()
Conversion operator for non-constant vectors.
Definition: Vector.h:88
Header file for the DisableIf class template.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
const Element * ConstIterator
Iterator over constant elements.
Definition: CompressedMatrix.h:2592
BLAZE_ALWAYS_INLINE MT::Iterator begin(Matrix< MT, SO > &matrix, size_t i)
Returns an iterator to the first element of row/column i.
Definition: Matrix.h:187
BLAZE_ALWAYS_INLINE void resize(Matrix< MT, SO > &matrix, size_t rows, size_t columns, bool preserve=true)
Changing the size of the matrix.
Definition: Matrix.h:532
Header file for the EnableIf class template.
Header file for run time assertion macros.
Element * Iterator
Iterator over non-constant elements.
Definition: CompressedMatrix.h:2591
BLAZE_ALWAYS_INLINE const VectorType & operator~() const
Conversion operator for constant vectors.
Definition: Vector.h:98
Base class for N-dimensional vectors.The Vector class is a base class for all arbitrarily sized (N-di...
Definition: Forward.h:164
#define BLAZE_FUNCTION_TRACE
Function trace macro.This macro can be used to reliably trace function calls. In case function tracin...
Definition: FunctionTrace.h:157
Header file for exception macros.
Header file for the IsResizable type trait.
System settings for the inline keywords.
#define BLAZE_INTERNAL_ASSERT(expr, msg)
Run time assertion macro for internal checks.In case of an invalid run time expression, the program execution is terminated. The BLAZE_INTERNAL_ASSERT macro can be disabled by setting the BLAZE_USER_ASSERTION flag to zero or by defining NDEBUG during the compilation.
Definition: Assert.h:101
Header file for the FunctionTrace class.