CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
VKFence.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
10#include "VKCommon.hpp"
11
14
16
17namespace CeresEngine {
18
19 class VKFence final : public GPUFence, public VKDeviceObject<VKFence, GPUFence> {
20 private:
23
26
27 public:
32
35
39
42
44 static void* operator new(size_t size) noexcept;
45
47 static void operator delete(void* p, std::size_t size) noexcept;
48
51
52 public:
54 void reset() final;
55
58 };
59
60} // namespace CeresEngine
#define CE_EXPLICIT_FALSE
Definition Macros.hpp:416
GPUDevice & device
The owning device this object was created from.
Definition Common.hpp:55
Definition GPUFence.hpp:29
const Descriptor & descriptor
A structure that describes the object and it's properties.
Definition Common.hpp:69
Definition VKDevice.hpp:79
Definition VKCommon.hpp:143
Definition VKFence.hpp:19
VKFence(VKDevice &device, const GPUFenceDescriptor &descriptor)
Creates a new VKFence object.
VKObjectAllocator Allocator
An allocator type used to allocate new VKFence instances from a memory pool.
Definition VKFence.hpp:38
void reset() final
VkFence mFence
The Vulkan fence object.
Definition VKFence.hpp:25
static Allocator & getAllocator() noexcept
Returns the allocator for VKFence.
~VKFence() final
Destroys the VKFence object.
const GPUFenceDescriptor descriptorVK
A structure that describes the fence and it's properties.
Definition VKFence.hpp:22
Definition Application.hpp:19
std::uint64_t UInt64
Definition DataTypes.hpp:26
auto wait()
Awaits (and blocks) until the continuation has finished running.
Definition Async.hpp:226
ThreadSafeAllocator< MemoryPool< NodePool, AllocatorReference< VKAllocator > > > VKObjectAllocator
A pool allocator to be used for individual object pools.
Definition VKCommon.hpp:59
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
Definition Span.hpp:668
Definition GPUFence.hpp:23