Classes | |
struct | abort_ |
struct | and_ |
And type. More... | |
struct | ands |
Ands type. More... | |
struct | array1d |
struct | array2d |
struct | array3d |
struct | bool_< false > |
"false" type. More... | |
struct | bool_< true > |
"true" type. More... | |
struct | const_ |
struct | const_< const T & > |
struct | const_< const T * > |
struct | const_< const T *const > |
struct | const_< const T > |
struct | const_< T & > |
struct | const_< T * > |
struct | const_< T *const > |
struct | const_return_ |
struct | const_return_< const T & > |
struct | const_return_< const T * > |
struct | const_return_< const T *const > |
struct | const_return_< const T > |
struct | const_return_< T & > |
struct | const_return_< T * > |
struct | const_return_< T *const > |
struct | converts_to |
"converts-to" check. More... | |
struct | converts_to< double, def::coord > |
struct | converts_to< double, int > |
struct | converts_to< double, value::int_s< n > > |
struct | converts_to< double, value::int_u< n > > |
struct | converts_to< float, def::coord > |
struct | converts_to< float, int > |
struct | converts_to< float, value::int_s< n > > |
struct | converts_to< float, value::int_u< n > > |
struct | converts_to< T **, U ** > |
struct | converts_to< T *, U * > |
struct | equal |
Definition of a static 'equal' test. More... | |
struct | equal< T, T > |
struct | fix_return |
struct | fix_return< const T & > |
struct | fix_return< const T * > |
struct | fix_return< const T *const > |
struct | fix_return< const T > |
struct | fix_return< T & > |
struct | fix_return< T * > |
struct | fix_return< T *const > |
struct | goes_to |
"goes-to" check. More... | |
struct | if_ |
"if-then-else" expression. More... | |
struct | int_ |
"int" type. More... | |
struct | is |
"is" check. More... | |
struct | is< const T, const U > |
struct | is< T &, U & > |
struct | is< T **, U ** > |
struct | is< T *, U * > |
struct | is_a |
"is_a" check. More... | |
struct | is_a< const T &, M > |
struct | is_a< const T, M > |
struct | is_a< T &, M > |
struct | is_const |
struct | is_const< const T & > |
struct | is_const< const T > |
struct | is_not |
"is_not" check. More... | |
struct | is_not_a |
"is_not_a" static Boolean expression. More... | |
struct | is_not_const |
struct | is_not_const< const T & > |
struct | is_not_const< const T > |
struct | is_not_ref |
struct | is_not_ref< const T & > |
struct | is_not_ref< T & > |
struct | is_ref |
struct | is_ref< const T & > |
struct | is_ref< T & > |
struct | is_unqualif |
class | mat |
struct | not_ |
Negate type. More... | |
struct | not_equal |
struct | not_equal< T, T > |
struct | or_ |
Or type. More... | |
struct | ref |
struct | ref< T & > |
struct | same_coord |
struct | same_point |
struct | templated_by |
struct | templated_by< T< V >, T > |
struct | unconst |
struct | unconst< const T & > |
struct | unconst< const T > |
struct | unptr |
struct | unptr< T * > |
struct | unqualif |
struct | unref |
struct | unref< const T & > |
struct | unref< T & > |
class | vec |
struct | xor_ |
Xor type. More... | |
Namespaces | |
namespace | impl |
Implementation namespace of metal namespace. | |
namespace | internal |
Internal namespace of metal namespace. | |
namespace | math |
Namespace of static mathematical functions. | |
Typedefs | |
typedef bool_< false > | false_ |
typedef bool_< true > | true_ |
Functions | |
template<unsigned row, unsigned col, class T, unsigned r, unsigned c> | |
T | get (const array2d< T, r, c > &arr) |
template<unsigned i, class T, unsigned n> | |
T | get (const array1d< T, n > &arr) |
template<unsigned sli, unsigned row, unsigned col, class T, unsigned s, unsigned r, unsigned c> | |
T | get_ (const array3d< T, s, r, c > &arr) |
template<unsigned sli, unsigned row, unsigned col, class T, unsigned s, unsigned r, unsigned c> | |
T | get_at (const array3d< T, s, r, c > &arr) |
template<unsigned row, unsigned col, class T, unsigned r, unsigned c> | |
T | get_at (const array2d< T, r, c > &arr) |
template<unsigned i, class T, unsigned n> | |
T | get_at (const array1d< T, n > &arr) |
template<unsigned n, typename T, typename S> | |
vec< n, typename mln::trait::op::times< T, S > ::ret > | operator* (const vec< n, T > &lhs, const mln::value::scalar_< S > &s) |
template<unsigned n, typename T, typename U> | |
mln::trait::value_< typename mln::trait::op::times< T, U > ::ret >::sum | operator* (const vec< n, T > &lhs, const vec< n, U > &rhs) |
template<unsigned n, unsigned m, typename T, typename S> | |
mat< n, m, typename mln::trait::op::times< T, S > ::ret > | operator* (const mat< n, m, T > &lhs, const value::scalar_< S > &s) |
template<unsigned n, unsigned m, typename T, typename U> | |
vec< n, typename mln::trait::value_< typename mln::trait::op::times< T, U > ::ret >::sum > | operator* (const mat< n, m, T > &lhs, const vec< m, U > &rhs) |
template<unsigned n, unsigned o, typename T, unsigned m, typename U> | |
mat< n, m, typename mln::trait::value_< typename mln::trait::op::times< T, U > ::ret >::sum > | operator* (const mat< n, o, T > &lhs, const mat< o, m, U > &rhs) |
template<unsigned n, typename T, typename U> | |
vec< n, typename mln::trait::op::plus< T, U > ::ret > | operator+ (const vec< n, T > &lhs, const vec< n, U > &rhs) |
template<unsigned n, unsigned m, typename T, typename U> | |
mat< n, m, typename mln::trait::op::plus< T, U > ::ret > | operator+ (const mat< n, m, T > &lhs, const mat< n, m, U > &rhs) |
template<unsigned n, unsigned m, typename T, typename U> | |
mat< n, m, typename mln::trait::op::plus< T, U > ::ret > | operator+ (mat< n, m, T > &lhs, const mat< n, m, U > &rhs) |
template<unsigned n, typename T, typename U> | |
vec< n, typename mln::trait::op::minus< T, U > ::ret > | operator- (const vec< n, T > &lhs, const vec< n, U > &rhs) |
template<unsigned n, unsigned m, typename T> | |
mat< n, m, typename mln::trait::op::uminus< T > ::ret > | operator- (const mat< n, m, T > &lhs) |
template<unsigned n, unsigned m, typename T, typename U> | |
mat< n, m, typename mln::trait::op::minus< T, U > ::ret > | operator- (const mat< n, m, T > &lhs, const mat< n, m, U > &rhs) |
template<unsigned n, typename T, typename S> | |
vec< n, typename mln::trait::op::div< T, S > ::ret > | operator/ (const vec< n, T > &lhs, const mln::value::scalar_< S > &s) |
template<unsigned n, unsigned m, typename T, typename S> | |
mat< n, m, typename mln::trait::op::div< T, S > ::ret > | operator/ (const mat< n, m, T > &lhs, const value::scalar_< S > &s) |
template<unsigned n, typename T> | |
std::ostream & | operator<< (std::ostream &ostr, const vec< n, T > &v) |
template<unsigned n, unsigned m, typename T> | |
std::ostream & | operator<< (std::ostream &ostr, const mat< n, m, T > &v) |
template<typename T, unsigned r, unsigned c> | |
std::ostream & | operator<< (std::ostream &ostr, const array2d< T, r, c > &rhs) |
template<typename T, unsigned n> | |
std::ostream & | operator<< (std::ostream &ostr, const array1d< T, n > &rhs) |
template<unsigned n, typename T, typename U> | |
bool | operator== (const vec< n, T > &lhs, const vec< n, U > &rhs) |
template<unsigned n, unsigned m, typename T, typename U> | |
bool | operator== (const mat< n, m, T > &lhs, const mat< n, m, U > &rhs) |
template<unsigned n, unsigned m, typename T, typename U> | |
bool | operator== (mat< n, m, T > &lhs, const mat< n, m, U > &rhs) |
template<typename T, typename U> | |
vec< 3, typename mln::trait::op::times< T, U > ::ret > | vprod (const vec< 3, T > &lhs, const vec< 3, U > &rhs) |
typedef bool_<false> mln::metal::false_ |
typedef bool_<true> mln::metal::true_ |
T mln::metal::get | ( | const array2d< T, r, c > & | arr | ) | [inline] |
Definition at line 64 of file metal/array.hh.
T mln::metal::get | ( | const array1d< T, n > & | arr | ) | [inline] |
Definition at line 48 of file metal/array.hh.
T mln::metal::get_ | ( | const array3d< T, s, r, c > & | arr | ) | [inline] |
Definition at line 80 of file metal/array.hh.
T mln::metal::get_at | ( | const array3d< T, s, r, c > & | arr | ) | [inline] |
Definition at line 73 of file metal/array.hh.
T mln::metal::get_at | ( | const array2d< T, r, c > & | arr | ) | [inline] |
Definition at line 57 of file metal/array.hh.
T mln::metal::get_at | ( | const array1d< T, n > & | arr | ) | [inline] |
Definition at line 42 of file metal/array.hh.
Referenced by mln::metal::array3d< T, s, r, c >::get_at(), and mln::metal::array2d< T, r, c >::get_at().
vec< n, typename mln::trait::op::times< T, S >::ret > mln::metal::operator* | ( | const vec< n, T > & | lhs, | |
const mln::value::scalar_< S > & | s | |||
) | [inline] |
mln::trait::value_< typename mln::trait::op::times< T, U >::ret >::sum mln::metal::operator* | ( | const vec< n, T > & | lhs, | |
const vec< n, U > & | rhs | |||
) | [inline] |
mat< n, m, typename mln::trait::op::times< T, S >::ret > mln::metal::operator* | ( | const mat< n, m, T > & | lhs, | |
const value::scalar_< S > & | s | |||
) | [inline] |
vec< n, typename mln::trait::value_< typename mln::trait::op::times< T, U >::ret >::sum > mln::metal::operator* | ( | const mat< n, m, T > & | lhs, | |
const vec< m, U > & | rhs | |||
) | [inline] |
mat< n, m, typename mln::trait::value_< typename mln::trait::op::times< T, U >::ret >::sum > mln::metal::operator* | ( | const mat< n, o, T > & | lhs, | |
const mat< o, m, U > & | rhs | |||
) | [inline] |
vec< n, typename mln::trait::op::plus< T, U >::ret > mln::metal::operator+ | ( | const vec< n, T > & | lhs, | |
const vec< n, U > & | rhs | |||
) | [inline] |
Definition at line 460 of file metal/vec.hh.
mat<n, m, typename mln::trait::op::plus< T , U >::ret> mln::metal::operator+ | ( | const mat< n, m, T > & | lhs, | |
const mat< n, m, U > & | rhs | |||
) | [inline] |
mat<n, m, typename mln::trait::op::plus< T , U >::ret> mln::metal::operator+ | ( | mat< n, m, T > & | lhs, | |
const mat< n, m, U > & | rhs | |||
) | [inline] |
vec< n, typename mln::trait::op::minus< T, U >::ret > mln::metal::operator- | ( | const vec< n, T > & | lhs, | |
const vec< n, U > & | rhs | |||
) | [inline] |
Definition at line 471 of file metal/vec.hh.
mat< n, m, typename mln::trait::op::uminus< T >::ret > mln::metal::operator- | ( | const mat< n, m, T > & | lhs | ) | [inline] |
mat< n, m, typename mln::trait::op::minus< T, U >::ret > mln::metal::operator- | ( | const mat< n, m, T > & | lhs, | |
const mat< n, m, U > & | rhs | |||
) | [inline] |
vec< n, typename mln::trait::op::div< T, S >::ret > mln::metal::operator/ | ( | const vec< n, T > & | lhs, | |
const mln::value::scalar_< S > & | s | |||
) | [inline] |
Definition at line 514 of file metal/vec.hh.
References mln::value::equiv(), mln::value::scalar_< T >::to_equiv(), and mln::literal::zero.
mat< n, m, typename mln::trait::op::div< T, S >::ret > mln::metal::operator/ | ( | const mat< n, m, T > & | lhs, | |
const value::scalar_< S > & | s | |||
) | [inline] |
std::ostream & mln::metal::operator<< | ( | std::ostream & | ostr, | |
const vec< n, T > & | v | |||
) | [inline] |
std::ostream & mln::metal::operator<< | ( | std::ostream & | ostr, | |
const mat< n, m, T > & | v | |||
) | [inline] |
std::ostream& mln::metal::operator<< | ( | std::ostream & | ostr, | |
const array2d< T, r, c > & | rhs | |||
) | [inline] |
std::ostream& mln::metal::operator<< | ( | std::ostream & | ostr, | |
const array1d< T, n > & | rhs | |||
) | [inline] |
bool mln::metal::operator== | ( | const vec< n, T > & | lhs, | |
const vec< n, U > & | rhs | |||
) | [inline] |
Definition at line 448 of file metal/vec.hh.
bool mln::metal::operator== | ( | const mat< n, m, T > & | lhs, | |
const mat< n, m, U > & | rhs | |||
) | [inline] |
bool mln::metal::operator== | ( | mat< n, m, T > & | lhs, | |
const mat< n, m, U > & | rhs | |||
) | [inline] |
vec< 3, typename mln::trait::op::times< T, U >::ret > mln::metal::vprod | ( | const vec< 3, T > & | lhs, | |
const vec< 3, U > & | rhs | |||
) | [inline] |
Definition at line 540 of file metal/vec.hh.