Iray SDK API nvidia_logo_transpbg.gif Up
iscene.h
Go to the documentation of this file.
1/***************************************************************************************************
2 * Copyright 2024 NVIDIA Corporation. All rights reserved.
3 **************************************************************************************************/
6
7#ifndef MI_NEURAYLIB_ISCENE_H
8#define MI_NEURAYLIB_ISCENE_H
9
12
13namespace mi {
14
15class IString;
16
17namespace neuraylib {
18
19class IRender_context;
20class ITransaction;
21
42class IScene : public
43 mi::base::Interface_declare<0x44e2a997,0x8a86,0x468d,0x8d,0x31,0xed,0x93,0xc0,0xb9,0xac,0x83>
44{
45public:
61 virtual Sint32 set_rootgroup( const char* root) = 0;
62
66 virtual const IString* get_rootgroup() const = 0;
67
83 virtual Sint32 set_options( const char* options) = 0;
84
88 virtual const IString* get_options() const = 0;
89
107 virtual Sint32 set_camera_instance( const char* camera) = 0;
108
112 virtual const IString* get_camera_instance() const = 0;
113
127 virtual Bbox3_struct get_bbox( Sint32* errors = 0) = 0;
128
158 ITransaction* transaction, const char* render_mode, Sint32* errors = 0) = 0;
159
168 {
171
175
176 // Undocumented, for alignment only.
177 DIRTY_FORCE_32_BIT = 0xffffffffU
178 };
179
188 virtual Sint32 set_dirty( Uint32 flags = 0 ) = 0;
189};
190 // end group mi_neuray_rendering
192
193} // namespace neuraylib
194
195} // namespace mi
196
197#endif // MI_NEURAYLIB_ISCENE_H
A simple string class.
Definition: istring.h:22
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
This interface is used for doing actual rendering and picking.
Definition: irender_context.h:40
The scene is the top-level element describing a subset of DB elements to be rendered.
Definition: iscene.h:44
virtual Sint32 set_camera_instance(const char *camera)=0
Sets the camera instance of this scene.
virtual Sint32 set_dirty(Uint32 flags=0)=0
Marks as dirty some parts of the scene which will be recomputed.
Dirty_flags
Different flags for specifying what is dirty in the scene and needs recomputing.
Definition: iscene.h:168
@ DIRTY_INSTANCE_TRANSFORMS
Set the instance transforms as dirty.
Definition: iscene.h:174
@ DIRTY_NONE
No flags.
Definition: iscene.h:170
virtual Sint32 set_options(const char *options)=0
Sets the options of this scene.
virtual IRender_context * create_render_context(ITransaction *transaction, const char *render_mode, Sint32 *errors=0)=0
Creates a render context suitable for rendering the scene with a given render mode.
virtual Bbox3_struct get_bbox(Sint32 *errors=0)=0
Returns the bounding box of this scene.
virtual Sint32 set_rootgroup(const char *root)=0
Sets the root group of this scene.
virtual const IString * get_camera_instance() const =0
Returns the name of the camera instance of this scene.
virtual const IString * get_options() const =0
Returns the name of the options of this scene.
virtual const IString * get_rootgroup() const =0
Returns the name of the root group of this scene.
A transaction provides a consistent view on the database.
Definition: itransaction.h:81
unsigned int Uint32
32-bit unsigned integer.
Definition: types.h:49
signed int Sint32
32-bit signed integer.
Definition: types.h:46
Mixin class template for deriving new interface declarations.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: neuraylib.h:179
Storage class for an axis-aligned N-dimensional bounding box class template of fixed dimension.
Definition: bbox.h:47
Typedefs for types from the math API.