GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Macros | Functions
MArray.h File Reference
#include "octave-config.h"
#include "Array.h"
#include "mx-inlines.cc"
Include dependency graph for MArray.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MArray< T >
 Template for N-dimensional array classes with like-type math operators. More...
 
class  MArray< T >
 Template for N-dimensional array classes with like-type math operators. More...
 

Macros

#define INSTANTIATE_MARRAY_FRIENDS(T, API)
 
#define INSTANTIATE_MDIAGARRAY2_FRIENDS(T, API)
 
#define MARRAY_FORWARD_DEFS(B, R, T)
 

Functions

template<typename T >
MArray< T > operator* (const MArray< T > &, const T &)
 
template<typename T >
MArray< T > operator* (const T &, const MArray< T > &)
 
template<typename T >
MArray< T > & operator*= (MArray< T > &, const T &)
 
template<typename T >
MArray< T > operator+ (const MArray< T > &)
 
template<typename T >
MArray< T > operator+ (const MArray< T > &, const T &)
 
template<typename T >
MArray< T > operator+ (const T &, const MArray< T > &)
 
template<typename T >
MArray< T > operator+ (const MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > & operator+= (MArray< T > &, const T &)
 
template<typename T >
MArray< T > & operator+= (MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > operator- (const MArray< T > &)
 
template<typename T >
MArray< T > operator- (const MArray< T > &, const T &)
 
template<typename T >
MArray< T > operator- (const T &, const MArray< T > &)
 
template<typename T >
MArray< T > operator- (const MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > & operator-= (MArray< T > &, const T &)
 
template<typename T >
MArray< T > & operator-= (MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > operator/ (const MArray< T > &, const T &)
 
template<typename T >
MArray< T > operator/ (const T &, const MArray< T > &)
 
template<typename T >
MArray< T > & operator/= (MArray< T > &, const T &)
 
template<typename T >
MArray< T > product (const MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > & product_eq (MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > quotient (const MArray< T > &, const MArray< T > &)
 
template<typename T >
MArray< T > & quotient_eq (MArray< T > &, const MArray< T > &)
 

Macro Definition Documentation

#define INSTANTIATE_MARRAY_FRIENDS (   T,
  API 
)
Value:
template API MArray<T>& operator += (MArray<T>&, const T&); \
template API MArray<T>& operator -= (MArray<T>&, const T&); \
template API MArray<T>& operator *= (MArray<T>&, const T&); \
template API MArray<T>& operator /= (MArray<T>&, const T&); \
template API MArray<T>& operator += (MArray<T>&, const MArray<T>&); \
template API MArray<T>& operator -= (MArray<T>&, const MArray<T>&); \
template API MArray<T>& product_eq (MArray<T>&, const MArray<T>&); \
template API MArray<T>& quotient_eq (MArray<T>&, const MArray<T>&); \
template API MArray<T> operator + (const MArray<T>&); \
template API MArray<T> operator - (const MArray<T>&); \
template API MArray<T> operator + (const MArray<T>&, const T&); \
template API MArray<T> operator - (const MArray<T>&, const T&); \
template API MArray<T> operator * (const MArray<T>&, const T&); \
template API MArray<T> operator / (const MArray<T>&, const T&); \
template API MArray<T> operator + (const T&, const MArray<T>&); \
template API MArray<T> operator - (const T&, const MArray<T>&); \
template API MArray<T> operator * (const T&, const MArray<T>&); \
template API MArray<T> operator / (const T&, const MArray<T>&); \
template API MArray<T> operator + (const MArray<T>&, const MArray<T>&); \
template API MArray<T> operator - (const MArray<T>&, const MArray<T>&); \
template API MArray<T> quotient (const MArray<T>&, const MArray<T>&); \
template API MArray<T> product (const MArray<T>&, const MArray<T>&);
MArray< T > & operator+=(MArray< T > &, const T &)
Definition: MArray.cc:216
MArray< T > & operator*=(MArray< T > &, const T &)
Definition: MArray.cc:238
MArray< T > & quotient_eq(MArray< T > &, const MArray< T > &)
Definition: MArray.cc:295
Template for N-dimensional array classes with like-type math operators.
Definition: MArray.h:32
MArray< T > quotient(const MArray< T > &, const MArray< T > &)
Definition: MArray.cc:347
MArray< T > & operator/=(MArray< T > &, const T &)
Definition: MArray.cc:249
MArray< T > operator*(const MArray< T > &, const T &)
Definition: MArray.cc:316
MArray< T > operator-(const MArray< T > &)
Definition: MArray.cc:358
MArray< T > operator/(const MArray< T > &, const T &)
Definition: MArray.cc:317
MArray< T > operator+(const MArray< T > &)
Definition: MArray.cc:351
MArray< T > product(const MArray< T > &, const MArray< T > &)
Definition: MArray.cc:346
MArray< T > & operator-=(MArray< T > &, const T &)
Definition: MArray.cc:227
MArray< T > & product_eq(MArray< T > &, const MArray< T > &)
Definition: MArray.cc:284

Definition at line 225 of file MArray.h.

#define INSTANTIATE_MDIAGARRAY2_FRIENDS (   T,
  API 
)
Value:
template API MDiagArray2<T> operator + (const MDiagArray2<T>&); \
template API MDiagArray2<T> operator - (const MDiagArray2<T>&); \
template API MDiagArray2<T> operator * (const MDiagArray2<T>&, const T&); \
template API MDiagArray2<T> operator / (const MDiagArray2<T>&, const T&); \
template API MDiagArray2<T> operator * (const T&, const MDiagArray2<T>&); \
template API MDiagArray2<T> operator + (const MDiagArray2<T>&, \
const MDiagArray2<T>&); \
template API MDiagArray2<T> operator - (const MDiagArray2<T>&, \
const MDiagArray2<T>&); \
template API MDiagArray2<T> product (const MDiagArray2<T>&, \
const MDiagArray2<T>&);
MArray< T > operator*(const MArray< T > &, const T &)
Definition: MArray.cc:316
MArray< T > operator-(const MArray< T > &)
Definition: MArray.cc:358
Template for two dimensional diagonal array with math operators.
Definition: MDiagArray2.h:33
MArray< T > operator/(const MArray< T > &, const T &)
Definition: MArray.cc:317
MArray< T > operator+(const MArray< T > &)
Definition: MArray.cc:351
MArray< T > product(const MArray< T > &, const MArray< T > &)
Definition: MArray.cc:346

Definition at line 250 of file MArray.h.

#define MARRAY_FORWARD_DEFS (   B,
  R,
 
)

Definition at line 126 of file MArray.h.

Function Documentation

template<typename T >
MArray<T> operator* ( const MArray< T > &  ,
const T &   
)

Definition at line 316 of file MArray.cc.

template<typename T >
MArray<T> operator* ( const T &  ,
const MArray< T > &   
)

Definition at line 331 of file MArray.cc.

template<typename T >
MArray<T>& operator*= ( MArray< T > &  ,
const T &   
)

Definition at line 238 of file MArray.cc.

References a, Array< T >::is_shared(), mx_inline_mul2(), and s.

template<typename T >
MArray<T> operator+ ( const MArray< T > &  )

Definition at line 351 of file MArray.cc.

References a.

template<typename T >
MArray<T> operator+ ( const MArray< T > &  ,
const T &   
)

Definition at line 314 of file MArray.cc.

template<typename T >
MArray<T> operator+ ( const T &  ,
const MArray< T > &   
)

Definition at line 329 of file MArray.cc.

template<typename T >
MArray<T> operator+ ( const MArray< T > &  ,
const MArray< T > &   
)

Definition at line 344 of file MArray.cc.

template<typename T >
MArray<T>& operator+= ( MArray< T > &  ,
const T &   
)

Definition at line 216 of file MArray.cc.

References a, Array< T >::is_shared(), mx_inline_add2(), and s.

template<typename T >
MArray<T>& operator+= ( MArray< T > &  ,
const MArray< T > &   
)

Definition at line 262 of file MArray.cc.

References a, b, Array< T >::is_shared(), and mx_inline_add2().

template<typename T >
MArray<T> operator- ( const MArray< T > &  )

Definition at line 358 of file MArray.cc.

References a, and mx_inline_uminus().

template<typename T >
MArray<T> operator- ( const MArray< T > &  ,
const T &   
)

Definition at line 315 of file MArray.cc.

template<typename T >
MArray<T> operator- ( const T &  ,
const MArray< T > &   
)

Definition at line 330 of file MArray.cc.

template<typename T >
MArray<T> operator- ( const MArray< T > &  ,
const MArray< T > &   
)

Definition at line 345 of file MArray.cc.

template<typename T >
MArray<T>& operator-= ( MArray< T > &  ,
const T &   
)

Definition at line 227 of file MArray.cc.

References a, Array< T >::is_shared(), mx_inline_sub2(), and s.

template<typename T >
MArray<T>& operator-= ( MArray< T > &  ,
const MArray< T > &   
)

Definition at line 273 of file MArray.cc.

References a, b, Array< T >::is_shared(), and mx_inline_sub2().

template<typename T >
MArray<T> operator/ ( const MArray< T > &  ,
const T &   
)

Definition at line 317 of file MArray.cc.

template<typename T >
MArray<T> operator/ ( const T &  ,
const MArray< T > &   
)

Definition at line 332 of file MArray.cc.

template<typename T >
MArray<T>& operator/= ( MArray< T > &  ,
const T &   
)

Definition at line 249 of file MArray.cc.

References a, Array< T >::is_shared(), mx_inline_div2(), and s.

template<typename T >
MArray<T> product ( const MArray< T > &  ,
const MArray< T > &   
)

Definition at line 346 of file MArray.cc.

Referenced by product_eq().

template<typename T >
MArray<T>& product_eq ( MArray< T > &  ,
const MArray< T > &   
)

Definition at line 284 of file MArray.cc.

References a, b, Array< T >::is_shared(), mx_inline_mul2(), and product().

template<typename T >
MArray<T> quotient ( const MArray< T > &  ,
const MArray< T > &   
)

Definition at line 347 of file MArray.cc.

Referenced by quotient_eq().

template<typename T >
MArray<T>& quotient_eq ( MArray< T > &  ,
const MArray< T > &   
)

Definition at line 295 of file MArray.cc.

References a, b, Array< T >::is_shared(), mx_inline_div2(), and quotient().