NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::neuraylib Namespace Reference

Namespace for the Iray API. More...

Classes

class   Bsdf_buffer
  Example implementation of the abstract interface mi::neuraylib::IBsdf_buffer. More...
 
class   Bsdf_isotropic_data
  Example implementation of the abstract interface mi::neuraylib::IBsdf_isotropic_data. More...
 
class   IBuffer
  Abstract interface for a simple buffer with binary data. More...
 
class   IAllocator
  The Allocator interface class supports allocating and releasing memory dynamically and querying the amount of extra memory used in the integrating application. More...
 
class   IAttribute_container
  An attribute container is a database element that stores attributes and no other data. More...
 
class   IAttribute_set
  The attribute set comprises all attributes attached to a database element. More...
 
class   IAttribute_vector
  Interface representing an attribute vector for triangle meshes, polygon meshes, and subdivision surfaces. More...
 
class   IBsdf_isotropic_data
  Abstract interface for isotropic BSDF data. More...
 
class   IBsdf_buffer
  Abstract interface for a buffer of BSDF values. More...
 
class   IBsdf_measurement
  A scene element that stores measured BSDF data. More...
 
class   ICamera
  The camera defines the viewpoint from which the scene is rendered. More...
 
class   ICanvas_base
  Abstract interface for a canvas (base class). More...
 
class   ICanvas
  Abstract interface for a canvas represented by a rectangular array of tiles. More...
 
class   ICanvas_opengl
  Abstract interface for a canvas that represents an OpenGL buffer. More...
 
class   ICluster_notification_callback
  Abstract interface for giving notifications about errors and status changes. More...
 
class   ICluster_manager_node
  Provides information about a node which is part of a node pool or reserved cluster. More...
 
class   ICluster_manager_cluster
  Represents a cluster which was reserved through the cluster manager. More...
 
class   ICluster_pool_information
  Represents a pool of nodes managed though the cluster manager. More...
 
class   ISoftware_package
  Represents a software package installed on the pool of nodes. More...
 
class   ICluster_manager_connection
  Represents a connection to a cluster manager. More...
 
class   ICluster_manager_configuration
  An API component which can be used to create a connection to a cluster manager. More...
 
class   IDatabase
  This interface is used to interact with the distributed database. More...
 
class   IDatabase_configuration
  This interface is used to query and change the database configuration. More...
 
class   IDebug_configuration
  This interface represents an interface to set debug options. More...
 
class   IDecal
  Decals are sticker-like objects that can be applied to other geometry objects. More...
 
struct   Identifier_struct
  Handle class for type-safety. More...
 
class   Identifier
  Handle class for type-safety. More...
 
class   IDeserializer
  Source for deserializing objects from byte streams. More...
 
class   IDictionary
  The dictionary is a data structure that stores a mapping from a fixed set of keys to a their modifiable values. More...
 
class   IExport_api
  This interface is used to export files. More...
 
class   IExport_result
  This interface represents the result of an export operation. More...
 
class   IExport_result_ext
  This interface represents the result of an export operation. More...
 
class   IExporter
  Abstract interface for exporters. More...
 
class   IExtension_api
  This interface is used to extent the Iray API. More...
 
class   IFactory
  This API component allows the creation, assignment, and cloning of instances of types. More...
 
class   IFreeform_surface
  Interface representing a freeform surface. More...
 
class   ISurface
  A surface of a freeform surface. More...
 
class   ICurve
  A curve used by freeform surfaces. More...
 
class   ICurve_segment
  A curve segment used by freeform surfaces. More...
 
class   ITexture_surface
  A texture surface associated with freeform surfaces. More...
 
class   IFunctor_base
  Base class for functors. More...
 
class   IGeneral_configuration
  This interface is used to query and change the general configuration. More...
 
class   IGeometry_simplifier
  Functor to simplify a triangle mesh. More...
 
class   IGpu_description
  This interface describes a GPU. More...
 
class   IGroup
  A group is a container for other scene elements. More...
 
class   IHost_callback
  Abstract interface to report cluster status changes. More...
 
class   IHost_properties
  This interface contains information about a local or remote host. More...
 
class   IImage
  This interface represents a pixel image file. More...
 
class   IImage_api
  This interface provides various utilities related to canvases and buffers. More...
 
class   IImage_plugin
  Abstract interface for image plugins. More...
 
class   IImage_file
  Abstract interface for image files. More...
 
class   IImpexp_base
  Abstract base interface common for importers and exporters. More...
 
class   IImpexp_state
  This interface represents states that are passed to recursive calls of importers and exporters. More...
 
