Tiny Vector Matrix library using Expression Templates | Sourceforge Project Page |
#include <iomanip>
#include <tvmet/Functional.h>
#include <tvmet/Io.h>
Include dependency graph for VectorImpl.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Namespaces | |
namespace | tvmet |
Defines | |
#define | TVMET_IMPLEMENT_MACRO(NAME, OP) |
#define | TVMET_IMPLEMENT_MACRO(NAME, OP) |
#define | TVMET_IMPLEMENT_MACRO(NAME) |
#define | TVMET_IMPLEMENT_MACRO(NAME) |
#define | TVMET_IMPLEMENT_MACRO(NAME) |
#define | TVMET_IMPLEMENT_MACRO(NAME) |
#define TVMET_IMPLEMENT_MACRO | ( | NAME | ) |
Value:
template<class T, std::size_t Sz> \ template <class E> \ inline \ Vector<T, Sz>& \ Vector<T, Sz>::alias_##NAME (const XprVector<E, Size>& rhs) { \ typedef Vector<T, Sz> temp_type; \ temp_type(rhs).assign_to(*this, Fcnl_##NAME<value_type, typename E::value_type>()); \ return *this; \ }
#define TVMET_IMPLEMENT_MACRO | ( | NAME | ) |
Value:
template<class T1, std::size_t Sz> \ template <class T2> \ inline \ Vector<T1, Sz>& \ Vector<T1, Sz>::alias_##NAME (const Vector<T2, Size>& rhs) { \ this->alias_##NAME( XprVector<typename Vector<T2, Size>::ConstReference, Size>(rhs.const_ref()) ); \ return *this; \ }
#define TVMET_IMPLEMENT_MACRO | ( | NAME | ) |
Value:
template<class T, std::size_t Sz> \ template <class E> \ inline \ Vector<T, Sz>& \ Vector<T, Sz>::M_##NAME (const XprVector<E, Size>& rhs) { \ rhs.assign_to(*this, Fcnl_##NAME<value_type, typename E::value_type>()); \ return *this; \ }
#define TVMET_IMPLEMENT_MACRO | ( | NAME | ) |
Value:
template<class T1, std::size_t Sz> \ template <class T2> \ inline Vector<T1, Sz>& \ Vector<T1, Sz>::M_##NAME (const Vector<T2, Size>& rhs) { \ this->M_##NAME( XprVector<typename Vector<T2, Size>::ConstReference, Size>(rhs.const_ref()) ); \ return *this; \ }
#define TVMET_IMPLEMENT_MACRO | ( | NAME, | |||
OP | ) |
Value:
template<class T, std::size_t Sz> \ inline \ Vector<T, Sz>& Vector<T, Sz>::operator OP (std::size_t rhs) { \ typedef XprLiteral<value_type> expr_type; \ this->M_##NAME(XprVector<expr_type, Size>(expr_type(rhs))); \ return *this; \ }
#define TVMET_IMPLEMENT_MACRO | ( | NAME, | |||
OP | ) |
Value:
template<class T, std::size_t Sz> \ inline \ Vector<T, Sz>& Vector<T, Sz>::operator OP (value_type rhs) { \ typedef XprLiteral<value_type> expr_type; \ this->M_##NAME(XprVector<expr_type, Size>(expr_type(rhs))); \ return *this; \ }
Author: |