extract PTK_LIST_STATIC_INIT into PTK_ARRAY
This commit is contained in:
parent
276138043d
commit
2b5be4c732
3 changed files with 21 additions and 9 deletions
18
src/ptk_array.h
Normal file
18
src/ptk_array.h
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
#ifndef PTK_PTK_ARRAY_H_
|
||||||
|
#define PTK_PTK_ARRAY_H_
|
||||||
|
|
||||||
|
#define PTK_ARRAY(T) struct PtkArray_##T
|
||||||
|
|
||||||
|
#define PTK_ARRAY_DEFINE(T) \
|
||||||
|
PTK_ARRAY(T) {\
|
||||||
|
T *data;\
|
||||||
|
uint32_t size;\
|
||||||
|
}\
|
||||||
|
|
||||||
|
#define PTK_ARRAY_NEW(T, ...) \
|
||||||
|
(PTK_ARRAY(T)){\
|
||||||
|
.data = (T []) __VA_ARGS__ ,\
|
||||||
|
.size = sizeof((T []) __VA_ARGS__) / sizeof(T),\
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // PTK_PTK_ARRAY_H_
|
|
@ -37,13 +37,6 @@ bool _remove_at_PtkList(void *data, uint32_t *size, size_t index, size_t element
|
||||||
.allocated = _size,\
|
.allocated = _size,\
|
||||||
}
|
}
|
||||||
|
|
||||||
#define PTK_LIST_STATIC_INIT(T, ...) \
|
|
||||||
(PTK_LIST(T)){\
|
|
||||||
.data = (T []) __VA_ARGS__ ,\
|
|
||||||
.size = sizeof((T []) __VA_ARGS__) / sizeof(T),\
|
|
||||||
.allocated = sizeof((T []) __VA_ARGS__) / sizeof(T),\
|
|
||||||
}
|
|
||||||
|
|
||||||
#define PTK_LIST_FREE(list) \
|
#define PTK_LIST_FREE(list) \
|
||||||
free(list.data)
|
free(list.data)
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
#include <ptk_log.h>
|
#include <ptk_log.h>
|
||||||
#include <ptk_option.h>
|
#include <ptk_option.h>
|
||||||
|
#include <ptk_array.h>
|
||||||
#include <ptk_list.h>
|
#include <ptk_list.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
@ -18,7 +19,7 @@ PTK_OPTION_DEFINE(uint32_t);
|
||||||
PTK_LIST_DEFINE(VkSurfaceFormatKHR);
|
PTK_LIST_DEFINE(VkSurfaceFormatKHR);
|
||||||
PTK_LIST_DEFINE(VkPresentModeKHR);
|
PTK_LIST_DEFINE(VkPresentModeKHR);
|
||||||
PTK_LIST_DEFINE(VkFramebuffer);
|
PTK_LIST_DEFINE(VkFramebuffer);
|
||||||
PTK_LIST_DEFINE(VkVertexInputAttributeDescription);
|
PTK_ARRAY_DEFINE(VkVertexInputAttributeDescription);
|
||||||
PTK_LIST_DEFINE(VkExtensionProperties);
|
PTK_LIST_DEFINE(VkExtensionProperties);
|
||||||
PTK_LIST_DEFINE(VkQueueFamilyProperties);
|
PTK_LIST_DEFINE(VkQueueFamilyProperties);
|
||||||
PTK_OPTION_DEFINE(VkShaderModule);
|
PTK_OPTION_DEFINE(VkShaderModule);
|
||||||
|
@ -85,7 +86,7 @@ static const VkVertexInputBindingDescription m_vertex_binding_description = {
|
||||||
.inputRate = VK_VERTEX_INPUT_RATE_VERTEX,
|
.inputRate = VK_VERTEX_INPUT_RATE_VERTEX,
|
||||||
};
|
};
|
||||||
|
|
||||||
PTK_LIST(VkVertexInputAttributeDescription) m_vertex_attribute_descriptions = PTK_LIST_STATIC_INIT(VkVertexInputAttributeDescription, {
|
PTK_ARRAY(VkVertexInputAttributeDescription) m_vertex_attribute_descriptions = PTK_ARRAY_NEW(VkVertexInputAttributeDescription, {
|
||||||
(VkVertexInputAttributeDescription){
|
(VkVertexInputAttributeDescription){
|
||||||
.location = 0,
|
.location = 0,
|
||||||
.binding = 0,
|
.binding = 0,
|
||||||
|
|
Loading…
Reference in a new issue