openMSX
Public Member Functions | Public Attributes | Friends | List of all members
gl::vecN< 2, T > Class Template Reference

#include <gl_vec.hh>

Collaboration diagram for gl::vecN< 2, T >:
Collaboration graph
[legend]

Public Member Functions

constexpr vecN ()
 
constexpr vecN (T t)
 
template<typename T2 >
constexpr vecN (const vecN< 2, T2 > &v)
 
template<int N2>
constexpr vecN (const vecN< N2, T > &v)
 
constexpr vecN (T a, T b)
 
constexpr T operator[] (unsigned i) const
 
constexpr T & operator[] (unsigned i)
 
constexpr const T * data () const
 
constexpr T * data ()
 
template<size_t I>
constexpr T get () const noexcept
 
template<size_t I>
constexpr T & get () noexcept
 
constexpr vecNoperator+= (const vecN &v)
 
constexpr vecNoperator-= (const vecN &v)
 
constexpr vecNoperator*= (const vecN &v)
 
constexpr vecNoperator*= (T t)
 
constexpr bool operator== (const vecN &) const =default
 

Public Attributes

x
 
y
 

Friends

constexpr friend vecN operator+ (const vecN &v1, const vecN &v2)
 
constexpr friend vecN operator- (const vecN &v1, const vecN &v2)
 
constexpr friend vecN operator* (T a, const vecN &v)
 
constexpr friend vecN operator* (const vecN &v, T a)
 
constexpr friend vecN operator* (const vecN &v1, const vecN &v2)
 
constexpr friend vecN recip (const vecN &v)
 
constexpr friend vecN operator/ (T a, const vecN &v)
 
constexpr friend vecN operator/ (const vecN &v, T a)
 
constexpr friend vecN operator/ (const vecN &v1, const vecN &v2)
 
std::ostream & operator<< (std::ostream &os, const vecN &v)
 

Detailed Description

template<typename T>
class gl::vecN< 2, T >

Definition at line 35 of file gl_vec.hh.

Constructor & Destructor Documentation

◆ vecN() [1/5]

template<typename T >
constexpr gl::vecN< 2, T >::vecN ( )
inlineconstexpr

Definition at line 41 of file gl_vec.hh.

◆ vecN() [2/5]

template<typename T >
constexpr gl::vecN< 2, T >::vecN ( t)
inlineexplicitconstexpr

Definition at line 44 of file gl_vec.hh.

◆ vecN() [3/5]

template<typename T >
template<typename T2 >
constexpr gl::vecN< 2, T >::vecN ( const vecN< 2, T2 > &  v)
inlineexplicitconstexpr

Definition at line 48 of file gl_vec.hh.

◆ vecN() [4/5]

template<typename T >
template<int N2>
constexpr gl::vecN< 2, T >::vecN ( const vecN< N2, T > &  v)
inlineexplicitconstexpr

Definition at line 51 of file gl_vec.hh.

◆ vecN() [5/5]

template<typename T >
constexpr gl::vecN< 2, T >::vecN ( a,
b 
)
inlineconstexpr

Definition at line 54 of file gl_vec.hh.

Member Function Documentation

◆ data() [1/2]

template<typename T >
constexpr T * gl::vecN< 2, T >::data ( )
inlineconstexpr

Definition at line 69 of file gl_vec.hh.

◆ data() [2/2]

template<typename T >
constexpr const T * gl::vecN< 2, T >::data ( ) const
inlineconstexpr

Definition at line 68 of file gl_vec.hh.

◆ get() [1/2]

template<typename T >
template<size_t I>
constexpr T gl::vecN< 2, T >::get ( ) const
inlineconstexprnoexcept

Definition at line 72 of file gl_vec.hh.

◆ get() [2/2]

template<typename T >
template<size_t I>
constexpr T & gl::vecN< 2, T >::get ( )
inlineconstexprnoexcept

Definition at line 73 of file gl_vec.hh.