class   IImport_api
  This interface is used to import files. More...
 
class   IImport_result
  This interface represents the result of an import operation. More...
 
class   IImport_result_ext
  This interface represents the result of an import operation. More...
 
class   IImporter
  Abstract interface for importers. More...
 
class   IInstance
  An instance is a scene element that adds a transformation and attributes to another scene element. More...
 
class   IIrradiance_probes
  Irradiance probes are used to render the irradiance at certain locations in the scene. More...
 
class   ILibrary_authenticator
  This interface is used for authenticating the application against the library. More...
 
class   ILight
  Point, spot, directional and area lighting. More...
 
class   ILightprofile
  This interface represents light profiles. More...
 
class   ILogging_configuration
  This interface is used for configuring the logging for the Iray library. More...
 
class   IMdl_compiled_material
  This interface represents a compiled material. More...
 
class   IMdl_factory
  Factory for MDL interfaces, e.g., modules with presets. More...
 
class   IMdl_function_call
  This interface represents a function call. More...
 
class   IMdl_function_definition
  This interfaces represents a function definition. More...
 
class   IMdl_material_definition
  This interfaces represents a material definition. More...
 
class   IMdl_material_instance
  This interface represents a material instance. More...
 
class   IMdl_module
  This interfaces represents an MDL module. More...
 
class   INetwork_configuration
  This interface is used to query and change the networking configuration. More...
 
class   INetwork_statistics
  This interface is used to inquire statistics about the network usage etc. More...
 
class   INeuray
  This is an object representing the Iray library. More...
 
class   IWorker_node_descriptor
  This interface describes a worker node and its properties. More...
 
class   ICluster_descriptor
  This interface describes a cluster and its properties. More...
 
class   ICluster_property_callback
  Abstract interface for signaling changed cluster properties. More...
 
class   IWorker_node_property_callback
  Abstract interface for signaling changed worker node properties. More...
 
class   IClient_node_callback
  Abstract interface for signaling changed cluster members. More...
 
class   IWorker_node_callback
  Abstract interface for signaling changed cluster members. More...
 
class   IHead_node_callback
  Abstract interface for signaling a change of the cluster application head node. More...
 
class   IShutdown_node_managers_callback
  Abstract interface for signaling a request to shutdown all clients and workers. More...
 
class   IShutdown_cluster_callback
  Abstract interface for signaling a request to shutdown a cluster. More...
 
class   IWorker_process_started_callback
  Abstract interface for indicating that a worker process has been fully started. More...
 
class   INode_manager_cluster
  The interface to a cluster created and managed by the node manager. More...
 
class   ICluster_filter
  A filter used to decide whether a cluster is eligible to be joined. More...
 
class   IWorker_node_filter
  A filter used to decide whether a worker node is eligible to be included in a cluster. More...
 
class   INode_manager_client
  The node manager client allows to start or join Iray clusters built from worker nodes. More...
 
class   IChild_process_resolver
  A filter used to decide if a command string to start a child process is eligible for execution. More...
 
class   INode_manager_worker
  The node manager worker class allows to set properties and announce them to other nodes. More...
 
class   INode_manager_factory
  Factory to create node manager client and worker instances. More...
 
class   IOn_demand_mesh
  Interface representing an on-demand mesh. More...
 
class   IOn_demand_mesh_callback
  Abstract interface for callbacks used by on-demand meshes. More...
 
class   IOptions
  A scene element that stores scene-specific settings. More...
 
class   IPick_array
  This interface represents the return value of a pick operation. More...
 
class   IPick_result
  This interface represents a single object hit by a pick operation. More...
 
class   IPlugin
  The basic interface to be implemented by Iray API plugins. More...
 
class   IPlugin_api
  This abstract interface gives access to the Iray API to plugins. More...
 
class   IPlugin_descriptor
  Describes a plugin. More...
 
class   IPlugin_configuration
  This interface is used to load plugins and to query information about loaded plugins. More...
 
class   IPolygon_connectivity
  A connectivity class for polygon mesh geometry and their attributes. More...
 
class   IPolygon_mesh
  Interface representing a polygon mesh. More...
 
class   IProgress_callback
  Abstract interface to report progress of a long-running operation back to the caller. More...
 
class   IQueue_manager_connection
  Represents a connection to a queue manager server. More...
 
class   IQueue_manager_api
  An API component which can be used to create a connection to a queue manager. More...
 
class   IReader
  A reader supports binary block reads and string-oriented line reads that zero-terminate the result. More...
 
