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
itexture.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_ITEXTURE_H
9
#define MI_NEURAYLIB_ITEXTURE_H
10
11
#include <
mi/neuraylib/iscene_element.h
>
12
#include <
mi/neuraylib/typedefs.h
>
13
#include <
mi/neuraylib/version.h
>
14
15
namespace
mi {
16
17
class
IImage;
18
23
enum
Texture_flag
35
{
36
TEXTURE_DO_TRANSFORM
= 4,
37
TEXTURE_DO_REPEAT
= 8,
38
TEXTURE_DO_CROP
= 16,
39
TEXTURE_TORUS_X
= 32,
40
TEXTURE_TORUS_Y
= 64,
41
TEXTURE_TORUS_Z
= 128,
42
TEXTURE_ALT_X
= 256,
43
TEXTURE_ALT_Y
= 512,
44
TEXTURE_ALT_Z
= 1024,
45
TEXTURE_FLAG_FORCE_32_BIT = 0xffffffffU
46
};
47
48
mi_static_assert
(
sizeof
(
Texture_flag
) ==
sizeof
(
Uint32
));
49
51
enum
Texture_compression
52
{
53
TEXTURE_NO_COMPRESSION
= 0,
54
TEXTURE_MEDIUM_COMPRESSION
= 1,
55
TEXTURE_HIGH_COMPRESSION
= 2,
56
TEXTURE_COMPRESSION_FORCE_32_BIT = 0xffffffffU
57
};
58
59
mi_static_assert
(
sizeof
(
Texture_compression
) ==
sizeof
(
Uint32
));
60
68
enum
Filter_type
69
{
70
FILTER_BOX
= 0,
71
FILTER_TRIANGLE
= 1,
72
FILTER_GAUSS
= 2,
73
FILTER_CMITCHELL
= 3,
74
FILTER_CLANCZOS
= 4,
75
FILTER_FAST
= 5,
76
FILTER_FORCE_32_BIT = 0xffffffffU
77
};
78
79
mi_static_assert
(
sizeof
(
Filter_type
) ==
sizeof
(
Uint32
));
80
89
class
ITexture
:
90
public
base::Interface_declare
<0x012c847c,0xaf47,0x4338,0xb7,0xc4,0x78,0x67,0xa3,0x55,0x47,0x18,
91
IScene_element>
92
{
93
public
:
95
96
106
virtual
Sint32
set_image
(
const
char
* name) = 0;
107
111
virtual
const
char
*
get_image
()
const
= 0;
112
114
116
121
virtual
void
set_gamma
(
Float32
gamma) = 0;
122
129
virtual
Float32
get_gamma
()
const
= 0;
130
135
virtual
Float32
get_effective_gamma
()
const
= 0;
136
138
140
146
virtual
Uint32
get_filter
()
const
= 0;
147
153
virtual
void
set_filter
(
Uint32
type) = 0;
154
156
virtual
Float32
get_blur
()
const
= 0;
157
159
virtual
void
set_blur
(
Float32
blur) = 0;
160
162
virtual
const
Float32_4_4_struct
&
get_transform
()
const
= 0;
163
165
virtual
void
set_transform
(
const
Float32_4_4_struct
&
transform
) = 0;
166
168
virtual
const
Float32_3_struct
&
get_repeat
()
const
= 0;
169
171
virtual
void
set_repeat
(
const
Float32_3_struct
& repeat) = 0;
172
174
virtual
const
Float32_3_struct
&
get_crop_min
()
const
= 0;
175
177
virtual
void
set_crop_min
(
const
Float32_3_struct
& crop_min) = 0;
178
180
virtual
const
Float32_3_struct
&
get_crop_max
()
const
= 0;
181
183
virtual
void
set_crop_max
(
const
Float32_3_struct
& crop_max) = 0;
184
188
virtual
Uint32
get_flags
()
const
= 0;
189
193
virtual
void
set_flags
(
Uint32
value) = 0;
194
196
198
206
virtual
void
set_compression
(
Texture_compression
compression) = 0;
207
215
virtual
Texture_compression
get_compression
()
const
= 0;
216
218
219
virtual
const
IImage
* MI_NEURAYLIB_DEPRECATED_METHOD_5_0(access_image)()
const
= 0;
220
221
virtual
IImage
* MI_NEURAYLIB_DEPRECATED_METHOD_5_0(edit_image)()
const
= 0;
222
};
223
// end group mi_neuray_misc
225
226
}
// namespace mi
227
228
#endif // MI_NEURAYLIB_ITEXTURE_H
mi
neuraylib
itexture.h
Generated on Tue Aug 12 2014 15:28:35. Build 221133.3991, Doxygen 1.8.4