marray.hxx File Reference

#include <cassert>
#include <stdexcept>
#include <limits>
#include <string>
#include <sstream>
#include <cstring>
#include <iterator>
#include <vector>
#include <set>
#include <iostream>
#include <memory>
#include <numeric>
Include dependency graph for marray.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  marray::InitializationSkipping
class  marray::View< T, isConst, A >
 Array-Interface to an interval of memory. More...
class  marray::Iterator< T, isConst, A >
 STL-compliant random access iterator for View and Marray. More...
class  marray::Marray< T, A >
 Runtime-flexible multi-dimensional array. More...
class  marray::Vector< T, A >
 One-dimensional Marray. More...
class  marray::Matrix< T, A >
 Two-dimensional Marray. More...
class  marray::ViewExpression< E, T >

Namespaces

namespace  marray
 

Runtime-flexible multi-dimensional views and arrays.


Defines

#define MARRAY_UNARY_OPERATOR(datatype, operation, functorname)
#define MARRAY_UNARY_OPERATOR_ALL_TYPES(op, functorname)
#define MARRAY_BINARY_OPERATOR(datatype, operation, functorname)
#define MARRAY_BINARY_OPERATOR_ALL_TYPES(op, functorname)

Enumerations

enum  marray::StringStyle { marray::TableStyle, marray::MatrixStyle }
enum  marray::CoordinateOrder { marray::FirstMajorOrder, marray::LastMajorOrder }

Functions