class   IReader_writer_base
  Base interface for readers and writers. More...
 
class   IReady_callback
  Abstract interface to report completion of an asynchronous operation back to the caller. More...
 
class   IRender_context
  This interface is used for doing actual rendering and picking. More...
 
class   IRender_counters
  Performance counters for render modes. More...
 
class   IRender_target_base
  Abstract interface for a render target (base class). More...
 
class   IRender_target
  Abstract interface for a render target. More...
 
class   IRender_target_opengl
  Abstract interface for a render target which is specialized for rendering to an OpenGL buffer. More...
 
class   ILpe_check_result
  This interface represents the return value of mi::neuraylib::IRendering_configuration::check_light_path_expressions(). More...
 
class   IRendering_configuration
  This interface is used to query and change the rendering configuration. More...
 
class   IScene
  The scene is the top-level element describing a subset of DB elements to be rendered. More...
 
class   IScene_element
  Common base interface for all scene elements. More...
 
class   IScheduling_configuration
  This interface is used to query and change the scheduling configuration. More...
 
class   IScope
  A scope is the context which determines the visibility of database elements. More...
 
struct   Tag_struct
  A tag represents a unique identifier for database elements in the database. More...
 
class   Tag
  A tag represents a unique identifier for database elements in the database. More...
 
class   ISerializable
  All serializable objects have to be derived from this interface. More...
 
class   ISerializer
  Target for serializing objects to byte streams. More...
 
class   ISimple_mesh
  Interface representing the geometry of on-demand meshes. More...
 
class   IStream_position
  Represents the position in a data stream. More...
 
class   ISubdivision_surface
  Interface representing a subdivision surface. More...
 
class   ITessellator
  Functor to tessellate a polygon mesh into a triangle mesh. More...
 
class   ITexture
  Textures add image processing options to images. More...
 
class   ITile
  Abstract interface for a tile. More...
 
class   ITimer
  This is an abstract interface class for a timer. More...
 
class   ITimer_class_factory
  The registration of a timer class requires a factory which constructs an instance during deserialization. More...
 
class   Timer_class_factory
  This mixin class provides a default implementation of the mi::neuraylib::ITimer_class_factory interface. More...
 
class   ITimer_configuration
  This class is used to start and stop timers. More...
 
class   ITransaction
  A transaction provides a consistent view on the database. More...
 
struct   Triangle_point_indices_struct
  A triangle defined by three point indices, starting at index 0. More...
 
class   Triangle_point_indices
  A triangle defined by three point indices, starting at index 0. More...
 
class   ITriangle_connectivity
  A connectivity class for triangle mesh geometry and their attributes. More...
 
class   ITriangle_mesh
  Interface representing a triangle mesh. More...
 
class   IUser_class
  Abstract interface for user-defined classes. More...
 
class   User_class
  This mixin class should be used to implement the IUser_class interface. More...
 
class   IUser_class_factory
  Abstract interface for user class factories. More...
 
class   User_class_factory
  This mixin class provides a default implementation of the IUser_class_factory interface. More...
 
class   IVideo_data
  A buffer for video data representing a frame. More...
 
class   IVideo_encoder
  Abstract interface for video encoders. More...
 
class   IVideo_decoder
  Abstract interface for video decoders. More...
 
class   IVideo_plugin
  Abstract interface for video encoder plugins. More...
 
class   IWelder
  Functor to weld a triangle mesh. More...
 
class   IWriter
  A writer supports binary block writes and string-oriented line writes that accept a zero-terminated string as argument. More...
 
class   Mdl_argument_editor
  A wrapper around the interfaces for MDL material instances and function calls. More...
 
class   Mdl_definition_wrapper
  A wrapper around the interfaces for MDL material and function definitions. More...
 

Typedefs

typedef Identifier_struct
< HND_TRIANGLE
Triangle_handle_struct
  Handle for triangles More...
 
typedef Identifier_struct
< HND_POLY
Polygon_handle_struct
  Handle for polygons More...
 
typedef Identifier_struct
< HND_SURFACE
Surface_handle_struct
  Handle for surfaces More...
 
typedef Identifier_struct
< HND_CURVE
Curve_handle_struct
  Handle for curves More...
 
typedef Identifier_struct
< HND_CURVE_SEGMENT
Curve_segment_handle_struct
  Handle for curve segments More...
 
typedef Identifier_struct
< HND_TEXTURE_SURFACE
Texture_surface_handle_struct
  Handle for texture surfaces More...
 
typedef Identifier< HND_TRIANGLE Triangle_handle
  Handle for triangles More...
 
