41 #include "../gmio_core/endian.h"
42 #include "../gmio_core/memblock.h"
43 #include "../gmio_core/vecgeom.h"
263 uint32_t element_index,
284 uint32_t element_index,
285 uint32_t metadata_index,
291 uint32_t object_index,
319 uint32_t metadata_index,
326 uint32_t triangle_index,
336 uint32_t material_index,
337 uint32_t composite_index,
347 uint32_t constellation_index,
348 uint32_t instance_index,
uint32_t mesh_index
Index of the mesh that owns element.
Definition: amf_document.h:213
struct gmio_amf_texmap texmap
Definition: amf_document.h:117
bool has_normal
Definition: amf_document.h:85
void(* func_get_document_element)(const void *cookie, enum gmio_amf_document_element element, uint32_t element_index, void *ptr_element)
Function that retrieves the i-th document sub-element.
Definition: amf_document.h:260
gmio_amf_document_element
The direct elements of an AMF document(ie inside
...)
Definition: amf_document.h:193
uint32_t width
Definition: amf_document.h:174
uint32_t metadata_count
Definition: amf_document.h:157
Definition: amf_document.h:169
Global declarations for the AMF module.
Definition: amf_document.h:197
Provides an interface for accessing the underlying(hidden) user AMF data.
Definition: amf_document.h:224
uint32_t id
Definition: amf_document.h:66
const char * r_formula
Definition: amf_document.h:59
uint32_t material_count
Number of materials in the document.
Definition: amf_document.h:235
Definition: amf_document.h:172
struct gmio_amf_color color
Definition: amf_document.h:150
enum gmio_amf_mesh_element element_type
Type of the inner element.
Definition: amf_document.h:217
Definition: amf_document.h:123
Definition: amf_document.h:124
uint32_t rtexid
Definition: amf_document.h:102
Definition: amf_document.h:101
bool has_texmap
Definition: amf_document.h:116
struct gmio_vec3d coords
Definition: amf_document.h:84
struct gmio_amf_color color
Definition: amf_document.h:134
struct gmio_vec3d rot
Coordinates in degrees (-360 <= coord < 360)
Definition: amf_document.h:165
Combination of objects.
Definition: amf_document.h:154
void(* func_get_document_element_metadata)(const void *cookie, enum gmio_amf_document_element element, uint32_t element_index, uint32_t metadata_index, struct gmio_amf_metadata *ptr_metadata)
Optional function that retrieves the i-th metadata assigned to a document sub-element.
Definition: amf_document.h:281
uint32_t edge_count
Definition: amf_document.h:140
uint32_t object_count
Number of objects in the document, must be >= 1.
Definition: amf_document.h:232
Index of an element(vertex, edge or volume) within a mesh.
Definition: amf_document.h:209
uint32_t id
Definition: amf_document.h:146
bool tiled
Definition: amf_document.h:177
gmio_amf_mesh_element
The direct elements of an AMF mesh(ie inside ...)
Definition: amf_document.h:202
Definition: amf_document.h:65
uint32_t objectid
Definition: amf_document.h:163
Definition: amf_document.h:188
uint32_t v2
Definition: amf_document.h:114
uint32_t value
Index of the inner element.
Definition: amf_document.h:215
void(* func_get_material_composite)(const void *cookie, uint32_t material_index, uint32_t composite_index, struct gmio_amf_composite *ptr_composite)
Optional function that retrieves the i-th composite within a material element.
Definition: amf_document.h:334
Definition: amf_document.h:185
Volume or volumes of material.
Definition: amf_document.h:145
double b
Definition: amf_document.h:57
const char * data
UTF8-encoded.
Definition: amf_document.h:50
double a
Definition: amf_document.h:58
uint32_t triangle_count
Should be >= 4.
Definition: amf_document.h:131
double r
Definition: amf_document.h:55
uint32_t depth
Definition: amf_document.h:176
Definition: amf_document.h:186
gmio_amf_unit
Units supported by AMF.
Definition: amf_document.h:183
void(* func_get_object_mesh_element)(const void *cookie, const struct gmio_amf_object_mesh_element_index *element_index, void *ptr_element)
Function that retrieves the i-th sub-element of a mesh element.
Definition: amf_document.h:306
Definition: amf_document.h:203
void(* func_get_object_mesh_volume_triangle)(const void *cookie, const struct gmio_amf_object_mesh_element_index *volume_index, uint32_t triangle_index, struct gmio_amf_triangle *ptr_triangle)
Function that retrieves the i-th triangle within a mesh volume.
Definition: amf_document.h:323
enum gmio_amf_unit unit
Definition: amf_document.h:229
Definition: amf_document.h:187
uint32_t v2
Definition: amf_document.h:95
Vector of three double coords.
Definition: vecgeom.h:48
gmio_amf_volume_type
Definition: amf_document.h:122
uint32_t volume_count
Definition: amf_document.h:141
struct gmio_vec3d vtex
Definition: amf_document.h:107
double value
Governs the percent of material.
Definition: amf_document.h:78
uint32_t atexid
Definition: amf_document.h:105
Definition: amf_document.h:204
uint32_t id
Definition: amf_document.h:155
const char * b_formula
Definition: amf_document.h:61
uint32_t gtexid
Definition: amf_document.h:103
uint32_t mesh_count
Definition: amf_document.h:147
struct gmio_vec3d wtex
Definition: amf_document.h:109
Closed volume of an object.
Definition: amf_document.h:128
Triangular mesh referencing a set of vertices.
Definition: amf_document.h:138
void(* func_get_object_mesh)(const void *cookie, uint32_t object_index, uint32_t mesh_index, struct gmio_amf_mesh *ptr_mesh)
Function that retrieves the i-th mesh within an object element.
Definition: amf_document.h:289
uint32_t metadata_count
Definition: amf_document.h:89
uint32_t height
Definition: amf_document.h:175
void(* func_get_constellation_instance)(const void *cookie, uint32_t constellation_index, uint32_t instance_index, struct gmio_amf_instance *ptr_instance)
Optional function that retrieves the i-th instance within a constellation element.
Definition: amf_document.h:345
struct gmio_vec3d normal
Definition: amf_document.h:86
uint32_t v1
Definition: amf_document.h:94
enum gmio_amf_volume_type type
Definition: amf_document.h:130
const void * cookie
Opaque pointer on the user AMF document, passed as first argument to hook functions.
Definition: amf_document.h:227
struct gmio_amf_color color
Definition: amf_document.h:88
uint32_t metadata_count
Definition: amf_document.h:148
uint32_t metadata_count
Definition: amf_document.h:69
uint32_t materialid
Definition: amf_document.h:129
const char * a_formula
Definition: amf_document.h:62
bool has_color
Definition: amf_document.h:87
enum gmio_amf_texture_type type
Definition: amf_document.h:178
const char * g_formula
Definition: amf_document.h:60
struct gmio_vec3d utex
Definition: amf_document.h:106
bool has_color
Definition: amf_document.h:133
Definition: amf_document.h:205
uint32_t btexid
Definition: amf_document.h:104
uint32_t texture_count
Number of textures in the document.
Definition: amf_document.h:238
uint32_t v1
Definition: amf_document.h:113
uint32_t metadata_count
Number of direct metadata attached to the document.
Definition: amf_document.h:244
Edge within a mesh, for curved triangles.
Definition: amf_document.h:93
Definition: amf_document.h:184
Definition: amf_document.h:196
uint32_t metadata_count
Definition: amf_document.h:132
Proportion of the composition of another material.
Definition: amf_document.h:76
uint32_t id
Definition: amf_document.h:173
void(* func_get_object_mesh_element_metadata)(const void *cookie, const struct gmio_amf_object_mesh_element_index *mesh_element_index, uint32_t metadata_index, struct gmio_amf_metadata *ptr_metadata)
Optional function that retrieves the i-th metadata attached to a mesh element(only vertex or volume) ...
Definition: amf_document.h:316
Position of an object in a constellation.
Definition: amf_document.h:161
Definition: amf_document.h:189
const char * type
UTF8-encoded.
Definition: amf_document.h:49
Definition: amf_document.h:195
uint32_t vertex_count
Definition: amf_document.h:139
Basic memory block.
Definition: memblock.h:57
uint32_t composite_count
Definition: amf_document.h:68
bool has_color
Definition: amf_document.h:118
struct gmio_amf_color color
Definition: amf_document.h:119
uint32_t v3
Definition: amf_document.h:115
uint32_t object_index
Index of the object that owns the mesh.
Definition: amf_document.h:211
double g
Definition: amf_document.h:56
Vertex within a mesh.
Definition: amf_document.h:83
struct gmio_memblock binary_data
Will be converted to base64.
Definition: amf_document.h:179
gmio_amf_texture_type
Definition: amf_document.h:168
const char * value_formula
Definition: amf_document.h:79
uint32_t constellation_count
Number of constellations in the document.
Definition: amf_document.h:241
bool has_color
Definition: amf_document.h:149
uint32_t materialid
Definition: amf_document.h:77
uint32_t instance_count
Should be >= 2.
Definition: amf_document.h:156
bool has_wtex
Definition: amf_document.h:108
Definition: amf_document.h:198
Red, green, blue and alpha channels as numbers or formulas in [0,1].
Definition: amf_document.h:54
struct gmio_vec3d delta
Definition: amf_document.h:164
Definition: amf_document.h:112
struct gmio_vec3d d1
Definition: amf_document.h:97
struct gmio_amf_color color
Definition: amf_document.h:67
Definition: amf_document.h:194
struct gmio_vec3d d2
Definition: amf_document.h:98