NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Configuration Interfaces

This module encompasses the API components used to configure the Iray API as well as closely related interfaces. More...

Classes

class   mi::neuraylib::IDatabase_configuration
  This interface is used to query and change the database configuration. More...
 
class   mi::neuraylib::IDebug_configuration
  This interface represents an interface to set debug options. More...
 
class   mi::neuraylib::IExtension_api
  This interface is used to extent the Iray API. More...
 
class   mi::neuraylib::IGeneral_configuration
  This interface is used to query and change the general configuration. More...
 
class   mi::neuraylib::IGpu_description
  This interface describes a GPU. More...
 
class   mi::neuraylib::IHost_callback
  Abstract interface to report cluster status changes. More...
 
class   mi::neuraylib::IHost_properties
  This interface contains information about a local or remote host. More...
 
class   mi::neuraylib::ILibrary_authenticator
  This interface is used for authenticating the application against the library. More...
 
class   mi::neuraylib::ILogging_configuration
  This interface is used for configuring the logging for the Iray library. More...
 
class   mi::neuraylib::INetwork_configuration
  This interface is used to query and change the networking configuration. More...
 
class   mi::neuraylib::IPlugin_descriptor
  Describes a plugin. More...
 
class   mi::neuraylib::IPlugin_configuration
  This interface is used to load plugins and to query information about loaded plugins. More...
 
class   mi::neuraylib::IRemote_configuration
  This interface is used to query and change the Iray Bridge configuration for both client and server. More...
 
class   mi::neuraylib::ILpe_check_result
  This interface represents the return value of mi::neuraylib::IRendering_configuration::check_light_path_expressions(). More...
 
class   mi::neuraylib::IRendering_configuration
  This interface is used to query and change the rendering configuration. More...
 
class   mi::neuraylib::IScheduling_configuration
  This interface is used to query and change the scheduling configuration. More...
 
class   mi::neuraylib::ITimer
  This is an abstract interface class for a timer. More...
 
class   mi::neuraylib::ITimer_class_factory
  The registration of a timer class requires a factory which constructs an instance during deserialization. More...
 
class   mi::neuraylib::Timer_class_factory< T >
  This mixin class provides a default implementation of the ITimer_class_factory interface. More...
 
class   mi::neuraylib::ITimer_configuration
  This class is used to start and stop timers. More...
 

Enumerations

enum   mi::neuraylib::Log_prefix {
  mi::neuraylib::LOG_PREFIX_TIME = 0x0001,
  mi::neuraylib::LOG_PREFIX_TIME_SECONDS = 0x0002,
  mi::neuraylib::LOG_PREFIX_HOST_THREAD = 0x0004,
  mi::neuraylib::LOG_PREFIX_HOST_NAME = 0x0008,
  mi::neuraylib::LOG_PREFIX_MODULE = 0x0010,
  mi::neuraylib::LOG_PREFIX_CATEGORY = 0x0020,
  mi::neuraylib::LOG_PREFIX_SEVERITY = 0x0040
}
  Components of the log message prefix. More...
 

Functions

static Sint32  mi::neuraylib::ILibrary_authenticator::authenticate (const INeuray *library, const char *vendor_key, Sint32 vendor_key_length, const char *secret_key, Sint32 secret_key_length)
  Convenience function implementing the full library authentication. More...
 

Detailed Description

This module encompasses the API components used to configure the Iray API as well as closely related interfaces.

API components can be obtained from mi::neuraylib::INeuray::get_api_component() or from mi::neuraylib::IPlugin_api::get_api_component().

Enumeration Type Documentation

Components of the log message prefix.

Enumerator
LOG_PREFIX_TIME 

human-readable timestamp

LOG_PREFIX_TIME_SECONDS 

timestamp in secods with milliseconds resolution

LOG_PREFIX_HOST_THREAD 

ID of the host and thread that generate the log message.

LOG_PREFIX_HOST_NAME 

name of the host that generates the log message

LOG_PREFIX_MODULE 

module that generates the log message

LOG_PREFIX_CATEGORY 

category of the log message

LOG_PREFIX_SEVERITY 

severity of the log message

Function Documentation

Sint32 mi::neuraylib::ILibrary_authenticator::authenticate ( const INeuray library,
const char *  vendor_key,
Sint32  vendor_key_length,
const char *  secret_key,
Sint32  secret_key_length 
)
inlinestatic

Convenience function implementing the full library authentication.

The embedding application needs to pass in a pointer to the mi::neuraylib::INeuray interface, the vendor key and the secret key. The function will then perform the authentication towards the library.

The function is inline to avoid passing the secret key to the Iray library which would enable eavesdroppers to get the key. Keys are supposed to be entered as delivered to the application writer (which are hex encoded byte arrays).

Parameters
library A pointer to an instance of mi::neuraylib::INeuray. The method attempts to authenticate this instance of the library.
vendor_key The vendor key assigned to the application writer.
vendor_key_length The size of the vendor key.
secret_key The secret key provided to the application writer.
secret_key_length The size of the secret key.
Returns
Indicates errors in the authentication attempt. Returns 0 if there was no error, or negative values in case of errors. Note that a value of 0 does not imply that the key is valid. Key validity is checked during startup, i.e., in mi::neuraylib::INeuray::start().