typedef Identifier< HND_POLY Polygon_handle
  Handle for polygons More...
 
typedef Identifier< HND_SURFACE Surface_handle
  Handle for surfaces More...
 
typedef Identifier< HND_CURVE Curve_handle
  Handle for curve More...
 
typedef Identifier
< HND_CURVE_SEGMENT
Curve_segment_handle
  Handle for curve segments More...
 
typedef Identifier
< HND_TEXTURE_SURFACE
Texture_surface_handle
  Handle for texture surfaces More...
 

Enumerations

enum   Propagation_type {
  PROPAGATION_STANDARD,
  PROPAGATION_OVERRIDE
}
  Propagation types for attribute inheritance. More...
 
enum   Mesh_attribute_name { ,
  ATTR_NORMAL = 1,
  ATTR_MOTION = 2,
  ATTR_DERIVATIVES = 3,
  ATTR_MATERIAL_INDEX = 4,
  ATTR_TEXTURE = 6,
  ATTR_TEXTURE_NUM = 256,
  ATTR_MAX = ATTR_TEXTURE + ATTR_TEXTURE_NUM
}
  Symbolic constants for mesh attributes. More...
 
enum   Connectivity_map_type { CONNECTIVITY_MAP_GENERIC }
  Symbolic constants for different connectivity types. More...
 
enum   Bsdf_type {
  BSDF_SCALAR = 0,
  BSDF_RGB = 1
}
  The BSDF type. More...
 
enum   Decal_face_mode {
  DECAL_ON_FRONT_FACE,
  DECAL_ON_BACK_FACE,
  DECAL_ON_FRONT_AND_BACK_FACE
}
  This enum controls whether the decal is applied on the front face, back face, or both faces of the object. More...
 
enum   Identifier_name {
  HND_TRIANGLE,
  HND_POLY,
  HND_SURFACE,
  HND_CURVE,
  HND_CURVE_SEGMENT,
  HND_TEXTURE_SURFACE
}
  Various handle types. More...
 
enum   Basis_type {
  BASIS_BEZIER = 0,
  BASIS_BSPLINE = 1
}
  Different basis types that are supported by freeform surfaces. More...
 
enum   Parameter_space_dimension {
  DIMENSION_U = 0,
  DIMENSION_V = 1
}
  Distinguishes the two dimensions of the parameter space of freeform surfaces. More...
 
enum   Curve_type {
  TRIM_CURVE = 0,
  HOLE_CURVE = 1
}
  Different curve types that are supported by freeform surfaces. More...
 
enum   Impexp_priority {
  IMPEXP_PRIORITY_OVERRIDE = 4,
  IMPEXP_PRIORITY_WELL_DEFINED = 3,
  IMPEXP_PRIORITY_AMBIGUOUS = 2,
  IMPEXP_PRIORITY_GUESS = 1
}
  Confidence in capabilities of an importer or exporter. More...
 
enum   Transformation_type {
  SCALING,
  ROTATION,
  TRANSLATION,
  MATRIX
}
  The four different types of elementary transformations. More...
 
enum   Light_type {
  LIGHT_POINT = 0,
  LIGHT_INFINITE = 2
}
  Supported light types. More...
 
enum   Light_area_shape {
  AREA_NONE = 0,
  AREA_RECTANGLE = 1,
  AREA_DISC = 2,
  AREA_SPHERE = 3,
  AREA_CYLINDER = 4
}
  Supported area light shapes. More...
 
enum   Lightprofile_flags {
  LIGHTPROFILE_CLOCKWISE = 1,
  LIGHTPROFILE_COUNTER_CLOCKWISE = 2,
  LIGHTPROFILE_ROTATE_TYPE_B = 4,
  LIGHTPROFILE_ROTATE_TYPE_C_90_270 = 8
}
  Ordering of horizontal angles in a light profile. More...
 
enum   Lightprofile_degree {
  LIGHTPROFILE_HERMITE_BASE_1 = 1,
  LIGHTPROFILE_HERMITE_BASE_3 = 3
}
  Degree of hermite interpolation. More...
 
enum   Log_prefix {
  LOG_PREFIX_TIME = 0x0001,
  LOG_PREFIX_TIME_SECONDS = 0x0002,
  LOG_PREFIX_HOST_THREAD = 0x0004,
  LOG_PREFIX_HOST_NAME = 0x0008,
  LOG_PREFIX_MODULE = 0x0010,
  LOG_PREFIX_CATEGORY = 0x0020,
  LOG_PREFIX_SEVERITY = 0x0040
}
  Components of the log message prefix. More...
 
