3 #ifndef VISR_LIBEFL_VECTOR_FUNCTIONS_HPP_INCLUDED 4 #define VISR_LIBEFL_VECTOR_FUNCTIONS_HPP_INCLUDED 19 template <
typename T> VISR_EFL_LIBRARY_SYMBOL
22 template <
typename T> VISR_EFL_LIBRARY_SYMBOL
23 ErrorCode vectorFill(
const T value, T *
const dest, std::size_t numElements, std::size_t alignment = 0 );
25 template <
typename T> VISR_EFL_LIBRARY_SYMBOL
26 ErrorCode vectorCopy( T
const *
const source, T *
const dest, std::size_t numElements, std::size_t alignment = 0 );
42 template <
typename T> VISR_EFL_LIBRARY_SYMBOL
44 bool startInclusive,
bool endInclusive, std::size_t alignment = 0 );
46 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
50 std::size_t numElements,
51 std::size_t alignment = 0 );
53 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
56 std::size_t numElements,
57 std::size_t alignment = 0 );
59 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
63 std::size_t numElements,
64 std::size_t alignment = 0 );
66 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
69 std::size_t numElements,
70 std::size_t alignment = 0 );
72 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
74 T
const *
const minuend,
76 std::size_t numElements,
77 std::size_t alignment = 0 );
79 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
81 T *
const subtrahendResult,
82 std::size_t numElements,
83 std::size_t alignment = 0 );
85 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
87 T
const *
const subtrahend,
89 std::size_t numElements,
90 std::size_t alignment = 0 );
92 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
94 T *
const subtrahendResult,
95 std::size_t numElements,
96 std::size_t alignment = 0 );
108 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
110 T
const *
const factor2,
112 std::size_t numElements,
113 std::size_t alignment = 0 );
123 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
125 T *
const factor2Result,
126 std::size_t numElements,
127 std::size_t alignment = 0 );
138 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
140 T
const *
const factor,
142 std::size_t numElements,
143 std::size_t alignment = 0 );
153 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
155 T *
const factorResult,
156 std::size_t numElements,
157 std::size_t alignment = 0 );
159 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
161 T
const *
const factor2,
162 T
const *
const addend,
164 std::size_t numElements,
165 std::size_t alignment = 0 );
167 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
169 T
const *
const factor2,
170 T *
const accumulator,
171 std::size_t numElements,
172 std::size_t alignment = 0 );
174 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
176 T
const *
const factor,
177 T
const *
const addend,
179 std::size_t numElements,
180 std::size_t alignment = 0 );
182 template<
typename T> VISR_EFL_LIBRARY_SYMBOL
184 T
const *
const factor,
185 T *
const accumulator,
186 std::size_t numElements,
187 std::size_t alignment = 0 );
201 template<
typename DataType> VISR_EFL_LIBRARY_SYMBOL
203 std::size_t destStrideElements, std::size_t numberOfElements, std::size_t alignmentElements );
216 template<
typename DataType> VISR_EFL_LIBRARY_SYMBOL
218 std::size_t destStrideElements,
219 std::size_t numberOfElements,
220 std::size_t alignmentElements );
225 #endif // #ifndef VISR_LIBEFL_VECTOR_FUNCTIONS_HPP_INCLUDED
ErrorCode vectorMultiplyConstantAdd(T constFactor, T const *const factor, T const *const addend, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:819
ErrorCode vectorMultiplyConstant(T constantValue, T const *const factor, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:444
ErrorCode vectorMultiplyConstantInplace(T constantValue, T *const factorResult, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:459
ErrorCode vectorSubtractInplace(T const *const minuend, T *const subtrahendResult, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:160
ErrorCode vectorRamp(T *const dest, std::size_t numElements, T startVal, T endVal, bool startInclusive, bool endInclusive, std::size_t alignment)
Definition: vector_functions.cpp:62
ErrorCode vectorZero(T *const dest, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:40
ErrorCode vectorMultiplyAddInplace(T const *const factor1, T const *const factor2, T *const accumulator, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:487
ErrorCode vectorSubConstantInplace(T constantMinuend, T *const subtrahendResult, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:185
ErrorCode vectorAddConstant(T constantValue, T const *const op, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:120
ErrorCode vectorSubtract(T const *const subtrahend, T const *const minuend, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:147
ErrorCode vectorMultiplyAdd(T const *const factor1, T const *const factor2, T const *const addend, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:471
ErrorCode vectorAddInplace(T const *const op1, T *const op2Result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:106
Definition: options.cpp:10
ErrorCode vectorMultiplyInplace(T const *const factor1, T *const factor2Result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:432
ErrorCode vectorMultiplyConstantAddInplace(T constFactor, T const *const factor, T *const accumulator, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:833
ErrorCode vectorCopyStrided(DataType const *src, DataType *dest, std::size_t srcStrideElements, std::size_t destStrideElements, std::size_t numberOfElements, std::size_t alignmentElements)
Definition: vector_functions.cpp:1044
ErrorCode vectorFill(const T value, T *const dest, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:51
ErrorCode vectorCopy(T const *const source, T *const dest, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:73
ErrorCode vectorSubtractConstant(T constantMinuend, T const *const subtrahend, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:172
ErrorCode vectorFillStrided(DataType val, DataType *dest, std::size_t destStrideElements, std::size_t numberOfElements, std::size_t alignmentElements)
Definition: vector_functions.cpp:1061
ErrorCode vectorMultiply(T const *const factor1, T const *const factor2, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:197
ErrorCode vectorAdd(T const *const op1, T const *const op2, T *const result, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:90
ErrorCode
Definition: error_codes.hpp:13
ErrorCode vectorAddConstantInplace(T constantValue, T *const opResult, std::size_t numElements, std::size_t alignment)
Definition: vector_functions.cpp:135