|
ndarray
NumPy-friendly multidimensional arrays in C++
|
Definition for Vector. More...
#include <boost/type_traits/is_arithmetic.hpp>#include <boost/iterator/reverse_iterator.hpp>#include <boost/utility/enable_if.hpp>#include <boost/mpl/int.hpp>#include <boost/preprocessor/repetition/repeat.hpp>#include <boost/preprocessor/repetition/repeat_from_to.hpp>#include <boost/preprocessor/repetition/enum.hpp>#include <iostream>#include "ndarray_fwd.h"#include "ndarray/types.h"Go to the source code of this file.
Classes | |
| struct | ndarray::detail::DefaultValue< T, isArithmetic > |
| struct | ndarray::detail::DefaultValue< T, true > |
| class | ndarray::Vector< T, N > |
| A fixed-size 1D array class. More... | |
| struct | ndarray::Vector< T, 0 > |
| PArtial specialization for zero-size vectors to avoid compiler errors on some platforms. More... | |
Functions | |
| template<typename T , int N, int M> | |
| Vector< T, N+M > | ndarray::concatenate (Vector< T, N > const &a, Vector< T, M > const &b) |
| Concatenate two Vectors into a single long Vector. | |
| template<typename T , int N, typename U > | |
| boost::enable_if< boost::is_convertible< U, T >, Vector< T, N+1 > >::type | ndarray::concatenate (Vector< T, N > const &a, U b) |
| Return a new Vector with the given scalar appended to the original. | |
| template<typename T , int N, typename U > | |
| boost::enable_if< boost::is_convertible< U, T >, Vector< T, N+1 > >::type | ndarray::concatenate (U a, Vector< T, N > const &b) |
| Return a new Vector with the given scalar prepended to the original. | |
| template<typename T , int N> | |
| Vector< T, N > | ndarray::operator~ (Vector< T, N > const &vector) |
| Unary bitwise NOT for Vector. | |
| template<typename T , int N> | |
| Vector< T, N > | ndarray::operator! (Vector< T, N > const &vector) |
| Unary negation for Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator+ (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector + Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator+ (Vector< T, N > const &a, U b) |
| Operator overload for Vector + Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator+ (U a, Vector< T, N > const &b) |
| Operator overload for Scalar + Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator- (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector - Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator- (Vector< T, N > const &a, U b) |
| Operator overload for Vector - Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator- (U a, Vector< T, N > const &b) |
| Operator overload for Scalar - Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator* (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector * Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator* (Vector< T, N > const &a, U b) |
| Operator overload for Vector * Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator* (U a, Vector< T, N > const &b) |
| Operator overload for Scalar * Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator/ (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector / Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator/ (Vector< T, N > const &a, U b) |
| Operator overload for Vector / Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator/ (U a, Vector< T, N > const &b) |
| Operator overload for Scalar / Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator% (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector % Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator% (Vector< T, N > const &a, U b) |
| Operator overload for Vector % Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator% (U a, Vector< T, N > const &b) |
| Operator overload for Scalar % Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator& (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector & Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator& (Vector< T, N > const &a, U b) |
| Operator overload for Vector & Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator& (U a, Vector< T, N > const &b) |
| Operator overload for Scalar & Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator^ (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector ^ Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator^ (Vector< T, N > const &a, U b) |
| Operator overload for Vector ^ Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator^ (U a, Vector< T, N > const &b) |
| Operator overload for Scalar ^ Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator| (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector | Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator| (Vector< T, N > const &a, U b) |
| Operator overload for Vector | Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator| (U a, Vector< T, N > const &b) |
| Operator overload for Scalar | Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator<< (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector << Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator<< (Vector< T, N > const &a, U b) |
| Operator overload for Vector << Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator<< (U a, Vector< T, N > const &b) |
| Operator overload for Scalar << Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator>> (Vector< T, N > const &a, Vector< U, N > const &b) |
| Operator overload for Vector >> Vector. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator>> (Vector< T, N > const &a, U b) |
| Operator overload for Vector >> Scalar. | |
| template<typename T , typename U , int N> | |
| Vector< typename Promote< T, U >::Type, N > | ndarray::operator>> (U a, Vector< T, N > const &b) |
| Operator overload for Scalar >> Vector. | |
Definition for Vector.