NTrace
GPU ray tracing framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
FW::Vec4d Class Reference

#include <Math.hpp>

Inherits FW::VectorBase< F64, 4, Vec4d >, and double4.

Public Member Functions

FW_CUDA_FUNC Vec4d (void)
 
FW_CUDA_FUNC Vec4d (F64 a)
 
FW_CUDA_FUNC Vec4d (F64 xx, F64 yy, F64 zz, F64 ww)
 
FW_CUDA_FUNC Vec4d (const Vec2d &xy, F64 zz, F64 ww)
 
FW_CUDA_FUNC Vec4d (const Vec3d &xyz, F64 ww)
 
FW_CUDA_FUNC Vec4d (const Vec2d &xy, const Vec2d &zw)
 
FW_CUDA_FUNC Vec4d (const Vec4i &v)
 
FW_CUDA_FUNC Vec4d (const Vec4f &v)
 
FW_CUDA_FUNC const F64getPtr (void) const
 
FW_CUDA_FUNC F64getPtr (void)
 
FW_CUDA_FUNC operator Vec4i (void) const
 
FW_CUDA_FUNC operator Vec4f (void) const
 
FW_CUDA_FUNC Vec2d getXY (void) const
 
FW_CUDA_FUNC Vec3d getXYZ (void) const
 
FW_CUDA_FUNC Vec3d getXYW (void) const
 
template<class V >
FW_CUDA_FUNC Vec4d (const VectorBase< F64, 4, V > &v)
 
template<class V >
FW_CUDA_FUNC Vec4doperator= (const VectorBase< F64, 4, V > &v)
 
- Public Member Functions inherited from FW::VectorBase< F64, 4, Vec4d >
FW_CUDA_FUNC VectorBase (void)
 
FW_CUDA_FUNC const F64getPtr (void) const
 
FW_CUDA_FUNC F64getPtr (void)
 
FW_CUDA_FUNC const F64get (int idx) const
 
FW_CUDA_FUNC F64get (int idx)
 
FW_CUDA_FUNC F64 set (int idx, const F64 &a)
 
FW_CUDA_FUNC void set (const F64 &a)
 
FW_CUDA_FUNC void set (const F64 *ptr)
 
FW_CUDA_FUNC void set (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC void setZero (void)
 
void print (void) const
 
void sprint (char *vec, size_t s) const
 
FW_CUDA_FUNC bool isZero (void) const
 
FW_CUDA_FUNC F64 lenSqr (void) const
 
FW_CUDA_FUNC F64 length (void) const
 
FW_CUDA_FUNC Vec4d normalized (F64len=(F64) 1) const
 
FW_CUDA_FUNC void normalize (F64len=(F64) 1)
 
FW_CUDA_FUNC F64 min (void) const
 
FW_CUDA_FUNC Vec4d min (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC F64 max (void) const
 
FW_CUDA_FUNC Vec4d max (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC F64 sum (void) const
 
FW_CUDA_FUNC Vec4d abs (void) const
 
FW_CUDA_FUNC Vector< F64, L+1 > toHomogeneous (void) const
 
FW_CUDA_FUNC Vector< F64, L-1 > toCartesian (void) const
 
FW_CUDA_FUNC const F64operator[] (int idx) const
 
FW_CUDA_FUNC F64operator[] (int idx)
 
FW_CUDA_FUNC Vec4doperator= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator+= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator+= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator-= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator-= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator*= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator*= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator/= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator/= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator%= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator%= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator&= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator&= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator|= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator|= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator^= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator^= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator<<= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator<<= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4doperator>>= (const F64 &a)
 
FW_CUDA_FUNC Vec4doperator>>= (const VectorBase< F64, L, V > &v)
 
FW_CUDA_FUNC Vec4d operator+ (void) const
 
FW_CUDA_FUNC Vec4d operator+ (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator+ (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator- (void) const
 
FW_CUDA_FUNC Vec4d operator- (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator- (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator~ (void) const
 
FW_CUDA_FUNC Vec4d operator* (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator* (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator/ (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator/ (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator% (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator% (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator& (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator& (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator| (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator| (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator^ (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator^ (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator<< (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator<< (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d operator>> (const F64 &a) const
 
FW_CUDA_FUNC Vec4d operator>> (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC F64 dot (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC Vec4d clamp (const VectorBase< F64, L, V > &lo, const VectorBase< F64, L, W > &hi) const
 
FW_CUDA_FUNC bool operator== (const VectorBase< F64, L, V > &v) const
 
FW_CUDA_FUNC bool operator!= (const VectorBase< F64, L, V > &v) const
 

Static Public Member Functions

static FW_CUDA_FUNC Vec4d fromPtr (const F64 *ptr)
 

Detailed Description

Definition at line 430 of file Math.hpp.

Constructor & Destructor Documentation

FW_CUDA_FUNC FW::Vec4d::Vec4d ( void  )
inline

Definition at line 433 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( F64  a)
inline

Definition at line 434 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( F64  xx,
F64  yy,
F64  zz,
F64  ww 
)
inline

Definition at line 435 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( const Vec2d xy,
F64  zz,
F64  ww 
)
inline

Definition at line 436 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( const Vec3d xyz,
F64  ww 
)
inline

Definition at line 437 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( const Vec2d xy,
const Vec2d zw 
)
inline

Definition at line 438 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( const Vec4i v)
inline

Definition at line 439 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::Vec4d ( const Vec4f v)
inline

Definition at line 440 of file Math.hpp.

template<class V >
FW_CUDA_FUNC FW::Vec4d::Vec4d ( const VectorBase< F64, 4, V > &  v)
inline

Definition at line 452 of file Math.hpp.

Member Function Documentation

static FW_CUDA_FUNC Vec4d FW::Vec4d::fromPtr ( const F64 ptr)
inlinestatic

Definition at line 444 of file Math.hpp.

FW_CUDA_FUNC const F64* FW::Vec4d::getPtr ( void  ) const
inline

Definition at line 442 of file Math.hpp.

FW_CUDA_FUNC F64* FW::Vec4d::getPtr ( void  )
inline

Definition at line 443 of file Math.hpp.

FW_CUDA_FUNC Vec2d FW::Vec4d::getXY ( void  ) const
inline

Definition at line 448 of file Math.hpp.

FW_CUDA_FUNC Vec3d FW::Vec4d::getXYW ( void  ) const
inline

Definition at line 450 of file Math.hpp.

FW_CUDA_FUNC Vec3d FW::Vec4d::getXYZ ( void  ) const
inline

Definition at line 449 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::operator Vec4f ( void  ) const
inline

Definition at line 447 of file Math.hpp.

FW_CUDA_FUNC FW::Vec4d::operator Vec4i ( void  ) const
inline

Definition at line 446 of file Math.hpp.

template<class V >
FW_CUDA_FUNC Vec4d& FW::Vec4d::operator= ( const VectorBase< F64, 4, V > &  v)
inline

Definition at line 453 of file Math.hpp.


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