Vector4.h File Reference
#include <Core/Vector/Vector3.h>
#include <limits>
#include <Core/Vector/Vector4-Impl.h>

Go to the source code of this file.

Classes

class  CubbyFlow::Vector< T, 4 >
 4-D vector class. More...
 
struct  CubbyFlow::ScalarType< Vector< T, 4 > >
 Returns the type of the value itself. More...
 

Namespaces

 CubbyFlow
 

Typedefs

template<typename T >
using CubbyFlow::Vector4 = Vector< T, 4 >
 Type alias for four dimensional vector. More...
 
using CubbyFlow::Vector4F = Vector4< float >
 Float-type 4D vector. More...
 
using CubbyFlow::Vector4D = Vector4< double >
 Double-type 4D vector. More...
 

Functions

template<typename T >
Vector< T, 4 > CubbyFlow::operator+ (const Vector< T, 4 > &a)
 Positive sign operator. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator- (const Vector< T, 4 > &a)
 Negative sign operator. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator+ (T a, const Vector< T, 4 > &b)
 Computes (a, a, a, a) + (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator+ (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Computes (a.x, a.y, a.z, a.w) + (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator- (const Vector< T, 4 > &a, T b)
 Computes (a.x, a.y, a.z, a.w) - (b, b, b, b). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator- (T a, const Vector< T, 4 > &b)
 Computes (a, a, a, a) - (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator- (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Computes (a.x, a.y, a.z, a.w) - (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator* (const Vector< T, 4 > &a, T b)
 Computes (a.x, a.y, a.z, a.w) * (b, b, b, b). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator* (T a, const Vector< T, 4 > &b)
 Computes (a, a, a, a) * (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator* (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Computes (a.x, a.y, a.z, a.w) * (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator/ (const Vector< T, 4 > &a, T b)
 Computes (a.x, a.y, a.z, a.w) / (b, b, b, b). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator/ (T a, const Vector< T, 4 > &b)
 Computes (a, a, a, a) / (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::operator/ (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Computes (a.x, a.y, a.z, a.w) / (b.x, b.y, b.z, b.w). More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::Min (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Returns element-wise min vector. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::Max (const Vector< T, 4 > &a, const Vector< T, 4 > &b)
 Returns element-wise max vector. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::Clamp (const Vector< T, 4 > &v, const Vector< T, 4 > &low, const Vector< T, 4 > &high)
 Returns element-wise clamped vector. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::Ceil (const Vector< T, 4 > &a)
 Returns element-wise ceiled vector. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::Floor (const Vector< T, 4 > &a)
 Returns element-wise floored vector. More...
 
template<>
constexpr Vector4F CubbyFlow::Zero< Vector4F > ()
 Returns float-type zero vector. More...
 
template<>
constexpr Vector4D CubbyFlow::Zero< Vector4D > ()
 Returns double-type zero vector. More...
 
template<typename T >
Vector< T, 4 > CubbyFlow::MonotonicCatmullRom (const Vector< T, 4 > &v0, const Vector< T, 4 > &v1, const Vector< T, 4 > &v2, const Vector< T, 4 > &v3, T f)
 Computes monotonic Catmull-Rom interpolation. More...