enum   Material_slot {
  SLOT_THIN_WALLED,
  SLOT_SURFACE_SCATTERING,
  SLOT_SURFACE_EMISSION_EDF_EMISSION,
  SLOT_SURFACE_EMISSION_INTENSITY,
  SLOT_BACKFACE_SCATTERING,
  SLOT_BACKFACE_EMISSION_EDF_EMISSION,
  SLOT_BACKFACE_EMISSION_INTENSITY,
  SLOT_IOR,
  SLOT_VOLUME_SCATTERING,
  SLOT_VOLUME_ABSORPTION_COEFFICIENT,
  SLOT_VOLUME_SCATTERING_COEFFICIENT,
  SLOT_GEOMETRY_DISPLACEMENT,
  SLOT_GEOMETRY_CUTOUT_OPACITY,
  SLOT_GEOMETRY_NORMAL
}
  Material slots identify parts of a material. More...
 
enum   Element_type {
  ELEMENT_TYPE_INSTANCE = 0,
  ELEMENT_TYPE_GROUP = 1,
  ELEMENT_TYPE_OPTIONS = 2,
  ELEMENT_TYPE_CAMERA = 3,
  ELEMENT_TYPE_LIGHT = 4,
  ELEMENT_TYPE_LIGHTPROFILE = 5 ,
  ELEMENT_TYPE_TEXTURE = 7,
  ELEMENT_TYPE_IMAGE = 8 ,
  ELEMENT_TYPE_TRIANGLE_MESH = 10,
  ELEMENT_TYPE_ATTRIBUTE_CONTAINER = 16,
  ELEMENT_TYPE_POLYGON_MESH = 18 ,
  ELEMENT_TYPE_SUBDIVISION_SURFACE = 23,
  ELEMENT_TYPE_FREEFORM_SURFACE = 24 ,
  ELEMENT_TYPE_MDL_MODULE = 29,
  ELEMENT_TYPE_MDL_FUNCTION_DEFINITION = 30,
  ELEMENT_TYPE_MDL_FUNCTION_CALL = 31,
  ELEMENT_TYPE_MDL_MATERIAL_DEFINITION = 32,
  ELEMENT_TYPE_MDL_MATERIAL_INSTANCE = 33,
  ELEMENT_TYPE_MDL_COMPILED_MATERIAL = 34,
  ELEMENT_TYPE_BSDF_MEASUREMENT = 35,
  ELEMENT_TYPE_IRRADIANCE_PROBES = 36,
  ELEMENT_TYPE_DECAL = 37,
  ELEMENT_TYPE_ON_DEMAND_MESH = 38
}
  Distinguishes scene elements. More...
 
enum   Vertex_feature {
  SMOOTH_VERTEX = 0,
  CORNER_VERTEX = 1
}
  Vertex features. More...
 
enum   Texture_flag {
  TEXTURE_DO_TRANSFORM = 4,
  TEXTURE_DO_REPEAT = 8,
  TEXTURE_DO_CROP = 16,
  TEXTURE_TORUS_X = 32,
  TEXTURE_TORUS_Y = 64,
  TEXTURE_TORUS_Z = 128,
  TEXTURE_ALT_X = 256,
  TEXTURE_ALT_Y = 512,
  TEXTURE_ALT_Z = 1024
}
  Various texture flags. More...
 
enum   Texture_compression {
  TEXTURE_NO_COMPRESSION = 0,
  TEXTURE_MEDIUM_COMPRESSION = 1,
  TEXTURE_HIGH_COMPRESSION = 2
}
  Texture compression method. More...
 
enum   Filter_type {
  FILTER_BOX = 0,
  FILTER_TRIANGLE = 1,
  FILTER_GAUSS = 2,
  FILTER_CMITCHELL = 3,
  FILTER_CLANCZOS = 4,
  FILTER_FAST = 5
}
  Supported filter types. More...
 

Functions

bool  operator== (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is equal to rhs. More...
 
bool  operator!= (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is not equal to rhs. More...
 
bool  operator< (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is less than rhs. More...
 
bool  operator> (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is greater than rhs. More...
 
bool  operator<= (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is less than or equal to rhs. More...
 
bool  operator>= (const Tag &lhs, const Tag &rhs)
  Returns true if lhs is greater than or equal to rhs. More...
 

Variables

const Tag  NULL_TAG
  This value of the tag represents an invalid tag which can not be accessed. More...
 

Detailed Description

Namespace for the Iray API.