OpenVDB 11.0.0
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
Extrema< VecT, 1 > Class Template Reference

Template specialization of Extrema on vector value types, i.e. rank = 1. More...

#include <nanovdb/util/GridStats.h>

Classes

struct  Pair
 

Public Types

using ValueType = VecT
 

Public Member Functions

__hostdev__ Extrema ()
 
__hostdev__ Extrema (const VecT &v)
 
__hostdev__ Extrema (const VecT &a, const VecT &b)
 
__hostdev__ Extremamin (const VecT &v)
 
__hostdev__ Extremamax (const VecT &v)
 
__hostdev__ Extremaadd (const VecT &v)
 
__hostdev__ Extremaadd (const VecT &v, uint64_t)
 
__hostdev__ Extremaadd (const Extrema &other)
 
__hostdev__ const VecT & min () const
 
__hostdev__ const VecT & max () const
 
__hostdev__ operator bool () const
 
template<typename NodeT >
__hostdev__ void setStats (NodeT &node) const
 

Static Public Member Functions

static __hostdev__ constexpr bool hasMinMax ()
 
static __hostdev__ constexpr bool hasAverage ()
 
static __hostdev__ constexpr bool hasStdDeviation ()
 
static __hostdev__ constexpr bool hasStats ()
 
static __hostdev__ constexpr size_t size ()
 

Protected Types

using Real = typename VecT::ValueType
 

Protected Member Functions

__hostdev__ Extremaadd (const Pair &p)
 

Protected Attributes

struct nanovdb::Extrema< VecT, 1 >::Pair mMin
 
struct nanovdb::Extrema< VecT, 1 >::Pair mMax
 

Detailed Description

template<typename VecT>
class nanovdb::Extrema< VecT, 1 >

Template specialization of Extrema on vector value types, i.e. rank = 1.

Member Typedef Documentation

◆ Real

template<typename VecT >
using Real = typename VecT::ValueType
protected

◆ ValueType

template<typename VecT >
using ValueType = VecT

Constructor & Destructor Documentation

◆ Extrema() [1/3]

template<typename VecT >
__hostdev__ Extrema ( )
inline

◆ Extrema() [2/3]

template<typename VecT >
__hostdev__ Extrema ( const VecT & v)
inline

◆ Extrema() [3/3]

template<typename VecT >
__hostdev__ Extrema ( const VecT & a,
const VecT & b )
inline

Member Function Documentation

◆ add() [1/4]

template<typename VecT >
__hostdev__ Extrema & add ( const Extrema< VecT, 1 > & other)
inline

◆ add() [2/4]

template<typename VecT >
__hostdev__ Extrema & add ( const Pair & p)
inlineprotected

◆ add() [3/4]

template<typename VecT >
__hostdev__ Extrema & add ( const VecT & v)
inline

◆ add() [4/4]

template<typename VecT >
__hostdev__ Extrema & add ( const VecT & v,
uint64_t  )
inline

◆ hasAverage()

template<typename VecT >
static __hostdev__ constexpr bool hasAverage ( )
inlinestaticconstexpr

◆ hasMinMax()

template<typename VecT >
static __hostdev__ constexpr bool hasMinMax ( )
inlinestaticconstexpr

◆ hasStats()

template<typename VecT >
static __hostdev__ constexpr bool hasStats ( )
inlinestaticconstexpr

◆ hasStdDeviation()

template<typename VecT >
static __hostdev__ constexpr bool hasStdDeviation ( )
inlinestaticconstexpr

◆ max() [1/2]

template<typename VecT >
__hostdev__ const VecT & max ( ) const
inline

◆ max() [2/2]

template<typename VecT >
__hostdev__ Extrema & max ( const VecT & v)
inline

◆ min() [1/2]

template<typename VecT >
__hostdev__ const VecT & min ( ) const
inline

◆ min() [2/2]

template<typename VecT >
__hostdev__ Extrema & min ( const VecT & v)
inline

◆ operator bool()

template<typename VecT >
__hostdev__ operator bool ( ) const
inline

◆ setStats()

template<typename VecT >
template<typename NodeT >
__hostdev__ void setStats ( NodeT & node) const
inline

◆ size()

template<typename VecT >
static __hostdev__ constexpr size_t size ( )
inlinestaticconstexpr

Member Data Documentation

◆ mMax

template<typename VecT >
struct nanovdb::Extrema< VecT, 1 >::Pair mMax
protected

◆ mMin

template<typename VecT >
struct nanovdb::Extrema< VecT, 1 >::Pair mMin
protected