Files
Seele/src/Engine/Graphics/Vulkan/Queue.h
T
2024-06-09 12:20:53 +02:00

24 lines
618 B
C++

#pragma once
#include "Resources.h"
namespace Seele {
namespace Vulkan {
DECLARE_REF(Command)
DECLARE_REF(Graphics)
class Queue {
public:
Queue(PGraphics graphics, uint32 familyIndex, uint32 queueIndex);
virtual ~Queue();
void submitCommandBuffer(PCommand command, const Array<VkSemaphore>& signalSemaphore);
constexpr uint32 getFamilyIndex() const { return familyIndex; }
constexpr VkQueue getHandle() const { return queue; }
private:
std::mutex queueLock;
PGraphics graphics;
VkQueue queue;
uint32 familyIndex;
};
DEFINE_REF(Queue)
} // namespace Vulkan
} // namespace Seele