22 #ifndef _vctDynamicNArrayBase_h
23 #define _vctDynamicNArrayBase_h
41 template<
class _nArrayOwnerType,
typename _elementType, vct::
size_type _dimension>
95 return this->
NArray.begin();
108 return this->
NArray.end();
121 return this->
NArray.rbegin();
134 return this->
NArray.rend();
158 return this->
NArray.Pointer(indices);
162 const_pointer
Pointer(
const nsize_type & indices)
const
172 return this->
NArray.Pointer();
187 throw(std::out_of_range)
190 return (
begin())[metaIndex];
196 throw(std::out_of_range)
206 reference
at(
const nsize_type & coordinates)
207 throw(std::out_of_range)
210 return *(
Pointer(coordinates));
214 const_reference
at(
const nsize_type & coordinates)
const
215 throw(std::out_of_range)
223 throw(std::out_of_range)
225 return this->
at(coordinates);
229 const_reference
operator () (
const nsize_type & coordinates)
const
230 throw(std::out_of_range)
241 reference
Element(
const nsize_type & coordinates)
243 return *(
Pointer(coordinates));
247 const_reference
Element(
const nsize_type & coordinates)
const
260 const nsize_type & lengths)
263 subarray.
SubarrayOf(*
this, startPosition, lengths);
270 const nsize_type & lengths)
const
306 throw(std::runtime_error, std::out_of_range)
308 return SlicesTypes::SliceOf(*
this,
dimension, index);
314 throw(std::runtime_error, std::out_of_range)
326 return this->
Slice(0, index);
341 inline value_type
SetAll(
const value_type value)
344 NioSi<typename vctStoreBackBinaryOperations<value_type>::SecondOperand>::
360 memset(this->
Pointer(), 0, this->
size() *
sizeof(value_type));
363 this->
SetAll(static_cast<value_type>(0));
373 template <
class __nArrayOwnerType>
380 typename __nArrayOwnerType::value_type>::Identity>::
394 template <
class __nArrayOwnerType,
typename __elementType>
399 typename __nArrayOwnerType::value_type>::Identity>::
404 template <
class __nArrayOwnerType,
typename __elementType>
407 return this->
Assign(other);
433 typename nsize_type::const_reverse_iterator sizesIter = this->
sizes().rbegin();
434 typename nstride_type::reverse_iterator stridesIter = strides.rbegin();
435 const typename nstride_type::const_reverse_iterator stridesEnd = strides.rend();
439 if (stridesIter != stridesEnd)
446 for (; stridesIter != stridesEnd;
447 ++stridesIter, ++sizesIter)
449 sizesIter_value = (*sizesIter == 0) ? 1 : *sizesIter;
450 *stridesIter = sizesIter_value * previous_stride;
451 previous_stride = *stridesIter;
480 template <
class __nArrayOwnerType,
typename __elementType>
482 return this->
Assign(other);
546 template <
class __nArrayOwnerType>
548 bool performSafetyChecks =
true)
549 throw(std::runtime_error)
572 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
577 NoNiNi< typename vctBinaryOperations<value_type>::Addition >
578 ::Run(*
this, nArray1, nArray2);
583 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
588 NoNiNi< typename vctBinaryOperations<value_type>::Subtraction >
589 ::Run(*
this, nArray1, nArray2);
594 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
599 NoNiNi< typename vctBinaryOperations<value_type>::Multiplication >
600 ::Run(*
this, nArray1, nArray2);
605 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
610 NoNiNi< typename vctBinaryOperations<value_type>::Division >
611 ::Run(*
this, nArray1, nArray2);
616 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
621 NoNiNi< typename vctBinaryOperations<value_type>::Minimum >
622 ::Run(*
this, nArray1, nArray2);
627 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
632 NoNiNi< typename vctBinaryOperations<value_type>::Maximum >
633 ::Run(*
this, nArray1, nArray2);
656 template <
class __nArrayOwnerType>
660 NioNi<typename vctStoreBackBinaryOperations<value_type>::Addition >::
661 Run(*
this, otherNArray);
666 template <
class __nArrayOwnerType>
670 NioNi< typename vctStoreBackBinaryOperations<value_type>::Subtraction >::
671 Run(*
this, otherNArray);
676 template <
class __nArrayOwnerType>
680 NioNi< typename vctStoreBackBinaryOperations<value_type>::Multiplication >::
681 Run(*
this, otherNArray);
686 template <
class __nArrayOwnerType>
690 NioNi< typename vctStoreBackBinaryOperations<value_type>::Division >::
691 Run(*
this, otherNArray);
696 template <
class __nArrayOwnerType>
700 NioNi< typename vctStoreBackBinaryOperations<value_type>::Minimum >::
701 Run(*
this, otherNArray);
706 template <
class __nArrayOwnerType>
710 NioNi< typename vctStoreBackBinaryOperations<value_type>::Maximum >::
711 Run(*
this, otherNArray);
716 template <
class __nArrayOwnerType>
719 return this->
Add(otherNArray);
723 template <
class __nArrayOwnerType>
746 template <
class __nArrayOwnerType>
748 const value_type scalar)
751 NoNiSi< typename vctBinaryOperations<value_type>::Addition >::
752 Run(*
this, nArray, scalar);
757 template <
class __nArrayOwnerType>
759 const value_type scalar)
762 NoNiSi< typename vctBinaryOperations<value_type>::Subtraction >::
763 Run(*
this, nArray, scalar);
768 template <
class __nArrayOwnerType>
770 const value_type scalar)
773 NoNiSi< typename vctBinaryOperations<value_type>::Multiplication >::
774 Run(*
this, nArray, scalar);
779 template <
class __nArrayOwnerType>
781 const value_type scalar)
784 NoNiSi< typename vctBinaryOperations<value_type>::Division >::
785 Run(*
this, nArray, scalar);
790 template <
class __nArrayOwnerType>
792 const value_type lowerBound)
795 NoNiSi<typename vctBinaryOperations<value_type>::Minimum>::
796 Run(*
this, nArray, lowerBound);
801 template <
class __nArrayOwnerType>
803 const value_type upperBound)
806 NoNiSi< typename vctBinaryOperations<value_type>::Maximum >::
807 Run(*
this, nArray, upperBound);
829 template <
class __nArrayOwnerType>
834 NoSiNi< typename vctBinaryOperations<value_type>::Addition >::
835 Run(*
this, scalar, nArray);
840 template <
class __nArrayOwnerType>
845 NoSiNi< typename vctBinaryOperations<value_type>::Subtraction >::
846 Run(*
this, scalar, nArray);
851 template <
class __nArrayOwnerType>
856 NoSiNi< typename vctBinaryOperations<value_type>::Multiplication >::
857 Run(*
this, scalar, nArray);
862 template <
class __nArrayOwnerType>
867 NoSiNi< typename vctBinaryOperations<value_type>::Division >::
868 Run(*
this, scalar, nArray);
873 template <
class __nArrayOwnerType>
878 NoSiNi< typename vctBinaryOperations<value_type>::Minimum >::
879 Run(*
this, upperBound, nArray);
884 template <
class __nArrayOwnerType>
889 NoSiNi< typename vctBinaryOperations<value_type>::Maximum >::
890 Run(*
this, lowerBound, nArray);
914 NioSi< typename vctStoreBackBinaryOperations<value_type>::Addition >::
923 NioSi< typename vctStoreBackBinaryOperations<value_type>::Subtraction >::
932 NioSi< typename vctStoreBackBinaryOperations<value_type>::Multiplication >::
941 NioSi< typename vctStoreBackBinaryOperations<value_type>::Division >::
950 NioSi< typename vctStoreBackBinaryOperations<value_type>::Minimum >::
951 Run(*
this, upperBound);
959 NioSi< typename vctStoreBackBinaryOperations<value_type>::Maximum >::
960 Run(*
this, lowerBound);
967 return this->
Add(scalar);
985 return this->
Divide(scalar);
990 template <
class __nArrayOwnerType>
995 NioSiNi<typename vctStoreBackBinaryOperations<value_type>::Addition,
997 Run(*
this, scalar, otherNArray);
1003 template <
class __nArrayOwnerType1,
class __nArrayOwnerType2>
1008 NioNiNi<typename vctStoreBackBinaryOperations<value_type>::Addition,
1010 Run(*
this, nArray1, nArray2);
1028 template <
class __nArrayOwnerType>
1032 NoNi<typename vctUnaryOperations<value_type>::AbsValue>::
1033 Run(*
this, otherNArray);
1038 template <
class __nArrayOwnerType>
1042 NoNi<typename vctUnaryOperations<value_type>::Negation>::
1043 Run(*
this, otherNArray);
1048 template <
class __nArrayOwnerType>
1052 NoNi<typename vctUnaryOperations<value_type>::Floor>::
1053 Run(*
this, otherNArray);
1058 template <
class __nArrayOwnerType>
1062 NoNi<typename vctUnaryOperations<value_type>::Ceil>::
1063 Run(*
this, otherNArray);
1082 Nio<typename vctStoreBackUnaryOperations<value_type>::MakeAbs>::
1091 Nio<typename vctStoreBackUnaryOperations<value_type>::MakeNegation>::
1100 Nio<typename vctStoreBackUnaryOperations<value_type>::MakeFloor>::
1109 Nio<typename vctStoreBackUnaryOperations<value_type>::MakeCeil>::
1117 #endif // _vctDynamicNArrayBase_h
ConstPermutationRefType Permutation(const ndimension_type &dimensions) const
Definition: vctDynamicConstNArrayBase.h:482
ThisType & ElementwiseDivide(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:687
ThisType & Divide(const value_type scalar)
Definition: vctDynamicNArrayBase.h:938
ThisType & SumOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type scalar)
Definition: vctDynamicNArrayBase.h:747
void ThrowUnlessValidIndex(size_type index) const
Definition: vctDynamicConstNArrayBase.h:240
reference operator()(const nsize_type &coordinates)
Definition: vctDynamicNArrayBase.h:222
dimension_type dimension(void) const
Definition: vctDynamicConstNArrayBase.h:332
ThisType & Add(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:657
const_reverse_iterator rbegin(void) const
Definition: vctDynamicConstNArrayBase.h:287
ThisType & SumOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:573
ThisType & operator=(const vctDynamicConstNArrayBase< __nArrayOwnerType, __elementType, DIMENSION > &other)
Definition: vctDynamicNArrayBase.h:405
BaseType::ConstPermutationRefType ConstPermutationRefType
Definition: vctDynamicNArrayBase.h:78
_nArrayOwnerType OwnerType
Definition: vctDynamicNArrayBase.h:56
const nsize_type & sizes(void) const
Definition: vctDynamicConstNArrayBase.h:308
ThisType & ProductOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type scalar)
Definition: vctDynamicNArrayBase.h:769
const_pointer Pointer(void) const
Definition: vctDynamicConstNArrayBase.h:436
ConstSubarrayRefType Subarray(const nsize_type &startPosition, const nsize_type &lengths) const
Definition: vctDynamicNArrayBase.h:269
Container class for the dynamic nArray engines.
Definition: vctDynamicNArrayLoopEngines.h:43
ThisType & ElementwiseMinOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:617
PermutationRefType Permutation(const ndimension_type &dimensions)
Definition: vctDynamicNArrayBase.h:282
ThisType & ElementwiseMin(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:697
const_reverse_iterator rend(void) const
Definition: vctDynamicNArrayBase.h:138
Definition: vctDynamicConstNArrayBase.h:155
ThisType & Assign(const vctDynamicConstNArrayBase< __nArrayOwnerType, __elementType, DIMENSION > &other)
Definition: vctDynamicNArrayBase.h:395
OwnerType::reverse_iterator reverse_iterator
Definition: vctDynamicNArrayBase.h:64
ThisType & AbsSelf(void)
Definition: vctDynamicNArrayBase.h:1079
ThisType & FloorSelf(void)
Definition: vctDynamicNArrayBase.h:1097
void SubarrayOf(vctDynamicNArrayBase< __ownerType, _elementType, DIMENSION > &otherNArray, const nsize_type &startPosition, const nsize_type &lengths)
Definition: vctDynamicNArrayRef.h:202
ThisType & AddElementwiseProductOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:1004
vctDynamicConstNArrayBase< _nArrayOwnerType, _elementType, _dimension > BaseType
Definition: vctDynamicNArrayBase.h:53
ThisType & Add(const value_type scalar)
Definition: vctDynamicNArrayBase.h:911
ThisType & Subtract(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:667
ConstPermutationRefType Permutation(const ndimension_type &dimensions) const
Definition: vctDynamicNArrayBase.h:291
ThisType & RatioOf(const value_type scalar, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:863
size_t size_type
Definition: vctContainerTraits.h:35
const_reference at(size_type metaIndex) const
Definition: vctDynamicConstNArrayBase.h:399
BaseType::SlicesTypes SlicesTypes
Definition: vctDynamicNArrayBase.h:85
ThisType & CeilOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:1059
void PermutationOf(vctDynamicNArrayBase< __ownerType, _elementType, DIMENSION > &otherNArray, const ndimension_type &dimensions)
Definition: vctDynamicNArrayRef.h:218
ThisType & AbsOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:1029
iterator end(void)
Definition: vctDynamicNArrayBase.h:106
ConstSliceRefType Slice(dimension_type dimension, size_type index) const
Definition: vctDynamicConstNArrayBase.h:498
const_reverse_iterator rend(void) const
Definition: vctDynamicConstNArrayBase.h:294
ThisType & DifferenceOf(const value_type scalar, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:841
Declaration of vctStoreBackBinaryOperations.
Dynamic nArray referencing existing memory (const)
Definition: vctDynamicConstNArrayRef.h:89
const_reverse_iterator rbegin(void) const
Definition: vctDynamicNArrayBase.h:125
ThisType & RatioOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type scalar)
Definition: vctDynamicNArrayBase.h:780
ThisType & CeilSelf(void)
Definition: vctDynamicNArrayBase.h:1106
ThisType & ClippedBelowOf(const value_type lowerBound, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:885
ThisType & operator+=(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:717
Definition: vctDynamicNArrayRefOwner.h:36
Define unary operations on an object as classes.
Definition: vctUnaryOperations.h:55
OwnerType::const_iterator const_iterator
Definition: vctDynamicNArrayBase.h:63
pointer Pointer(const nsize_type &indices)
Definition: vctDynamicNArrayBase.h:156
reference at(const nsize_type &coordinates)
Definition: vctDynamicNArrayBase.h:206
vctDynamicNArrayBase ThisType
Definition: vctDynamicNArrayBase.h:50
Definition: vctDynamicNArrayBase.h:58
ThisType & SumOf(const value_type scalar, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:830
ThisType & ElementwiseRatioOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:606
Definition: vctForwardDeclarations.h:77
ConstSliceRefType Slice(dimension_type dimension, size_type index) const
Definition: vctDynamicNArrayBase.h:313
SliceRefType Slice(dimension_type dimension, size_type index)
Definition: vctDynamicNArrayBase.h:305
ThisType & ProductOf(const value_type scalar, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:852
const_reference at(const nsize_type &coordinates) const
Definition: vctDynamicNArrayBase.h:214
bool FastCopyCompatible(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &source) const
Definition: vctDynamicConstNArrayBase.h:735
reverse_iterator rbegin(void)
Definition: vctDynamicNArrayBase.h:119
pointer Pointer(void)
Definition: vctDynamicNArrayBase.h:170
BaseType::ConstSliceRefType ConstSliceRefType
Definition: vctDynamicNArrayBase.h:86
BaseType::ConstSubarrayRefType ConstSubarrayRefType
Definition: vctDynamicNArrayBase.h:71
BaseType::PermutationRefType PermutationRefType
Definition: vctDynamicNArrayBase.h:79
ThisType & Assign(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &other)
Definition: vctDynamicNArrayBase.h:374
reference Element(const nsize_type &coordinates)
Definition: vctDynamicNArrayBase.h:241
VCT_NARRAY_TRAITS_TYPEDEFS(_dimension)
const_reference operator()(const nsize_type &coordinates) const
Definition: vctDynamicConstNArrayBase.h:418
ThisType & ClippedAboveOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type lowerBound)
Definition: vctDynamicNArrayBase.h:791
Dynamic nArray referencing existing memory.
Definition: vctDynamicNArrayRef.h:87
ThisType & operator/=(const value_type scalar)
Definition: vctDynamicNArrayBase.h:983
const_pointer Pointer(const nsize_type &indices) const
Definition: vctDynamicNArrayBase.h:162
const OwnerType & Owner(void) const
Definition: vctDynamicConstNArrayBase.h:428
ThisType & ClipBelow(const value_type lowerBound)
Definition: vctDynamicNArrayBase.h:956
iterator begin(void)
Definition: vctDynamicNArrayBase.h:93
SlicesTypes::SliceRefType SliceRefType
Definition: vctDynamicConstNArrayBase.h:199
const_pointer Pointer(void) const
Definition: vctDynamicNArrayBase.h:176
const_iterator end(void) const
Definition: vctDynamicNArrayBase.h:112
const_reference Element(const nsize_type &coordinates) const
Definition: vctDynamicConstNArrayBase.h:455
SlicesTypes::ConstSliceRefType ConstSliceRefType
Definition: vctDynamicConstNArrayBase.h:198
BaseType::SliceRefType SliceRefType
Definition: vctDynamicNArrayBase.h:87
reverse_iterator rend(void)
Definition: vctDynamicNArrayBase.h:132
ConstSliceRefType operator[](size_type index) const
Definition: vctDynamicConstNArrayBase.h:509
Declaration of vctStoreBackUnaryOperations.
vctDynamicNArrayTypes< DIMENSION >::template SlicesTypes< _elementType > SlicesTypes
Definition: vctDynamicConstNArrayBase.h:196
SliceRefType operator[](size_type index)
Definition: vctDynamicNArrayBase.h:324
ThisType & FloorOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:1049
ThisType & AddProductOf(const value_type scalar, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:991
ThisType & NegationSelf(void)
Definition: vctDynamicNArrayBase.h:1088
ThisType & ElementwiseMax(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:707
bool Zeros(void)
Definition: vctDynamicNArrayBase.h:358
VCT_CONTAINER_TRAITS_TYPEDEFS(_elementType)
Definition: vctDynamicNArrayBase.h:42
ptrdiff_t stride_type
Definition: vctContainerTraits.h:37
reference at(size_type metaIndex)
Definition: vctDynamicNArrayBase.h:186
ThisType & Subtract(const value_type scalar)
Definition: vctDynamicNArrayBase.h:920
ThisType & ElementwiseMultiply(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:677
Definition: vctForwardDeclarations.h:74
size_type size(void) const
Definition: vctDynamicConstNArrayBase.h:302
ThisType & operator*=(const value_type scalar)
Definition: vctDynamicNArrayBase.h:977
const_iterator begin(void) const
Definition: vctDynamicNArrayBase.h:99
bool IsCompact(void) const
Definition: vctDynamicConstNArrayBase.h:725
const nstride_type & strides(void) const
Definition: vctDynamicConstNArrayBase.h:320
const_reference Element(const nsize_type &coordinates) const
Definition: vctDynamicNArrayBase.h:247
ThisType & ClipAbove(const value_type upperBound)
Definition: vctDynamicNArrayBase.h:947
const OwnerType & Owner(void) const
Definition: vctDynamicNArrayBase.h:145
OwnerType::const_reverse_iterator const_reverse_iterator
Definition: vctDynamicNArrayBase.h:65
ThisType & ClippedBelowOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type upperBound)
Definition: vctDynamicNArrayBase.h:802
OwnerType NArray
Definition: vctDynamicConstNArrayBase.h:227
OwnerType & Owner(void)
Definition: vctDynamicNArrayBase.h:148
SubarrayRefType Subarray(const nsize_type &startPosition, const nsize_type &lengths)
Definition: vctDynamicNArrayBase.h:259
ConstSliceRefType operator[](size_type index) const
Definition: vctDynamicNArrayBase.h:331
value_type SetAll(const value_type value)
Definition: vctDynamicNArrayBase.h:341
Returns the product of the two InputType object.
Definition: vctBinaryOperations.h:116
ThisType & ElementwiseMaxOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:628
ThisType & NegationOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:1039
ThisType & DifferenceOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray, const value_type scalar)
Definition: vctDynamicNArrayBase.h:758
ThisType & operator-=(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &otherNArray)
Definition: vctDynamicNArrayBase.h:724
ConstSubarrayRefType Subarray(const nsize_type &startPosition, const nsize_type &lengths) const
Definition: vctDynamicConstNArrayBase.h:467
static bool NArrayCopy(_destinationNArrayType &destination, const _sourceNArrayType &source, bool performSafetyChecks)
Definition: vctFastCopy.h:288
ThisType & Multiply(const value_type scalar)
Definition: vctDynamicNArrayBase.h:929
BaseType::SubarrayRefType SubarrayRefType
Definition: vctDynamicNArrayBase.h:72
ThisType & ClippedAboveOf(const value_type upperBound, const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &nArray)
Definition: vctDynamicNArrayBase.h:874
const_iterator end(void) const
Definition: vctDynamicConstNArrayBase.h:280
ThisType & ElementwiseProductOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:595
ThisType & ForceAssign(const vctDynamicConstNArrayBase< __nArrayOwnerType, __elementType, DIMENSION > &other)
Definition: vctDynamicNArrayBase.h:481
bool FastCopyOf(const vctDynamicConstNArrayBase< __nArrayOwnerType, value_type, DIMENSION > &source, bool performSafetyChecks=true)
Definition: vctDynamicNArrayBase.h:547
ThisType & Assign(const value_type *elements)
Definition: vctDynamicNArrayBase.h:430
const_iterator begin(void) const
Definition: vctDynamicConstNArrayBase.h:273
OwnerType::iterator iterator
Definition: vctDynamicNArrayBase.h:62
ThisType & DifferenceOf(const vctDynamicConstNArrayBase< __nArrayOwnerType1, value_type, DIMENSION > &nArray1, const vctDynamicConstNArrayBase< __nArrayOwnerType2, value_type, DIMENSION > &nArray2)
Definition: vctDynamicNArrayBase.h:584
Declaration of vctDynamicConstNArrayBase.
const_reference at(size_type metaIndex) const
Definition: vctDynamicNArrayBase.h:195