]> O.S.I.I.S - jp/vkhelpers.git/commitdiff
vkh_event_create + cpp guard in all headers
authorJean-Philippe Bruyère <jp_bruyere@hotmail.com>
Wed, 9 May 2018 04:57:24 +0000 (06:57 +0200)
committerJean-Philippe Bruyère <jp_bruyere@hotmail.com>
Wed, 9 May 2018 04:57:24 +0000 (06:57 +0200)
include/vkh.h
src/vkh_app.h
src/vkh_buffer.h
src/vkh_device.h
src/vkh_image.h
src/vkh_phyinfo.h
src/vkh_presenter.c
src/vkh_queue.h
src/vkhelpers.c

index 11c40ce9ca468452bdf4e8226529f7bdb6a80be1..67134e42d66b900c7a18ef31ea639c48c23587ad 100644 (file)
@@ -135,6 +135,7 @@ void*       vkh_buffer_get_mapped_pointer   (VkhBuffer buff);
 VkFence         vkh_fence_create                       (VkhDevice dev);
 VkFence         vkh_fence_create_signaled      (VkhDevice dev);
 VkSemaphore     vkh_semaphore_create           (VkhDevice dev);
+VkEvent         vkh_event_create            (VkhDevice dev);
 
 VkCommandPool   vkh_cmd_pool_create (VkhDevice dev, uint32_t qFamIndex, VkCommandPoolCreateFlags flags);
 VkCommandBuffer vkh_cmd_buff_create (VkhDevice dev, VkCommandPool cmdPool, VkCommandBufferLevel level);
index 2c08cf25a0d4af5452e8e8d21a992818f7d1fea4..07cc39496005489f1411bf3f61dc9bc7e3742859 100644 (file)
 #ifndef VKH_APP_H
 #define VKH_APP_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_app_t{
     VkApplicationInfo   infos;
     VkInstance          inst;
 }vkh_app_t;
+#ifdef __cplusplus
+}
+#endif
 #endif
index 00902dc6a873034b7ec1606a06ba6c45eb25a655..347c973b921253b21480fcdc30e2ae99b5d0dc9d 100644 (file)
 #ifndef VKH_BUFFER_H
 #define VKH_BUFFER_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_buffer_t {
@@ -38,4 +42,7 @@ typedef struct _vkh_buffer_t {
 
     void*                   mapped;
 }vkh_buffer_t;
+#ifdef __cplusplus
+}
+#endif
 #endif
index 5e56e507ea60cd8792725ddd82c2bc8d85c0a809..1b5b1bf6cc891649c8cd7c5d8284f09e9985aba1 100644 (file)
 #ifndef VKH_DEVICE_H
 #define VKH_DEVICE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_device_t{
@@ -31,4 +35,7 @@ typedef struct _vkh_device_t{
     VmaAllocator            allocator;
 }vkh_device_t;
 
+#ifdef __cplusplus
+}
+#endif
 #endif
index d925466aec3b08fb0079967085588dc39df0e215..fb675120593f092dfbd99deb57c6f50447d71609 100644 (file)
 #ifndef VKH_IMAGE_H
 #define VKH_IMAGE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_image_t {
@@ -38,4 +42,7 @@ typedef struct _vkh_image_t {
     VkImageLayout           layout; //current layout
     bool                    imported;
 }vkh_image_t;
+#ifdef __cplusplus
+}
+#endif
 #endif
index cf1fceaf0883654d5c3d78e3a2e97c6d50dad061..75c987c54dd025f48dc06695a277020babb72517 100644 (file)
 #ifndef VKH_PHY_H
 #define VKH_PHY_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_phy_t{
@@ -38,4 +42,7 @@ typedef struct _vkh_phy_t{
     uint32_t                            qCreateInfosCount;
     VkDeviceQueueCreateInfo*            qCreateInfos;
 }vkh_phy_t;
+#ifdef __cplusplus
+}
+#endif
 #endif
index a6291160b29a1198b5a6248deda3ac0057238196..5324347fdac0549fab5296747f76c2bdc3d2f385 100644 (file)
@@ -41,6 +41,7 @@ VkhPresenter vkh_presenter_create (VkhDevice dev, uint32_t presentQueueFamIdx, V
     r->cmdPool          = vkh_cmd_pool_create  (r->dev, presentQueueFamIdx, 0);
     r->semaPresentEnd   = vkh_semaphore_create (r->dev);
     r->semaDrawEnd      = vkh_semaphore_create (r->dev);
+    r->evtReady         = vkh_event_create     (r->dev);
 
     _init_phy_surface (r, preferedFormat, presentMode);
 
@@ -54,6 +55,7 @@ void vkh_presenter_destroy (VkhPresenter r) {
 
     _swapchain_destroy (r);
 
+    vkDestroyEvent      (r->dev->dev, r->evtReady, NULL);
     vkDestroySemaphore  (r->dev->dev, r->semaDrawEnd, NULL);
     vkDestroySemaphore  (r->dev->dev, r->semaPresentEnd, NULL);
     vkDestroyCommandPool(r->dev->dev, r->cmdPool, NULL);
index f33d8009c29ef04c4b83d7695c4a88f1f6ceda60..68cab369548475aa3890b19d6a9ed48e646d9f30 100644 (file)
 #ifndef VKH_QUEUE_H
 #define VKH_QUEUE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include "vkh.h"
 
 typedef struct _vkh_queue_t{
@@ -31,4 +35,7 @@ typedef struct _vkh_queue_t{
     VkQueueFlags    flags;
 }vkh_queue_t;
 
+#ifdef __cplusplus
+}
+#endif
 #endif
index a547968ec94bbe5961e058aa6acd6818e851fcaa..b8ae79eec04a1b86e98cd2fffce2ee9dfa039a7b 100644 (file)
@@ -49,6 +49,12 @@ VkSemaphore vkh_semaphore_create (VkhDevice dev) {
     VK_CHECK_RESULT(vkCreateSemaphore(dev->dev, &info, NULL, &semaphore));
     return semaphore;
 }
+VkEvent vkh_event_create (VkhDevice dev) {
+    VkEvent evt;
+    VkEventCreateInfo evtInfo = {.sType = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO};
+    VK_CHECK_RESULT(vkCreateEvent (dev->dev, &evtInfo, NULL, &evt));
+    return evt;
+}
 VkCommandPool vkh_cmd_pool_create (VkhDevice dev, uint32_t qFamIndex, VkCommandPoolCreateFlags flags){
     VkCommandPool cmdPool;
     VkCommandPoolCreateInfo cmd_pool_info = { .sType = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO,