|
Arbitrary-dimensional array template.
More...
#include <vector>
#include <cassert>
#include <utility>
#include "geners/ClassId.hh"
#include "geners/CPP11_auto_ptr.hh"
#include "npstat/nm/SimpleFunctors.hh"
#include "npstat/nm/ArrayRange.hh"
#include "npstat/nm/AbsArrayProjector.hh"
#include "npstat/nm/AbsVisitor.hh"
#include "npstat/nm/LongerType.hh"
#include "npstat/nm/PreciseType.hh"
#include "npstat/nm/ProperDblFromCmpl.hh"
#include "npstat/nm/ArrayND.icc"
Go to the source code of this file.
|
template<typename Numeric , unsigned StackLen, unsigned StackDim, typename Num2 , unsigned Len2, unsigned Dim2> |
npstat::ArrayND< typename npstat::LongerType< Numeric, Num2 >::type, npstat::BiggerUInt< StackLen, Len2 >::value, npstat::BiggerUInt< StackDim, Dim2 >::value > | operator+ (const npstat::ArrayND< Numeric, StackLen, StackDim > &l, const npstat::ArrayND< Num2, Len2, Dim2 > &r) |
|
template<typename Numeric , unsigned StackLen, unsigned StackDim, typename Num2 , unsigned Len2, unsigned Dim2> |
npstat::ArrayND< typename npstat::LongerType< Numeric, Num2 >::type, npstat::BiggerUInt< StackLen, Len2 >::value, npstat::BiggerUInt< StackDim, Dim2 >::value > | operator- (const npstat::ArrayND< Numeric, StackLen, StackDim > &l, const npstat::ArrayND< Num2, Len2, Dim2 > &r) |
|
template<typename Numeric , unsigned StackLen, unsigned StackDim, typename Num2 , unsigned Len2, unsigned Dim2> |
npstat::ArrayND< typename npstat::LongerType< Numeric, Num2 >::type, npstat::BiggerUInt< StackLen, Len2 >::value, npstat::BiggerUInt< StackDim, Dim2 >::value > | operator* (const npstat::ArrayND< Numeric, StackLen, StackDim > &l, const npstat::ArrayND< Num2, Len2, Dim2 > &r) |
|
template<typename Numeric , unsigned StackLen, unsigned StackDim, typename Num2 , unsigned Len2, unsigned Dim2> |
npstat::ArrayND< typename npstat::LongerType< Numeric, Num2 >::type, npstat::BiggerUInt< StackLen, Len2 >::value, npstat::BiggerUInt< StackDim, Dim2 >::value > | operator/ (const npstat::ArrayND< Numeric, StackLen, StackDim > &l, const npstat::ArrayND< Num2, Len2, Dim2 > &r) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, const unsigned *shape, unsigned dim) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, const ArrayShape &shape) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4, unsigned n5) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4, unsigned n5, unsigned n6) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4, unsigned n5, unsigned n6, unsigned n7) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4, unsigned n5, unsigned n6, unsigned n7, unsigned n8) |
|
template<typename Numeric > |
ArrayND< Numeric > | npstat::externalMemArrayND (Numeric *data, unsigned n0, unsigned n1, unsigned n2, unsigned n3, unsigned n4, unsigned n5, unsigned n6, unsigned n7, unsigned n8, unsigned n9) |
|
template<typename Numeric > |
CPP11_auto_ptr< ArrayND< Numeric > > | npstat::allocExternalMemArrayND (Numeric *data, const unsigned *shape, unsigned dim) |
|
template<typename Numeric > |
CPP11_auto_ptr< ArrayND< Numeric > > | npstat::allocExternalMemArrayND (Numeric *data, const ArrayShape &shape) |
|
template<class Arr > |
Arr::value_type | npstat::arrayMin (const Arr &arr) |
|
template<class Arr > |
ArrayShape | npstat::arrayArgmin (const Arr &arr) |
|
template<class Arr > |
Arr::value_type | npstat::arrayMax (const Arr &arr) |
|
template<class Arr > |
ArrayShape | npstat::arrayArgmax (const Arr &arr) |
|
template<class Arr > |
std::pair< typename Arr::value_type, typename Arr::value_type > | npstat::arrayMinMax (const Arr &arr) |
|
template<class Arr > |
bool | npstat::arrayIsNonNegative (const Arr &arr) |
|
template<class Arr > |
bool | npstat::arrayIsDensity (const Arr &arr) |
|
template<typename Num2 , typename Numeric , unsigned StackLen, unsigned StackDim> |
npstat::ArrayND< Numeric, StackLen, StackDim > | operator* (const Num2 &l, const npstat::ArrayND< Numeric, StackLen, StackDim > &r) |
|
Arbitrary-dimensional array template.
Author: I. Volobouev
October 2009
◆ operator+()
template<typename Numeric , unsigned StackLen, unsigned StackDim, typename Num2 , unsigned Len2, unsigned Dim2>
npstat::ArrayND<typename npstat::LongerType<Numeric,Num2>::type, npstat::BiggerUInt<StackLen,Len2>::value, npstat::BiggerUInt<StackDim,Dim2>::value> operator+ |
( |
const npstat::ArrayND< Numeric, StackLen, StackDim > & |
l, |
|
|
const npstat::ArrayND< Num2, Len2, Dim2 > & |
r |
|
) |
| |
Element-wise arithmetic operator
|