HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nanovdb::Vec4< T > Class Template Reference

A simple vector class with four components, similar to openvdb::math::Vec4. More...

#include <NanoVDB.h>

Public Types

using ValueType = T
 

Public Member Functions

 Vec4 ()=default
 
__hostdev__ Vec4 (T x)
 
__hostdev__ Vec4 (T x, T y, T z, T w)
 
template<typename T2 >
__hostdev__ Vec4 (const Vec4< T2 > &v)
 
template<template< class > class Vec4T, class T2 >
__hostdev__ Vec4 (const Vec4T< T2 > &v)
 
__hostdev__ bool operator== (const Vec4 &rhs) const
 
__hostdev__ bool operator!= (const Vec4 &rhs) const
 
template<template< class > class Vec4T, class T2 >
__hostdev__ Vec4operator= (const Vec4T< T2 > &rhs)
 
__hostdev__ const T & operator[] (int i) const
 
__hostdev__ T & operator[] (int i)
 
template<typename Vec4T >
__hostdev__dot (const Vec4T &v) const
 
__hostdev__lengthSqr () const
 
__hostdev__length () const
 
__hostdev__ Vec4 operator- () const
 
__hostdev__ Vec4 operator* (const Vec4 &v) const
 
__hostdev__ Vec4 operator/ (const Vec4 &v) const
 
__hostdev__ Vec4 operator+ (const Vec4 &v) const
 
__hostdev__ Vec4 operator- (const Vec4 &v) const
 
__hostdev__ Vec4 operator* (const T &s) const
 
__hostdev__ Vec4 operator/ (const T &s) const
 
__hostdev__ Vec4operator+= (const Vec4 &v)
 
__hostdev__ Vec4operator-= (const Vec4 &v)
 
__hostdev__ Vec4operator*= (const T &s)
 
__hostdev__ Vec4operator/= (const T &s)
 
__hostdev__ Vec4normalize ()
 
__hostdev__ Vec4minComponent (const Vec4 &other)
 Perform a component-wise minimum with the other Coord. More...
 
__hostdev__ Vec4maxComponent (const Vec4 &other)
 Perform a component-wise maximum with the other Coord. More...
 

Static Public Attributes

static const int SIZE = 4
 
static const int size = 4
 

Detailed Description

template<typename T>
class nanovdb::Vec4< T >

A simple vector class with four components, similar to openvdb::math::Vec4.

Definition at line 1708 of file NanoVDB.h.

Member Typedef Documentation

template<typename T>
using nanovdb::Vec4< T >::ValueType = T

Definition at line 1715 of file NanoVDB.h.

Constructor & Destructor Documentation

template<typename T>
nanovdb::Vec4< T >::Vec4 ( )
default
template<typename T>
__hostdev__ nanovdb::Vec4< T >::Vec4 ( x)
inlineexplicit

Definition at line 1717 of file NanoVDB.h.

template<typename T>
__hostdev__ nanovdb::Vec4< T >::Vec4 ( x,
y,
z,
w 
)
inline

Definition at line 1721 of file NanoVDB.h.

template<typename T>
template<typename T2 >
__hostdev__ nanovdb::Vec4< T >::Vec4 ( const Vec4< T2 > &  v)
inlineexplicit

Definition at line 1726 of file NanoVDB.h.

template<typename T>
template<template< class > class Vec4T, class T2 >
__hostdev__ nanovdb::Vec4< T >::Vec4 ( const Vec4T< T2 > &  v)
inline

Definition at line 1731 of file NanoVDB.h.

Member Function Documentation

template<typename T>
template<typename Vec4T >
__hostdev__ T nanovdb::Vec4< T >::dot ( const Vec4T &  v) const
inline

Definition at line 1752 of file NanoVDB.h.

template<typename T>
__hostdev__ T nanovdb::Vec4< T >::length ( void  ) const
inline

Definition at line 1757 of file NanoVDB.h.

template<typename T>
__hostdev__ T nanovdb::Vec4< T >::lengthSqr ( ) const
inline

Definition at line 1753 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::maxComponent ( const Vec4< T > &  other)
inline

Perform a component-wise maximum with the other Coord.

Definition at line 1806 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::minComponent ( const Vec4< T > &  other)
inline

Perform a component-wise minimum with the other Coord.

Definition at line 1792 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::normalize ( )
inline

Definition at line 1790 of file NanoVDB.h.

template<typename T>
__hostdev__ bool nanovdb::Vec4< T >::operator!= ( const Vec4< T > &  rhs) const
inline

Definition at line 1737 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator* ( const Vec4< T > &  v) const
inline

Definition at line 1759 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator* ( const T &  s) const
inline

Definition at line 1763 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::operator*= ( const T &  s)
inline

Definition at line 1781 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator+ ( const Vec4< T > &  v) const
inline

Definition at line 1761 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::operator+= ( const Vec4< T > &  v)
inline

Definition at line 1765 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator- ( ) const
inline

Definition at line 1758 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator- ( const Vec4< T > &  v) const
inline

Definition at line 1762 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::operator-= ( const Vec4< T > &  v)
inline

Definition at line 1773 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator/ ( const Vec4< T > &  v) const
inline

Definition at line 1760 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4 nanovdb::Vec4< T >::operator/ ( const T &  s) const
inline

Definition at line 1764 of file NanoVDB.h.

template<typename T>
__hostdev__ Vec4& nanovdb::Vec4< T >::operator/= ( const T &  s)
inline

Definition at line 1789 of file NanoVDB.h.

template<typename T>
template<template< class > class Vec4T, class T2 >
__hostdev__ Vec4& nanovdb::Vec4< T >::operator= ( const Vec4T< T2 > &  rhs)
inline

Definition at line 1739 of file NanoVDB.h.

template<typename T>
__hostdev__ bool nanovdb::Vec4< T >::operator== ( const Vec4< T > &  rhs) const
inline

Definition at line 1736 of file NanoVDB.h.

template<typename T>
__hostdev__ const T& nanovdb::Vec4< T >::operator[] ( int  i) const
inline

Definition at line 1749 of file NanoVDB.h.

template<typename T>
__hostdev__ T& nanovdb::Vec4< T >::operator[] ( int  i)
inline

Definition at line 1750 of file NanoVDB.h.

Member Data Documentation

template<typename T>
const int nanovdb::Vec4< T >::SIZE = 4
static

Definition at line 1713 of file NanoVDB.h.

template<typename T>
const int nanovdb::Vec4< T >::size = 4
static

Definition at line 1714 of file NanoVDB.h.


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