Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes

mln::metal::mat< n, m, T > Class Template Reference

#include <mat.hh>

Inheritance diagram for mln::metal::mat< n, m, T >:
Inheritance graph

List of all members.

Public Types

enum  { N = n, M = m, dim = n * m }
typedef Object< void > category
typedef T coord
typedef mat< n, m, T > exact_t

Public Member Functions

 mat ()
template<typename U >
 mat (const mat< n, m, U > &rhs)
template<typename F >
 mat (const Function_v2v< F > &f)
 Constructor; coordinates are set by function f.
const T & operator() (unsigned i, unsigned j) const
T & operator() (unsigned i, unsigned j)
template<typename U >
matoperator= (const mat< n, m, U > &rhs)
void set_all (const T &val)
unsigned size () const

Static Public Member Functions

static mat identity ()

Static Public Attributes

static const mat< n, m, T > Id = mat<n,m,T>::identity()

Private Attributes

data_ [n][m]

Detailed Description

template<unsigned n, unsigned m, typename T>
class mln::metal::mat< n, m, T >

Definition at line 85 of file metal/mat.hh.


Member Typedef Documentation

typedef Object<void> mln::Object< mat< n, m, T > >::category [inherited]

Definition at line 174 of file object.hh.

template<unsigned n, unsigned m, typename T>
typedef T mln::metal::mat< n, m, T >::coord

Definition at line 89 of file metal/mat.hh.

typedef mat< n, m, T > mln::Object< mat< n, m, T > >::exact_t [inherited]

Definition at line 173 of file object.hh.


Member Enumeration Documentation

template<unsigned n, unsigned m, typename T>
anonymous enum
Enumerator:
N 
M 
dim 

Definition at line 90 of file metal/mat.hh.


Constructor & Destructor Documentation

template<unsigned n, unsigned m, typename T>
mln::metal::mat< n, m, T >::mat (  )  [inline]

Definition at line 96 of file metal/mat.hh.

template<unsigned n, unsigned m, typename T >
template<typename U >
mln::metal::mat< n, m, T >::mat ( const mat< n, m, U > &  rhs  )  [inline]

Definition at line 282 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_, and mln::rhs.

template<unsigned n, unsigned m, typename T >
template<typename F >
mln::metal::mat< n, m, T >::mat ( const Function_v2v< F > &  f  )  [inline]

Constructor; coordinates are set by function f.

Definition at line 292 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_, and mln::exact().


Member Function Documentation

template<unsigned n, unsigned m, typename T >
mat< n, m, T > mln::metal::mat< n, m, T >::identity (  )  [inline, static]

Definition at line 265 of file metal/mat.hh.

template<unsigned n, unsigned m, typename T >
T & mln::metal::mat< n, m, T >::operator() ( unsigned  i,
unsigned  j 
) [inline]

Definition at line 325 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_.

template<unsigned n, unsigned m, typename T >
const T & mln::metal::mat< n, m, T >::operator() ( unsigned  i,
unsigned  j 
) const [inline]

Definition at line 316 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_.

template<unsigned n, unsigned m, typename T >
template<typename U >
mat< n, m, T > & mln::metal::mat< n, m, T >::operator= ( const mat< n, m, U > &  rhs  )  [inline]

Definition at line 305 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_, and mln::rhs.

template<unsigned n, unsigned m, typename T >
void mln::metal::mat< n, m, T >::set_all ( const T &  val  )  [inline]

Definition at line 333 of file metal/mat.hh.

References mln::metal::mat< n, m, T >::data_.

template<unsigned n, unsigned m, typename T >
unsigned mln::metal::mat< n, m, T >::size (  )  const [inline]

Definition at line 342 of file metal/mat.hh.


Member Data Documentation

template<unsigned n, unsigned m, typename T>
T mln::metal::mat< n, m, T >::data_[n][m] [private]
template<unsigned n, unsigned m, typename T>
const mat< n, m, T > mln::metal::mat< n, m, T >::Id = mat<n,m,T>::identity() [static]

Definition at line 94 of file metal/mat.hh.