◆ operator*=() [1/2]

template<typename T >
constexpr vecN & gl::vecN< 2, T >::operator*= ( const vecN< 2, T > &  v)
inlineconstexpr

Definition at line 78 of file gl_vec.hh.

◆ operator*=() [2/2]

template<typename T >
constexpr vecN & gl::vecN< 2, T >::operator*= ( t)
inlineconstexpr

Definition at line 79 of file gl_vec.hh.

References t.

◆ operator+=()

template<typename T >
constexpr vecN & gl::vecN< 2, T >::operator+= ( const vecN< 2, T > &  v)
inlineconstexpr

Definition at line 76 of file gl_vec.hh.

◆ operator-=()

template<typename T >
constexpr vecN & gl::vecN< 2, T >::operator-= ( const vecN< 2, T > &  v)
inlineconstexpr

Definition at line 77 of file gl_vec.hh.

◆ operator==()

template<typename T >
constexpr bool gl::vecN< 2, T >::operator== ( const vecN< 2, T > &  ) const
constexprdefault

◆ operator[]() [1/2]

template<typename T >
constexpr T & gl::vecN< 2, T >::operator[] ( unsigned  i)
inlineconstexpr

Definition at line 62 of file gl_vec.hh.

References UNREACHABLE.

◆ operator[]() [2/2]

template<typename T >
constexpr T gl::vecN< 2, T >::operator[] ( unsigned  i) const
inlineconstexpr

Definition at line 57 of file gl_vec.hh.

References UNREACHABLE.

Friends And Related Symbol Documentation

◆ operator* [1/3]

template<typename T >
constexpr friend vecN operator* ( const vecN< 2, T > &  v,
a 
)
friend

Definition at line 105 of file gl_vec.hh.

◆ operator* [2/3]

template<typename T >
constexpr friend vecN operator* ( const vecN< 2, T > &  v1,
const vecN< 2, T > &  v2 
)
friend

Definition at line 112 of file gl_vec.hh.

◆ operator* [3/3]

template<typename T >
constexpr friend vecN operator* ( a,
const vecN< 2, T > &  v 
)
friend

Definition at line 98 of file gl_vec.hh.

◆ operator+

template<typename T >
constexpr friend vecN operator+ ( const vecN< 2, T > &  v1,
const vecN< 2, T > &  v2 
)
friend

Definition at line 84 of file gl_vec.hh.

◆ operator-

template<typename T >
constexpr friend vecN operator- ( const vecN< 2, T > &  v1,
const vecN< 2, T > &  v2 
)
friend

Definition at line 91 of file gl_vec.hh.

◆ operator/ [1/3]

template<typename T >
constexpr friend vecN operator/ ( const vecN< 2, T > &  v,
a 
)
friend

Definition at line 132 of file gl_vec.hh.

◆ operator/ [2/3]

template<typename T >
constexpr friend vecN operator/ ( const vecN< 2, T > &  v1,
const vecN< 2, T > &  v2 
)
friend

Definition at line 137 of file gl_vec.hh.

◆ operator/ [3/3]

template<typename T >
constexpr friend vecN operator/ ( a,
const vecN< 2, T > &  v 
)
friend

Definition at line 127 of file gl_vec.hh.

◆ operator<<

template<typename T >
std::ostream & operator<< ( std::ostream &  os,
const vecN< 2, T > &  v 
)
friend

Definition at line 142 of file gl_vec.hh.

◆ recip

template<typename T >
constexpr friend vecN recip ( const vecN< 2, T > &  v)
friend

Definition at line 120 of file gl_vec.hh.

Member Data Documentation

◆ x

template<typename T >
T gl::vecN< 2, T >::x

Definition at line 152 of file gl_vec.hh.

◆ y

template<typename T >
T gl::vecN< 2, T >::y

Definition at line 152 of file gl_vec.hh.


The documentation for this class was generated from the following file: