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
iserializer.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_ISERIALIZER_H
9
#define MI_NEURAYLIB_ISERIALIZER_H
10
11
#include <
mi/base/interface_declare.h
>
12
13
namespace
mi {
14
15
class
ISerializer;
16
class
IDeserializer;
17
29
class
ISerializable :
35
public
base::Interface_declare<0x7a70f2fb,0x1b27,0x416f,0xaa,0x21,0x16,0xc7,0xb4,0xd4,0x1f,0xfc>
36
{
37
public
:
45
virtual
base::Uuid
get_class_id
()
const
= 0;
46
51
virtual
void
serialize
(
52
ISerializer* serializer)
const
= 0;
53
58
virtual
void
deserialize
(
59
IDeserializer* deserializer) = 0;
60
};
61
70
class
ISerializer
:
71
public
base::Interface_declare
<0xdcf5a659,0x2b06,0x436b,0x82,0x55,0x36,0x9d,0xbd,0xe7,0x42,0xb1>
72
{
73
public
:
77
virtual
bool
serialize
(
const
ISerializable
* serializable) = 0;
78
83
virtual
bool
write
(
const
bool
* value,
Size
count = 1) = 0;
84
90
virtual
bool
write
(
const
Uint8
* value,
Size
count = 1) = 0;
91
96
virtual
bool
write
(
const
Uint16
* value,
Size
count = 1) = 0;
97
102
virtual
bool
write
(
const
Uint32
* value,
Size
count = 1) = 0;
103
108
virtual
bool
write
(
const
Uint64
* value,
Size
count = 1) = 0;
109
114
virtual
bool
write
(
const
Sint8
* value,
Size
count = 1) = 0;
115
120
virtual
bool
write
(
const
Sint16
* value,
Size
count = 1) = 0;
121
126
virtual
bool
write
(
const
Sint32
* value,
Size
count = 1) = 0;
127
132
virtual
bool
write
(
const
Sint64
* value,
Size
count = 1) = 0;
133
138
virtual
bool
write
(
const
Float32
* value,
Size
count = 1) = 0;
139
144
virtual
bool
write
(
const
Float64
* value,
Size
count = 1) = 0;
145
151
virtual
void
reserve
(
Size
capacity) = 0;
152
};
153
// end group mi_neuray_plugins
155
156
}
// namespace mi
157
158
#endif // MI_NEURAYLIB_ISERIALIZER_H
mi
neuraylib
iserializer.h
Generated on Tue Aug 12 2014 15:28:35. Build 221133.3991, Doxygen 1.8.4