NVIDIA IndeX: Math API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages

Namespace for the Base API. More...

Namespaces

 details
 Namespace for details of the Base API.
 

Classes

struct  static_assert_failure
 
struct  static_assert_failure< true >
 
struct  static_assert_test
 
class  Atom32
 A 32-bit unsigned counter with atomic arithmetic, increments, and decrements. More...
 
class  Condition
 Conditions allow threads to signal an event and to wait for such a signal, respectively. More...
 
class  Default_allocator
 
struct  Dup_interface_helper
 
class  Handle
 Handle class template for interfaces, automatizing the lifetime control via reference counting. More...
 
class  IAllocator
 
class  IInterface
 
struct  Message_details
 Structured details to log messages. More...
 
class  ILogger
 The ILogger interface class supports logging of messages. More...
 
class  Log_streambuf
 
class  Log_stream
 Adapts mi::base::ILogger to a standard streaming interface. More...
 
class  Interface_declare
 Mixin class template for deriving new interface declarations. More...
 
class  Interface_implement
 Mixin class template for deriving interface implementations. More...
 
class  Interface_implement_2
 Mixin class template for deriving interface implementations from two interfaces. More...
 
class  Interface_implement_singleton
 Mixin class template for deriving singleton interface implementations, where the reference count is fixed to one. More...
 
class  Interface_merger
 This mixin merges the implementation of one interface with a second interface. More...
 
class  Lock
 Non-recursive lock class. More...
 
class  Recursive_lock
 Recursive lock class. More...
 
class  Plugin
 The abstract base class for plugins. More...
 
class  IPlugin_descriptor
 Represents a plugin. More...
 
class  Std_allocator
 
struct  numeric_traits_base
 Base class for the helper class to deduce properties of numeric types defined in this API. More...
 
struct  numeric_traits
 Helper class to deduce properties of numeric types defined in this API. More...
 
struct  numeric_traits< Sint8 >
 Numeric traits specialization for mi::Sint8. More...
 
struct  numeric_traits< Sint16 >
 Numeric traits specialization for mi::Sint16. More...
 
struct  numeric_traits< Sint32 >
 Numeric traits specialization for mi::Sint32. More...
 
struct  numeric_traits< Sint64 >
 Numeric traits specialization for mi::Sint64. More...
 
struct  numeric_traits< Uint8 >
 Numeric traits specialization for mi::Uint8. More...
 
struct  numeric_traits< Uint16 >
 Numeric traits specialization for mi::Uint16. More...
 
struct  numeric_traits< Uint32 >
 Numeric traits specialization for mi::Uint32. More...
 
struct  numeric_traits< Uint64 >
 Numeric traits specialization for mi::Uint64. More...
 
struct  numeric_traits< Float32 >
 Numeric traits specialization for mi::Float32. More...
 
struct  numeric_traits< Float64 >
 Numeric traits specialization for mi::Float64. More...
 
struct  Uuid
 A 128 bit representation of a universally unique identifier (UUID or GUID). More...
 
class  Uuid_t
 

Typedefs

typedef const
Dup_interface_helper
Dup_interface
 Type for a symbolic constant to trigger a special constructor in the Handle class. More...
 
typedef PluginPlugin_factory (unsigned int index, void *context)
 Typedef for the initializer function to be provided by every plugin. More...
 

Functions

template<class Interface1 , class Interface2 >
bool operator== (const Handle< Interface1 > &lhs, const Handle< Interface2 > &rhs)
 Returns true if the underlying interface pointers are equal.
 
template<class Interface1 , class Interface2 >
bool operator!= (const Handle< Interface1 > &lhs, const Handle< Interface2 > &rhs)
 Returns true if the underlying interface pointers are not equal.
 
template<class Interface >
Handle< Interface > make_handle (Interface *iptr)
 Returns a handle that holds the interface pointer passed in as argument. More...
 
template<class Interface >
Handle< Interface > make_handle_dup (Interface *iptr)
 Converts passed-in interface pointer to a handle, without taking interface over. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & fatal (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & error (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & warning (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & info (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & verbose (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & debug (std::basic_ostream< C, T > &ostream)
 Manipulator for mi::base::Log_stream. More...
 
template<typename C , typename T >
std::basic_ostream< C, T > & operator<< (std::basic_ostream< C, T > &ostream, const Message_details &md)
 Manipulator for mi::base::Log_stream. More...
 
Sint8 min MI_PREVENT_MACRO_EXPAND (const Sint8 a, const Sint8 b)
 
Sint16 min MI_PREVENT_MACRO_EXPAND (const Sint16 a, const Sint16 b)
 
Sint32 min MI_PREVENT_MACRO_EXPAND (const Sint32 a, const Sint32 b)
 
Sint64 min MI_PREVENT_MACRO_EXPAND (const Sint64 a, const Sint64 b)
 
Uint8 min MI_PREVENT_MACRO_EXPAND (const Uint8 a, const Uint8 b)
 
Uint16 min MI_PREVENT_MACRO_EXPAND (const Uint16 a, const Uint16 b)
 
Uint32 min MI_PREVENT_MACRO_EXPAND (const Uint32 a, const Uint32 b)
 
Uint64 min MI_PREVENT_MACRO_EXPAND (const Uint64 a, const Uint64 b)
 
Float32 min MI_PREVENT_MACRO_EXPAND (const Float32 a, const Float32 b)
 
Float64 min MI_PREVENT_MACRO_EXPAND (const Float64 a, const Float64 b)
 
template<class Target , class Source >
Target binary_cast (Source const &val)
 Cast an immutable 'Source' value to an immutable 'Target' value. Use this function as follows: More...
 
bool operator== (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is equal to id2.
 
bool operator!= (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is not equal to id2.
 
bool operator< (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is less than id2.
 
bool operator> (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is greater than id2.
 
bool operator<= (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is less than or equal to id2.
 
bool operator>= (const Uuid &id1, const Uuid &id2)
 Returns true if id1 is greater than or equal to id2.
 
Uint32 uuid_hash32 (const Uuid &id)
 Returns a 32 bit hash value by performing a bitwise xor of all four 32 bit values.
 

Detailed Description

Namespace for the Base API.

Function Documentation

template<class Target , class Source >
Target mi::base::binary_cast ( Source const &  val)
inline

Cast an immutable 'Source' value to an immutable 'Target' value. Use this function as follows:

float fval( 0.0f );
Uint32 uval( binary_cast<Uint32>(fval) );