SeExpr
Vec.h File Reference
#include <iosfwd>
#include <cstdlib>
#include <cmath>
#include <iostream>
#include "Platform.h"

Go to the source code of this file.

Classes

struct  SeExpr2::seexpr_static_assert< b, T >
 Static assert error case (false) More...
 
struct  SeExpr2::seexpr_static_assert< true, T >
 Static assert success case. More...
 
struct  SeExpr2::my_enable_if< c, T >
 Enable_if success case (can find the type TYPE) More...
 
struct  SeExpr2::my_enable_if< false, T >
 Enable_if failure case (substitution failure is not an error) More...
 
struct  SeExpr2::static_if< c, T1, T2 >
 Static conditional type true case. More...
 
struct  SeExpr2::static_if< false, T1, T2 >
 Static conditional type false case. More...
 
struct  SeExpr2::Reducer< T, d >
 
struct  SeExpr2::Reducer< T, 1 >
 
struct  SeExpr2::Reducer< T, 2 >
 
struct  SeExpr2::Reducer< T, 3 >
 
struct  SeExpr2::Reducer< T, 4 >
 
class  SeExpr2::Vec< T, d, ref >
 
struct  SeExpr2::Vec< T, d, ref >::INVALID_WITH_VECTOR_VALUE
 
struct  SeExpr2::Vec< T, d, ref >::INVALID_WITH_VECTOR_REFERENCE
 
struct  SeExpr2::Vec< T, d, ref >::INVALID_WITH_DIMENSION
 

Namespaces

namespace  SeExpr2
 

Macros

#define TYPENAME   typename
 

Typedefs

using SeExpr2::Vec1d = Vec<double, 1, false>
 
using SeExpr2::Vec2d = Vec<double, 2, false>
 
using SeExpr2::Vec3d = Vec<double, 3, false>
 
using SeExpr2::Vec4d = Vec<double, 4, false>
 
using SeExpr2::Vec1f = Vec<float, 1, false>
 
using SeExpr2::Vec2f = Vec<float, 2, false>
 
using SeExpr2::Vec3f = Vec<float, 3, false>
 
using SeExpr2::Vec4f = Vec<float, 4, false>
 
using SeExpr2::Vec1dRef = Vec<double, 1, true>
 
using SeExpr2::Vec2dRef = Vec<double, 2, true>
 
using SeExpr2::Vec3dRef = Vec<double, 3, true>
 
using SeExpr2::Vec4dRef = Vec<double, 4, true>
 
using SeExpr2::Vec1fRef = Vec<float, 1, true>
 
using SeExpr2::Vec2fRef = Vec<float, 2, true>
 
using SeExpr2::Vec3fRef = Vec<float, 3, true>
 
using SeExpr2::Vec4fRef = Vec<float, 4, true>
 
using SeExpr2::Vec1dConstRef = Vec<const double, 1, true>
 
using SeExpr2::Vec2dConstRef = Vec<const double, 2, true>
 
using SeExpr2::Vec3dConstRef = Vec<const double, 3, true>
 
using SeExpr2::Vec4dConstRef = Vec<const double, 4, true>
 
using SeExpr2::Vec1fConstRef = Vec<const float, 1, true>
 
using SeExpr2::Vec2fConstRef = Vec<const float, 2, true>
 
using SeExpr2::Vec3fConstRef = Vec<const float, 3, true>
 
using SeExpr2::Vec4fConstRef = Vec<const float, 4, true>
 

Functions

template<class T , int d, bool r>
std::ostream & SeExpr2::operator<< (std::ostream &out, const Vec< T, d, r > &val)
 Output stream.
 

Macro Definition Documentation

◆ TYPENAME