DiCE API nvidia_logo_transpbg.gif Up
inumber.h
Go to the documentation of this file.
1/***************************************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 **************************************************************************************************/
6
7#ifndef MI_NEURAYLIB_INUMBER_H
8#define MI_NEURAYLIB_INUMBER_H
9
10#include <mi/neuraylib/idata.h>
11
12namespace mi {
13
22class INumber :
23 public base::Interface_declare<0x07366a82,0x3d0c,0x46e9,0x88,0x0e,0xed,0x65,0xba,0xde,0xef,0x2b,
24 IData_simple>
25{
26public:
28 virtual void get_value( bool& val) const = 0;
29
31 virtual void set_value( bool val) = 0;
32
34 virtual void get_value( Uint8& val) const = 0;
35
37 virtual void set_value( Uint8 val) = 0;
38
40 virtual void get_value( Uint16& val) const = 0;
41
43 virtual void set_value( Uint16 val) = 0;
44
46 virtual void get_value( Uint32& val) const = 0;
47
49 virtual void set_value( Uint32 val) = 0;
50
52 virtual void get_value( Uint64& val) const = 0;
53
55 virtual void set_value( Uint64 val) = 0;
56
58 virtual void get_value( Sint8& val) const = 0;
59
61 virtual void set_value( Sint8 val) = 0;
62
64 virtual void get_value( Sint16& val) const = 0;
65
67 virtual void set_value( Sint16 val) = 0;
68
70 virtual void get_value( Sint32& val) const = 0;
71
73 virtual void set_value( Sint32 val) = 0;
74
76 virtual void get_value( Sint64& val) const = 0;
77
79 virtual void set_value( Sint64 val) = 0;
80
82 virtual void get_value( Float32& val) const = 0;
83
85 virtual void set_value( Float32 val) = 0;
86
88 virtual void get_value( Float64& val) const = 0;
89
91 virtual void set_value( Float64 val) = 0;
92
107 template<class T>
108 T get_value() const
109 {
110 T value;
111 get_value( value);
112 return value;
113 }
114};
115
119class IBoolean :
120 public base::Interface_declare<0x121441c4,0xdf23,0x44f7,0xbb,0x34,0xd6,0xa8,0x24,0x66,0x6f,0x84,
121 INumber>
122{
123};
124
130class IUint8 :
131 public base::Interface_declare<0x1ac0f46d,0x0b99,0x4228,0x82,0x9c,0x7c,0xc7,0x3c,0xe2,0x99,0x4a,
132 INumber>
133{
134};
135
141class IUint16 :
142 public base::Interface_declare<0x30139db0,0x6539,0x48b3,0x8f,0xe0,0xf8,0x8b,0x74,0x10,0x9d,0x97,
143 INumber>
144{
145};
146
152class IUint32 :
153 public base::Interface_declare<0x4504ecf0,0x7cb3,0x4396,0xa6,0x78,0xea,0xbe,0xf5,0x48,0x84,0x58,
154 INumber>
155{
156};
157
163class IUint64 :
164 public base::Interface_declare<0x736a2345,0xd6d7,0x4681,0x80,0xd4,0xaf,0x74,0xf7,0x54,0x39,0x13,
165 INumber>
166{
167};
168
174class ISint8 :
175 public base::Interface_declare<0x800b88cc,0xe9ac,0x4c47,0x8c,0x5c,0x11,0x8c,0x89,0x79,0x07,0x56,
176 INumber>
177{
178};
179
185class ISint16 :
186 public base::Interface_declare<0x950c56be,0x37be,0x4be3,0x87,0xe9,0xf2,0x63,0xe4,0xa3,0xbf,0x02,
187 INumber>
188{
189};
190
196class ISint32 :
197 public base::Interface_declare<0x9a756f1c,0x3733,0x4230,0xa9,0x36,0x2e,0x5b,0x57,0xf3,0x4b,0x09,
198 INumber>
199{
200};
201
207class ISint64 :
208 public base::Interface_declare<0x9b84869f,0x3ac6,0x4a93,0x93,0x68,0x37,0x45,0x6c,0xd2,0xe3,0x34,
209 INumber>
210{
211};
212
218class IFloat32 :
219 public base::Interface_declare<0xd12231d8,0x9d61,0x4fa1,0xb6,0xca,0xdc,0x2a,0xb2,0x7e,0x54,0xbd,
220 INumber>
221{
222};
223
229class IFloat64 :
230 public base::Interface_declare<0xd3a0571b,0x2b7b,0x4c20,0xbf,0xbe,0xbb,0xe0,0xe7,0xa6,0x05,0x08,
231 INumber>
232{
233};
234
240class ISize :
241 public base::Interface_declare<0xf86edd31,0x01fa,0x4b66,0x8f,0xe2,0x8b,0xc4,0xf6,0x1b,0x16,0xce,
242 INumber>
243{
244};
245
252 public base::Interface_declare<0xfbff3d24,0x06a1,0x4031,0x85,0xd9,0x83,0x94,0xc0,0x6b,0x4d,0xae,
253 INumber>
254{
255};
256 // end group mi_neuray_simple_types
258
259} // namespace mi
260
261#endif // MI_NEURAYLIB_INUMBER_H
This interface represents bool.
Definition: inumber.h:122
This interface represents mi::Difference.
Definition: inumber.h:254
This interface represents mi::Float32.
Definition: inumber.h:221
This interface represents mi::Float64.
Definition: inumber.h:232
This interface represents simple numeric types.
Definition: inumber.h:25
virtual void get_value(Uint16 &val) const =0
Returns the value of the object as mi::Uint16.
virtual void get_value(Sint32 &val) const =0
Returns the value of the object as mi::Sint32.
virtual void set_value(Uint32 val)=0
Sets the value of the object via a parameter of type mi::Uint32.
virtual void set_value(Sint32 val)=0
Sets the value of the object via a parameter of type mi::Sint32.
virtual void set_value(Sint8 val)=0
Sets the value of the object via a parameter of type mi::Sint8.
virtual void get_value(bool &val) const =0
Returns the value of the object as bool.
virtual void get_value(Sint16 &val) const =0
Returns the value of the object as mi::Sint16.
virtual void set_value(bool val)=0
Sets the value of the object via a parameter of type bool.
virtual void get_value(Sint64 &val) const =0
Returns the value of the object as mi::Sint64.
virtual void get_value(Uint64 &val) const =0
Returns the value of the object as mi::Uint64.
virtual void set_value(Float64 val)=0
Sets the value of the object via a parameter of type mi::Float64.
virtual void get_value(Uint8 &val) const =0
Returns the value of the object as mi::Uint8.
virtual void set_value(Uint16 val)=0
Sets the value of the object via a parameter of type mi::Uint16.
virtual void set_value(Uint64 val)=0
Sets the value of the object via a parameter of type mi::Uint64.
virtual void get_value(Float64 &val) const =0
Returns the value of the object as mi::Float64.
virtual void set_value(Sint64 val)=0
Sets the value of the object via a parameter of type mi::Sint64.
virtual void set_value(Sint16 val)=0
Sets the value of the object via a parameter of type mi::Sint16.
virtual void get_value(Uint32 &val) const =0
Returns the value of the object as mi::Uint32.
virtual void get_value(Float32 &val) const =0
Returns the value of the object as mi::Float32.
virtual void set_value(Uint8 val)=0
Sets the value of the object via a parameter of type mi::Uint8.
virtual void get_value(Sint8 &val) const =0
Returns the value of the object as mi::Sint8.
T get_value() const
Returns the value of the object.
Definition: inumber.h:108
virtual void set_value(Float32 val)=0
Sets the value of the object via a parameter of type mi::Float32.
This interface represents mi::Sint16.
Definition: inumber.h:188
This interface represents mi::Sint32.
Definition: inumber.h:199
This interface represents mi::Sint64.
Definition: inumber.h:210
This interface represents mi::Sint8.
Definition: inumber.h:177
This interface represents mi::Size.
Definition: inumber.h:243
This interface represents mi::Uint16.
Definition: inumber.h:144
This interface represents mi::Uint32.
Definition: inumber.h:155
This interface represents mi::Uint64.
Definition: inumber.h:166
This interface represents mi::Uint8.
Definition: inumber.h:133
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
long long Sint64
64-bit signed integer.
Definition: types.h:61
unsigned long long Uint64
64-bit unsigned integer.
Definition: types.h:62
signed short Sint16
16-bit signed integer.
Definition: types.h:45
unsigned int Uint32
32-bit unsigned integer.
Definition: types.h:49
unsigned char Uint8
8-bit unsigned integer.
Definition: types.h:47
signed char Sint8
8-bit signed integer.
Definition: types.h:44
double Float64
64-bit float.
Definition: types.h:52
float Float32
32-bit float.
Definition: types.h:51
unsigned short Uint16
16-bit unsigned integer.
Definition: types.h:48
signed int Sint32
32-bit signed integer.
Definition: types.h:46
Types.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: dice.h:89