NVIDIA Iray API
Home
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
ilightprofile.h
Go to the documentation of this file.
1
//*****************************************************************************
2
// Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
3
//*****************************************************************************
6
//*****************************************************************************
7
8
#ifndef MI_NEURAYLIB_ILIGHTPROFILE_H
9
#define MI_NEURAYLIB_ILIGHTPROFILE_H
10
11
#include <
mi/neuraylib/iscene_element.h
>
12
#include <
mi/neuraylib/version.h
>
13
14
namespace
mi {
15
16
namespace
neuraylib {
17
22
enum
Lightprofile_flags
{
35
LIGHTPROFILE_CLOCKWISE
= 1,
37
LIGHTPROFILE_COUNTER_CLOCKWISE
= 2,
39
LIGHTPROFILE_ROTATE_TYPE_B
= 4,
41
LIGHTPROFILE_ROTATE_TYPE_C_90_270
= 8,
42
LIGHTPROFILE_FLAGS_FORCE_32_BIT = 0xffffffffU
43
};
44
45
mi_static_assert
(
sizeof
(
Lightprofile_flags
) ==
sizeof
(
Uint32
));
46
53
enum
Lightprofile_degree
{
54
LIGHTPROFILE_HERMITE_BASE_1
= 1,
55
LIGHTPROFILE_HERMITE_BASE_3
= 3,
56
LIGHTPROFILE_DEGREE_FORCE_32_BIT = 0xffffffffU
57
};
58
59
mi_static_assert
(
sizeof
(
Lightprofile_degree
) ==
sizeof
(
Uint32
));
60
71
class
ILightprofile
:
72
public
base::Interface_declare
<0xa4ac11fd,0x705d,0x4a0a,0x80,0x0b,0x38,0xe5,0x3d,0x46,0x96,0x47,
73
neuraylib::IScene_element>
74
{
75
public
:
95
virtual
Sint32
reset_file
(
96
const
char
* filename,
97
Uint32
resolution_phi = 0,
98
Uint32
resolution_theta = 0,
99
Lightprofile_degree
degree =
LIGHTPROFILE_HERMITE_BASE_1
,
100
Uint32
flags =
LIGHTPROFILE_COUNTER_CLOCKWISE
) = 0;
101
108
virtual
const
char
*
get_filename
()
const
= 0;
109
115
virtual
const
char
*
get_original_filename
()
const
= 0;
116
118
virtual
Uint32
get_resolution_phi
()
const
= 0;
119
121
virtual
Uint32
get_resolution_theta
()
const
= 0;
122
124
virtual
Lightprofile_degree
get_degree
()
const
= 0;
125
129
virtual
Uint32
get_flags
()
const
= 0;
130
135
virtual
Float32
get_phi
(
Uint32
index)
const
= 0;
136
141
virtual
Float32
get_theta
(
Uint32
index)
const
= 0;
142
150
virtual
const
Float32
*
get_data
()
const
= 0;
151
159
virtual
Float32
get_data
(
Uint32
index_phi,
Uint32
index_theta)
const
= 0;
160
165
virtual
Float64
get_candela_multiplier
()
const
= 0;
166
179
virtual
Float32
sample
(
Float32
phi,
Float32
theta,
bool
candela)
const
= 0;
180
};
181
// end group mi_neuray_misc
183
184
}
// namespace neuraylib
185
186
#ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
187
using
neuraylib::ILightprofile
;
188
using
neuraylib::IScene_element
;
189
using
neuraylib::LIGHTPROFILE_CLOCKWISE
;
190
using
neuraylib::LIGHTPROFILE_COUNTER_CLOCKWISE
;
191
using
neuraylib::LIGHTPROFILE_DEGREE_FORCE_32_BIT;
192
using
neuraylib::LIGHTPROFILE_FLAGS_FORCE_32_BIT;
193
using
neuraylib::LIGHTPROFILE_HERMITE_BASE_1
;
194
using
neuraylib::LIGHTPROFILE_HERMITE_BASE_3
;
195
using
neuraylib::LIGHTPROFILE_ROTATE_TYPE_B
;
196
using
neuraylib::LIGHTPROFILE_ROTATE_TYPE_C_90_270
;
197
using
neuraylib::Lightprofile_degree
;
198
using
neuraylib::Lightprofile_flags
;
199
#endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
200
201
}
// namespace mi
202
203
#endif // MI_NEURAYLIB_ILIGHTPROFILE_H
mi
neuraylib
ilightprofile.h
Generated on Fri Mar 4 2016 19:53:39. Build 250909.11169, Doxygen 1.8.4