Material Definition Language API
Up
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 2018 NVIDIA Corporation. All rights reserved.
3
**************************************************************************************************/
6
7
#ifndef MI_NEURAYLIB_ITEXTURE_H
8
#define MI_NEURAYLIB_ITEXTURE_H
9
10
#include <
mi/neuraylib/iscene_element.h
>
11
#include <
mi/neuraylib/typedefs.h
>
12
13
namespace
mi {
14
15
namespace
neuraylib {
16
17
class
IImage;
18
23
enum
Texture_compression
25
{
26
TEXTURE_NO_COMPRESSION
= 0,
27
TEXTURE_MEDIUM_COMPRESSION
= 1,
28
TEXTURE_HIGH_COMPRESSION
= 2,
29
TEXTURE_COMPRESSION_FORCE_32_BIT = 0xffffffffU
30
};
31
32
mi_static_assert
(
sizeof
(
Texture_compression
) ==
sizeof
(
Uint32
));
33
40
enum
Filter_type
41
{
42
FILTER_BOX
= 0,
43
FILTER_TRIANGLE
= 1,
44
FILTER_GAUSS
= 2,
45
FILTER_CMITCHELL
= 3,
46
FILTER_CLANCZOS
= 4,
47
FILTER_FAST
= 5,
48
FILTER_FORCE_32_BIT = 0xffffffffU
49
};
50
51
mi_static_assert
(
sizeof
(
Filter_type
) ==
sizeof
(
Uint32
));
52
61
class
ITexture
:
62
public
base::Interface_declare
<0x012c847c,0xaf47,0x4338,0xb7,0xc4,0x78,0x67,0xa3,0x55,0x47,0x18,
63
neuraylib::IScene_element>
64
{
65
public
:
67
68
78
virtual
Sint32
set_image
(
const
char
* name) = 0;
79
83
virtual
const
char
*
get_image
()
const
= 0;
84
86
88
93
virtual
void
set_gamma
(
Float32
gamma) = 0;
94
101
virtual
Float32
get_gamma
()
const
= 0;
102
111
virtual
Float32
get_effective_gamma
(
Uint32
uvtile_id = 0)
const
= 0;
112
114
116
124
virtual
void
set_compression
(
Texture_compression
compression) = 0;
125
133
virtual
Texture_compression
get_compression
()
const
= 0;
134
136
};
137
// end group mi_neuray_misc
139
140
}
// namespace neuraylib
141
142
}
// namespace mi
143
144
#endif // MI_NEURAYLIB_ITEXTURE_H
11 December 2018, 20:41, revision 313481, Doxygen 1.8.4
© 1986, 2018 NVIDIA Corporation.
All rights reserved.