メインページ   クラス階層   構成   ファイル一覧   構成メンバ   ファイルメンバ  

MArray2.cc の解説

#include "MArray2.h"
#include "Array-util.h"
#include "lo-error.h"
#include "MArray-defs.h"

MArray2.ccのインクルード依存関係図

Include dependency graph

このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。

Included by dependency graph

ソースコードを見る。

マクロ定義

#define MARRAY_A2S_OP(OP)
#define MARRAY_SA2_OP(OP)
#define MARRAY_A2A2_OP(FCN, OP)

関数

template<class T> MArray2< T > & operator+= (MArray2< T > &a, const T &s)
template<class T> MArray2< T > & operator-= (MArray2< T > &a, const T &s)
template<class T> MArray2< T > & operator+= (MArray2< T > &a, const MArray2< T > &b)
template<class T> MArray2< T > & operator-= (MArray2< T > &a, const MArray2< T > &b)
template<class T> MArray2< T > operator+ (const MArray2< T > &a)
template<class T> MArray2< T > operator- (const MArray2< T > &a)


マクロ定義の解説

#define MARRAY_A2A2_OP FCN,
OP   
 

値:

template <class T> \
  MArray2<T> \
  FCN (const MArray2<T>& a, const MArray2<T>& b) \
  { \
    int a_nr = a.rows (); \
    int a_nc = a.cols (); \
    int b_nr = b.rows (); \
    int b_nc = b.cols (); \
    if (a_nr != b_nr || a_nc != b_nc) \
      { \
        gripe_nonconformant (#FCN, a_nr, a_nc, b_nr, b_nc); \
        return MArray2<T> (); \
      } \
    if (a_nr == 0 || a_nc == 0) \
      return MArray2<T> (a_nr, a_nc); \
    int l = a.length (); \
    MArray2<T> result (a_nr, a_nc); \
    T *r = result.fortran_vec (); \
    const T *x = a.data (); \
    const T *y = b.data (); \
    DO_VV_OP (r, l, x, OP, y); \
    return result; \
  }

MArray2.cc143 行で定義されています。

#define MARRAY_A2S_OP OP   
 

値:

template <class T> \
  MArray2<T> \
  operator OP (const MArray2<T>& a, const T& s) \
  { \
    MArray2<T> result (a.rows (), a.cols ()); \
    T *r = result.fortran_vec (); \
    int l = a.length (); \
    const T *v = a.data (); \
    DO_VS_OP (r, l, v, OP, s); \
    return result; \
  }

MArray2.cc103 行で定義されています。

#define MARRAY_SA2_OP OP   
 

値:

template <class T> \
  MArray2<T> \
  operator OP (const T& s, const MArray2<T>& a) \
  { \
    MArray2<T> result (a.rows (), a.cols ()); \
    T *r = result.fortran_vec (); \
    int l = a.length (); \
    const T *v = a.data (); \
    DO_SV_OP (r, l, s, OP, v); \
    return result; \
  }

MArray2.cc123 行で定義されています。


関数の解説

template<class T>
MArray2<T> operator+ const MArray2< T > &    a
 

MArray2.cc177 行で定義されています。

template<class T>
MArray2<T>& operator+= MArray2< T > &    a,
const MArray2< T > &    b
 

MArray2.cc61 行で定義されています。

参照 b, Array< T >::cols(), DO_VV_OP2, gripe_nonconformant(), Array< T >::length(), と Array< T >::rows().

template<class T>
MArray2<T>& operator+= MArray2< T > &    a,
const T &    s
 

MArray2.cc43 行で定義されています。

参照 DO_VS_OP2.

template<class T>
MArray2<T> operator- const MArray2< T > &    a
 

MArray2.cc184 行で定義されています。

参照 Array< T >::cols(), Array< T >::data(), Array< T >::fortran_vec(), Array< T >::length(), NEG_V, と Array< T >::rows().

template<class T>
MArray2<T>& operator-= MArray2< T > &    a,
const MArray2< T > &    b
 

MArray2.cc82 行で定義されています。

参照 b, Array< T >::cols(), DO_VV_OP2, gripe_nonconformant(), Array< T >::length(), と Array< T >::rows().

template<class T>
MArray2<T>& operator-= MArray2< T > &    a,
const T &    s
 

MArray2.cc51 行で定義されています。

参照 DO_VS_OP2.


Wed Dec 29 12:12:44 2004に生成されました。 doxygen1.2.18
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送