Public Types | Public Member Functions | Protected Attributes

mln::metal::array3d< T, s, r, c > Struct Template Reference

#include <array3d.hh>

Inheritance diagram for mln::metal::array3d< T, s, r, c >:
Inheritance graph

List of all members.

Public Types

enum  { length = s * r * c }
typedef Object< void > category
typedef array3d< T, s, r, c > exact_t

Public Member Functions

 array3d ()
 array3d (T *ptr)
 array3d (const array3d< T, s, r, c > &rhs)
template<unsigned sli, unsigned row, unsigned col>
get () const
template<unsigned sli, unsigned row, unsigned col>
T & get ()
template<unsigned sli, unsigned row, unsigned col>
T & get_at ()
template<unsigned sli, unsigned row, unsigned col>
get_at () const
template<class U >
array3d< T, s, r, c > operator* (U w)
template<typename U >
array3d< typename
mln::trait::op::plus< T, U >
::ret, s, r, c > 
operator+ (const array3d< U, s, r, c > &rhs) const
array3d< T, s, r, c > & operator+= (const array3d< T, s, r, c > &rhs)
template<typename U >
array3d< typename
mln::trait::op::minus< T, U >
::ret, s, r, c > 
operator- (const array3d< U, s, r, c > &rhs) const
array3d< T, s, r, c > & operator-= (const array3d< T, s, r, c > &rhs)
template<class U >
array3d< typename
mln::trait::op::div< T, U >
::ret, s, r, c > 
operator/ (U w)
array3d< T, s, r, c > & operator= (const array3d< T, s, r, c > &rhs)
operator[] (unsigned i) const
T & operator[] (unsigned i)

Protected Attributes

buffer_ [s *r *c]

Detailed Description

template<typename T, unsigned s, unsigned r, unsigned c>
struct mln::metal::array3d< T, s, r, c >

Definition at line 69 of file array3d.hh.


Member Typedef Documentation

typedef Object<void> mln::Object< array3d< T, s, r, c > >::category [inherited]

Definition at line 174 of file object.hh.

typedef array3d< T, s, r, c > mln::Object< array3d< T, s, r, c > >::exact_t [inherited]

Definition at line 173 of file object.hh.


Member Enumeration Documentation

template<typename T, unsigned s, unsigned r, unsigned c>
anonymous enum
Enumerator:
length 

Definition at line 139 of file array3d.hh.


Constructor & Destructor Documentation

template<typename T , unsigned s, unsigned r, unsigned c>
mln::metal::array3d< T, s, r, c >::array3d (  ) 

Definition at line 212 of file array3d.hh.

template<typename T , unsigned s, unsigned r, unsigned c>
mln::metal::array3d< T, s, r, c >::array3d ( T *  ptr  ) 

Definition at line 217 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
mln::metal::array3d< T, s, r, c >::array3d ( const array3d< T, s, r, c > &  rhs  ) 

Definition at line 226 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.


Member Function Documentation

template<typename T, unsigned s, unsigned r, unsigned c>
template<unsigned sli, unsigned row, unsigned col>
T mln::metal::array3d< T, s, r, c >::get (  )  const [inline]

Definition at line 119 of file array3d.hh.

template<typename T, unsigned s, unsigned r, unsigned c>
template<unsigned sli, unsigned row, unsigned col>
T& mln::metal::array3d< T, s, r, c >::get (  )  [inline]

Definition at line 123 of file array3d.hh.

template<typename T, unsigned s, unsigned r, unsigned c>
template<unsigned sli, unsigned row, unsigned col>
T mln::metal::array3d< T, s, r, c >::get_at (  )  const [inline]

Definition at line 129 of file array3d.hh.

template<typename T, unsigned s, unsigned r, unsigned c>
template<unsigned sli, unsigned row, unsigned col>
T& mln::metal::array3d< T, s, r, c >::get_at (  )  [inline]

Definition at line 134 of file array3d.hh.

template<typename T , unsigned s, unsigned r, unsigned c>
template<class U >
array3d< T, s, r, c > mln::metal::array3d< T, s, r, c >::operator* ( w  ) 

Definition at line 245 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
template<typename U >
array3d< typename mln::trait::op::plus< T, U >::ret, s, r, c > mln::metal::array3d< T, s, r, c >::operator+ ( const array3d< U, s, r, c > &  rhs  )  const

Definition at line 268 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
array3d< T, s, r, c > & mln::metal::array3d< T, s, r, c >::operator+= ( const array3d< T, s, r, c > &  rhs  ) 

Definition at line 277 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
template<typename U >
array3d< typename mln::trait::op::minus< T, U >::ret, s, r, c > mln::metal::array3d< T, s, r, c >::operator- ( const array3d< U, s, r, c > &  rhs  )  const

Definition at line 287 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
array3d< T, s, r, c > & mln::metal::array3d< T, s, r, c >::operator-= ( const array3d< T, s, r, c > &  rhs  ) 

Definition at line 296 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
template<class U >
array3d< typename mln::trait::op::div< T, U >::ret, s, r, c > mln::metal::array3d< T, s, r, c >::operator/ ( w  ) 

Definition at line 257 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T , unsigned s, unsigned r, unsigned c>
array3d< T, s, r, c > & mln::metal::array3d< T, s, r, c >::operator= ( const array3d< T, s, r, c > &  rhs  ) 

Definition at line 233 of file array3d.hh.

References mln::metal::array3d< T, s, r, c >::buffer_.

template<typename T, unsigned s, unsigned r, unsigned c>
T& mln::metal::array3d< T, s, r, c >::operator[] ( unsigned  i  )  [inline]

Definition at line 111 of file array3d.hh.

template<typename T, unsigned s, unsigned r, unsigned c>
T mln::metal::array3d< T, s, r, c >::operator[] ( unsigned  i  )  const [inline]

Definition at line 107 of file array3d.hh.


Member Data Documentation

template<typename T, unsigned s, unsigned r, unsigned c>
T mln::metal::array3d< T, s, r, c >::buffer_[s *r *c] [protected]