template<class T1 , class T2 , bool isConst, class A >
View< T1, false, A > & marray::operator+= (View< T1, false, A > &v, const View< T2, isConst, A > &w)
template<class T , class A >
View< T, false, A > & marray::operator++ (View< T, false, A > &v)
template<class T , class A >
Marray< T, A > marray::operator++ (Marray< T, A > &in, int dummy)
template<class T1 , class T2 , bool isConst, class A >
View< T1, false, A > & marray::operator-= (View< T1, false, A > &v, const View< T2, isConst, A > &w)
template<class T , class A >
View< T, false, A > & marray::operator-- (View< T, false, A > &v)
template<class T , class A >
Marray< T, A > marray::operator-- (Marray< T, A > &in, int dummy)
template<class T1 , class T2 , bool isConst, class A >
View< T1, false, A > & marray::operator*= (View< T1, false, A > &v, const View< T2, isConst, A > &w)
template<class T1 , class T2 , bool isConst, class A >
View< T1, false, A > & marray::operator/= (View< T1, false, A > &v, const View< T2, isConst, A > &w)
template<class E1 , class T1 , class E2 , class T2 >
const BinaryViewExpression< E1,
T1, E2, T2,
marray_detail::Plus< T1, T2,
typename
marray_detail::PromoteType< T1,
T2 >::type > > 
marray::operator+ (const ViewExpression< E1, T1 > &expression1, const ViewExpression< E2, T2 > &expression2)
template<class E , class T >
const ViewExpression< E, T > & marray::operator+ (const ViewExpression< E, T > &expression)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const char &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const unsigned char &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const short &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const unsigned short &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const int &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const unsigned int &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const long &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const unsigned long &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const float &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const double &x)
template<class T , class A >
View< T, false, A > & marray::operator+= (View< T, false, A > &v, const long double &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const char &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const unsigned char &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const short &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const unsigned short &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const int &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const unsigned int &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const long &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const unsigned long &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const float &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const double &x)
template<class T , class A >
View< T, false, A > & marray::operator-= (View< T, false, A > &v, const long double &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const char &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const unsigned char &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const short &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const unsigned short &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const int &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const unsigned int &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const long &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const unsigned long &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const float &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const double &x)
template<class T , class A >
View< T, false, A > & marray::operator*= (View< T, false, A > &v, const long double &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const char &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const unsigned char &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const short &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const unsigned short &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const int &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const unsigned int &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const long &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const unsigned long &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const float &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const double &x)
template<class T , class A >
View< T, false, A > & marray::operator/= (View< T, false, A > &v, const long double &x)
template<class E1 , class T1 , class E2 , class T2 >
const BinaryViewExpression< E1,
T1, E2, T2,
marray_detail::Minus< T1, T2,
typename
marray_detail::PromoteType< T1,
T2 >::type > > 
marray::operator- (const ViewExpression< E1, T1 > &expression1, const ViewExpression< E2, T2 > &expression2)
template<class E , class T >
const UnaryViewExpression< E,
T, marray_detail::Negate< T > > 
marray::operator- (const ViewExpression< E, T > &expression)
template<class E1 , class T1 , class E2 , class T2 >
const BinaryViewExpression< E1,
T1, E2, T2,
marray_detail::Times< T1, T2,
typename
marray_detail::PromoteType< T1,
T2 >::type > > 
marray::operator* (const ViewExpression< E1, T1 > &expression1, const ViewExpression< E2, T2 > &expression2)
template<class E1 , class T1 , class E2 , class T2 >
const BinaryViewExpression< E1,
T1, E2, T2,
marray_detail::DividedBy< T1,
T2, typename
marray_detail::PromoteType< T1,
T2 >::type > > 
marray::operator/ (const ViewExpression< E1, T1 > &expression1, const ViewExpression< E2, T2 > &expression2)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, char,
marray_detail::Plus< T, char,
typename
marray_detail::PromoteType< T,
char >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, char,
marray_detail::Plus< char, T,
typename
marray_detail::PromoteType
< char, T >::type > > 
marray::operator+ (const char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned char,
marray_detail::Plus< T,
unsigned char, typename
marray_detail::PromoteType< T,
unsigned char >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const unsigned char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned char,
marray_detail::Plus< unsigned
char, T, typename
marray_detail::PromoteType
< unsigned char, T >::type > > 
marray::operator+ (const unsigned char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, short,
marray_detail::Plus< T, short,
typename
marray_detail::PromoteType< T,
short >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, short,
marray_detail::Plus< short, T,
typename
marray_detail::PromoteType
< short, T >::type > > 
marray::operator+ (const short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned short,
marray_detail::Plus< T,
unsigned short, typename
marray_detail::PromoteType< T,
unsigned short >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const unsigned short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned short,
marray_detail::Plus< unsigned
short, T, typename
marray_detail::PromoteType
< unsigned short, T >::type > > 
marray::operator+ (const unsigned short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, int,
marray_detail::Plus< T, int,
typename
marray_detail::PromoteType< T,
int >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, int,
marray_detail::Plus< int, T,
typename
marray_detail::PromoteType
< int, T >::type > > 
marray::operator+ (const int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned int,
marray_detail::Plus< T,
unsigned int, typename
marray_detail::PromoteType< T,
unsigned int >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const unsigned int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned int,
marray_detail::Plus< unsigned
int, T, typename
marray_detail::PromoteType
< unsigned int, T >::type > > 
marray::operator+ (const unsigned int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long,
marray_detail::Plus< T, long,
typename
marray_detail::PromoteType< T,
long >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long,
marray_detail::Plus< long, T,
typename
marray_detail::PromoteType
< long, T >::type > > 
marray::operator+ (const long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned long,
marray_detail::Plus< T,
unsigned long, typename
marray_detail::PromoteType< T,
unsigned long >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const unsigned long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned long,
marray_detail::Plus< unsigned
long, T, typename
marray_detail::PromoteType
< unsigned long, T >::type > > 
marray::operator+ (const unsigned long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, float,
marray_detail::Plus< T, float,
typename
marray_detail::PromoteType< T,
float >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const float &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, float,
marray_detail::Plus< float, T,
typename
marray_detail::PromoteType
< float, T >::type > > 
marray::operator+ (const float &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, double,
marray_detail::Plus< T, double,
typename
marray_detail::PromoteType< T,
double >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, double,
marray_detail::Plus< double, T,
typename
marray_detail::PromoteType
< double, T >::type > > 
marray::operator+ (const double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long double,
marray_detail::Plus< T, long
double, typename
marray_detail::PromoteType< T,
long double >::type > > 
marray::operator+ (const ViewExpression< E, T > &expression, const long double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long double,
marray_detail::Plus< long
double, T, typename
marray_detail::PromoteType
< long double, T >::type > > 
marray::operator+ (const long double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, char,
marray_detail::Minus< T, char,
typename
marray_detail::PromoteType< T,
char >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, char,
marray_detail::Minus< char, T,
typename
marray_detail::PromoteType
< char, T >::type > > 
marray::operator- (const char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned char,
marray_detail::Minus< T,
unsigned char, typename
marray_detail::PromoteType< T,
unsigned char >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const unsigned char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned char,
marray_detail::Minus< unsigned
char, T, typename
marray_detail::PromoteType
< unsigned char, T >::type > > 
marray::operator- (const unsigned char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, short,
marray_detail::Minus< T, short,
typename
marray_detail::PromoteType< T,
short >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, short,
marray_detail::Minus< short, T,
typename
marray_detail::PromoteType
< short, T >::type > > 
marray::operator- (const short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned short,
marray_detail::Minus< T,
unsigned short, typename
marray_detail::PromoteType< T,
unsigned short >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const unsigned short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned short,
marray_detail::Minus< unsigned
short, T, typename
marray_detail::PromoteType
< unsigned short, T >::type > > 
marray::operator- (const unsigned short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, int,
marray_detail::Minus< T, int,
typename
marray_detail::PromoteType< T,
int >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, int,
marray_detail::Minus< int, T,
typename
marray_detail::PromoteType
< int, T >::type > > 
marray::operator- (const int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned int,
marray_detail::Minus< T,
unsigned int, typename
marray_detail::PromoteType< T,
unsigned int >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const unsigned int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned int,
marray_detail::Minus< unsigned
int, T, typename
marray_detail::PromoteType
< unsigned int, T >::type > > 
marray::operator- (const unsigned int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long,
marray_detail::Minus< T, long,
typename
marray_detail::PromoteType< T,
long >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long,
marray_detail::Minus< long, T,
typename
marray_detail::PromoteType
< long, T >::type > > 
marray::operator- (const long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned long,
marray_detail::Minus< T,
unsigned long, typename
marray_detail::PromoteType< T,
unsigned long >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const unsigned long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned long,
marray_detail::Minus< unsigned
long, T, typename
marray_detail::PromoteType
< unsigned long, T >::type > > 
marray::operator- (const unsigned long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, float,
marray_detail::Minus< T, float,
typename
marray_detail::PromoteType< T,
float >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const float &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, float,
marray_detail::Minus< float, T,
typename
marray_detail::PromoteType
< float, T >::type > > 
marray::operator- (const float &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, double,
marray_detail::Minus< T,
double, typename
marray_detail::PromoteType< T,
double >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, double,
marray_detail::Minus< double,
T, typename
marray_detail::PromoteType
< double, T >::type > > 
marray::operator- (const double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long double,
marray_detail::Minus< T, long
double, typename
marray_detail::PromoteType< T,
long double >::type > > 
marray::operator- (const ViewExpression< E, T > &expression, const long double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long double,
marray_detail::Minus< long
double, T, typename
marray_detail::PromoteType
< long double, T >::type > > 
marray::operator- (const long double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, char,
marray_detail::Times< T, char,
typename
marray_detail::PromoteType< T,
char >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, char,
marray_detail::Times< char, T,
typename
marray_detail::PromoteType
< char, T >::type > > 
marray::operator* (const char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned char,
marray_detail::Times< T,
unsigned char, typename
marray_detail::PromoteType< T,
unsigned char >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const unsigned char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned char,
marray_detail::Times< unsigned
char, T, typename
marray_detail::PromoteType
< unsigned char, T >::type > > 
marray::operator* (const unsigned char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, short,
marray_detail::Times< T, short,
typename
marray_detail::PromoteType< T,
short >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, short,
marray_detail::Times< short, T,
typename
marray_detail::PromoteType
< short, T >::type > > 
marray::operator* (const short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned short,
marray_detail::Times< T,
unsigned short, typename
marray_detail::PromoteType< T,
unsigned short >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const unsigned short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned short,
marray_detail::Times< unsigned
short, T, typename
marray_detail::PromoteType
< unsigned short, T >::type > > 
marray::operator* (const unsigned short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, int,
marray_detail::Times< T, int,
typename
marray_detail::PromoteType< T,
int >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, int,
marray_detail::Times< int, T,
typename
marray_detail::PromoteType
< int, T >::type > > 
marray::operator* (const int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned int,
marray_detail::Times< T,
unsigned int, typename
marray_detail::PromoteType< T,
unsigned int >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const unsigned int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned int,
marray_detail::Times< unsigned
int, T, typename
marray_detail::PromoteType
< unsigned int, T >::type > > 
marray::operator* (const unsigned int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long,
marray_detail::Times< T, long,
typename
marray_detail::PromoteType< T,
long >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long,
marray_detail::Times< long, T,
typename
marray_detail::PromoteType
< long, T >::type > > 
marray::operator* (const long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned long,
marray_detail::Times< T,
unsigned long, typename
marray_detail::PromoteType< T,
unsigned long >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const unsigned long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned long,
marray_detail::Times< unsigned
long, T, typename
marray_detail::PromoteType
< unsigned long, T >::type > > 
marray::operator* (const unsigned long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, float,
marray_detail::Times< T, float,
typename
marray_detail::PromoteType< T,
float >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const float &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, float,
marray_detail::Times< float, T,
typename
marray_detail::PromoteType
< float, T >::type > > 
marray::operator* (const float &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, double,
marray_detail::Times< T,
double, typename
marray_detail::PromoteType< T,
double >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, double,
marray_detail::Times< double,
T, typename
marray_detail::PromoteType
< double, T >::type > > 
marray::operator* (const double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long double,
marray_detail::Times< T, long
double, typename
marray_detail::PromoteType< T,
long double >::type > > 
marray::operator* (const ViewExpression< E, T > &expression, const long double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long double,
marray_detail::Times< long
double, T, typename
marray_detail::PromoteType
< long double, T >::type > > 
marray::operator* (const long double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, char,
marray_detail::DividedBy< T,
char, typename
marray_detail::PromoteType< T,
char >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, char,
marray_detail::DividedBy< char,
T, typename
marray_detail::PromoteType
< char, T >::type > > 
marray::operator/ (const char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned char,
marray_detail::DividedBy< T,
unsigned char, typename
marray_detail::PromoteType< T,
unsigned char >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const unsigned char &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned char,
marray_detail::DividedBy
< unsigned char, T, typename
marray_detail::PromoteType
< unsigned char, T >::type > > 
marray::operator/ (const unsigned char &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, short,
marray_detail::DividedBy< T,
short, typename
marray_detail::PromoteType< T,
short >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, short,
marray_detail::DividedBy
< short, T, typename
marray_detail::PromoteType
< short, T >::type > > 
marray::operator/ (const short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned short,
marray_detail::DividedBy< T,
unsigned short, typename
marray_detail::PromoteType< T,
unsigned short >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const unsigned short &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned short,
marray_detail::DividedBy
< unsigned short, T, typename
marray_detail::PromoteType
< unsigned short, T >::type > > 
marray::operator/ (const unsigned short &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, int,
marray_detail::DividedBy< T,
int, typename
marray_detail::PromoteType< T,
int >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, int,
marray_detail::DividedBy< int,
T, typename
marray_detail::PromoteType
< int, T >::type > > 
marray::operator/ (const int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned int,
marray_detail::DividedBy< T,
unsigned int, typename
marray_detail::PromoteType< T,
unsigned int >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const unsigned int &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned int,
marray_detail::DividedBy
< unsigned int, T, typename
marray_detail::PromoteType
< unsigned int, T >::type > > 
marray::operator/ (const unsigned int &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long,
marray_detail::DividedBy< T,
long, typename
marray_detail::PromoteType< T,
long >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long,
marray_detail::DividedBy< long,
T, typename
marray_detail::PromoteType
< long, T >::type > > 
marray::operator/ (const long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, unsigned long,
marray_detail::DividedBy< T,
unsigned long, typename
marray_detail::PromoteType< T,
unsigned long >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const unsigned long &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, unsigned long,
marray_detail::DividedBy
< unsigned long, T, typename
marray_detail::PromoteType
< unsigned long, T >::type > > 
marray::operator/ (const unsigned long &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, float,
marray_detail::DividedBy< T,
float, typename
marray_detail::PromoteType< T,
float >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const float &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, float,
marray_detail::DividedBy
< float, T, typename
marray_detail::PromoteType
< float, T >::type > > 
marray::operator/ (const float &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, double,
marray_detail::DividedBy< T,
double, typename
marray_detail::PromoteType< T,
double >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, double,
marray_detail::DividedBy
< double, T, typename
marray_detail::PromoteType
< double, T >::type > > 
marray::operator/ (const double &scalar, const ViewExpression< E, T > &expression)
template<class E , class T >
const
BinaryViewExpressionScalarSecond
< E, T, long double,
marray_detail::DividedBy< T,
long double, typename
marray_detail::PromoteType< T,
long double >::type > > 
marray::operator/ (const ViewExpression< E, T > &expression, const long double &scalar)
template<class E , class T >
const
BinaryViewExpressionScalarFirst
< E, T, long double,
marray_detail::DividedBy< long
double, T, typename
marray_detail::PromoteType
< long double, T >::type > > 
marray::operator/ (const long double &scalar, const ViewExpression< E, T > &expression)

Variables

static const bool marray::Const = true
 Flag to be used with the template parameter isConst of View and Iterator.
static const bool marray::Mutable = false
 Flag to be used with the template parameter isConst of View and Iterator.
static const CoordinateOrder marray::defaultOrder = LastMajorOrder
 Default order of coordinate tuples.
static const InitializationSkipping marray::SkipInitialization = InitializationSkipping()
 Flag to indicate initialization skipping.
const bool marray::MARRAY_NO_DEBUG = false
 General assertion testing enabled.
const bool marray::MARRAY_NO_ARG_TEST = false
 Argument testing enabled.

Define Documentation

#define MARRAY_BINARY_OPERATOR ( datatype,
operation,
functorname   ) 

Definition at line 3278 of file marray.hxx.

#define MARRAY_BINARY_OPERATOR_ALL_TYPES ( op,
functorname   ) 
Value:
MARRAY_BINARY_OPERATOR(char, op, functorname) \
    MARRAY_BINARY_OPERATOR(unsigned char, op, functorname) \
    MARRAY_BINARY_OPERATOR(short, op, functorname) \
    MARRAY_BINARY_OPERATOR(unsigned short, op, functorname) \
    MARRAY_BINARY_OPERATOR(int, op, functorname) \
    MARRAY_BINARY_OPERATOR(unsigned int, op, functorname) \
    MARRAY_BINARY_OPERATOR(long, op, functorname) \
    MARRAY_BINARY_OPERATOR(unsigned long, op, functorname) \
    MARRAY_BINARY_OPERATOR(float, op, functorname) \
    MARRAY_BINARY_OPERATOR(double, op, functorname) \
    MARRAY_BINARY_OPERATOR(long double, op, functorname) \

Definition at line 3320 of file marray.hxx.

#define MARRAY_UNARY_OPERATOR ( datatype,
operation,
functorname   ) 
Value:
template<class T, class A> \
inline View<T, false, A>& \
operator operation \
( \
    View<T, false, A>& v, \
    const datatype& x \
) \
{ \
    marray_detail::operate(v, static_cast<T>(x), marray_detail:: functorname <T, T>()); \
    return v; \
} \

Definition at line 3191 of file marray.hxx.

#define MARRAY_UNARY_OPERATOR_ALL_TYPES ( op,
functorname   ) 
Value:
MARRAY_UNARY_OPERATOR(char, op, functorname) \
    MARRAY_UNARY_OPERATOR(unsigned char, op, functorname) \
    MARRAY_UNARY_OPERATOR(short, op, functorname) \
    MARRAY_UNARY_OPERATOR(unsigned short, op, functorname) \
    MARRAY_UNARY_OPERATOR(int, op, functorname) \
    MARRAY_UNARY_OPERATOR(unsigned int, op, functorname) \
    MARRAY_UNARY_OPERATOR(long, op, functorname) \
    MARRAY_UNARY_OPERATOR(unsigned long, op, functorname) \
    MARRAY_UNARY_OPERATOR(float, op, functorname) \
    MARRAY_UNARY_OPERATOR(double, op, functorname) \
    MARRAY_UNARY_OPERATOR(long double, op, functorname) \

Definition at line 3204 of file marray.hxx.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Mon Jun 17 16:31:08 2013 for OpenGM by  doxygen 1.6.3