NVIDIA Iray API
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
iimage_api.h
Go to the documentation of this file.
1
//*****************************************************************************
2
// Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3
//*****************************************************************************
6
//*****************************************************************************
7
8
#ifndef MI_NEURAYLIB_IIMAGE_API_H
9
#define MI_NEURAYLIB_IIMAGE_API_H
10
11
#include <
mi/base/interface_declare.h
>
12
13
namespace
mi {
14
15
class
IBuffer;
16
17
namespace
neuraylib {
18
19
class
ICanvas;
20
class
ITile;
21
26
class
IImage_api :
public
33
mi::base::Interface_declare
<0x4c25a4f0,0x2bac,0x4ce6,0xb0,0xab,0x4d,0x94,0xbf,0xfd,0x97,0xa5>
34
{
35
public
:
37
38
60
virtual
ICanvas*
create_canvas
(
61
const
char
* pixel_type,
62
Uint32
width,
63
Uint32
height,
64
Uint32
tile_width = 0,
65
Uint32
tile_height = 0,
66
Uint32
layers = 1,
67
bool
is_cubemap =
false
,
68
Float32
gamma = 0.0f)
const
= 0;
69
83
virtual
ITile*
create_tile
(
84
const
char
* pixel_type,
85
Uint32
width,
86
Uint32
height)
const
= 0;
87
89
91
117
virtual
Sint32
read_raw_pixels
(
118
Uint32
width,
119
Uint32
height,
120
const
ICanvas* canvas,
121
Uint32
canvas_x,
122
Uint32
canvas_y,
123
Uint32
canvas_layer,
124
void
* buffer,
125
bool
buffer_topdown,
126
const
char
* buffer_pixel_type,
127
Uint32
buffer_padding = 0)
const
= 0;
128
154
virtual
Sint32
write_raw_pixels
(
155
Uint32
width,
156
Uint32
height,
157
ICanvas* canvas,
158
Uint32
canvas_x,
159
Uint32
canvas_y,
160
Uint32
canvas_layer,
161
const
void
* buffer,
162
bool
buffer_topdown,
163
const
char
* buffer_pixel_type,
164
Uint32
buffer_padding = 0)
const
= 0;
165
167
169
184
virtual
IBuffer*
create_buffer_from_canvas
(
185
const
ICanvas* canvas,
186
const
char
* image_format,
187
const
char
* pixel_type,
188
const
char
* quality)
const
= 0;
189
197
virtual
ICanvas*
create_canvas_from_buffer
(
198
const
IBuffer* buffer,
199
const
char
* image_format)
const
= 0;
200
202
204
234
virtual
ICanvas*
convert
(
const
ICanvas* canvas,
const
char
* pixel_type)
const
= 0;
235
244
virtual
void
adjust_gamma
( ICanvas* canvas,
Float32
new_gamma)
const
= 0;
245
247
249
256
virtual
Uint32
get_components_per_pixel
(
const
char
* pixel_type)
const
= 0;
257
264
virtual
Uint32
get_bytes_per_component
(
const
char
* pixel_type)
const
= 0;
265
267
};
268
// end group mi_neuray_rendering
270
271
}
// namespace neuraylib
272
273
}
// namespace mi
274
275
#endif // MI_NEURAYLIB_IIMAGE_API_H
mi
neuraylib
iimage_api.h
Generated on Tue Aug 12 2014 15:28:35. Build 221133.3991, Doxygen 1.8.4