MTek-GDL 0.100.4-muffintrap
Loading...
Searching...
No Matches
mgdl-dynamic_array.h
Go to the documentation of this file.
1#pragma once
2
3#include <mgdl/mgdl-types.h>
4#include <mgdl/mgdl-node.h>
5#include <mgdl/mgdl-material.h>
6#include <mgdl/mgdl-mesh.h>
7
14 void* data;
15 sizetype capacity;
16 sizetype count;
17};
18typedef struct DynamicArray DynamicArray;
19
20// Different types needed by mtek-gdl
21
22struct Material;
23DynamicArray* DynamicArray_CreateMaterial(sizetype capacity);
24sizetype DynamicArray_CountMaterial(DynamicArray* array);
25Material* DynamicArray_GetMaterial(DynamicArray* array, sizetype index);
26sizetype DynamicArray_AddMaterial(DynamicArray* array, Material* item);
27
28#define DYNAMIC_ARRAY(TYPE) \
29DynamicArray* DynamicArray_Create##TYPE(sizetype capacity); \
30sizetype DynamicArray_Count##TYPE(DynamicArray* array); \
31TYPE * DynamicArray_Get##TYPE(DynamicArray* array, sizetype index); \
32sizetype DynamicArray_Add##TYPE(DynamicArray* array, TYPE * item);
33
34// DYNAMIC_ARRAY(Material)
35DYNAMIC_ARRAY(Mesh)
36DYNAMIC_ARRAY(Node)
37
38
39#undef DYNAMIC_ARRAY
Library types, macros, defines and enums header.
Definition mgdl-dynamic_array.h:13
Material used by a node.
Definition mgdl-material.h:13
Definition mgdl-mesh.h:11
Definition mgdl-node.h:11