HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::PromoteType< T > Struct Template Reference

Promotion classes which provide an interface for elevating and demoting a scalar or VDB type to a higher or lower precision. Integer types preserve their sign. Types promotion are only valid between 8 to 64 bits (long doubles are not supported). More...

#include <Types.h>

Public Types

template<size_t Shift = ~0UL>
using Promote = typename TypeT< OPENVDB_TARGET_BITS(Shift, true)>::type
 
template<size_t Shift = ~0UL>
using Demote = typename TypeT< OPENVDB_TARGET_BITS(Shift, false)>::type
 
using Highest = typename TypeT< 64ul >::type
 
using Lowest = typename TypeT< 8ul >::type
 
using Next = Promote< 1 >
 
using Previous = Demote< 1 >
 

Detailed Description

template<typename T>
struct openvdb::OPENVDB_VERSION_NAME::PromoteType< T >

Promotion classes which provide an interface for elevating and demoting a scalar or VDB type to a higher or lower precision. Integer types preserve their sign. Types promotion are only valid between 8 to 64 bits (long doubles are not supported).

Definition at line 353 of file Types.h.

Member Typedef Documentation

template<typename T>
template<size_t Shift = ~0UL>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Demote = typename TypeT<OPENVDB_TARGET_BITS(Shift, false)>::type

Definition at line 368 of file Types.h.

template<typename T>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Highest = typename TypeT<64ul>::type

Definition at line 371 of file Types.h.

template<typename T>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Lowest = typename TypeT<8ul>::type

Definition at line 372 of file Types.h.

template<typename T>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Next = Promote<1>

Definition at line 373 of file Types.h.

template<typename T>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Previous = Demote<1>

Definition at line 374 of file Types.h.

template<typename T>
template<size_t Shift = ~0UL>
using openvdb::OPENVDB_VERSION_NAME::PromoteType< T >::Promote = typename TypeT<OPENVDB_TARGET_BITS(Shift, true)>::type

Definition at line 367 of file Types.h.


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