aboutsummaryrefslogtreecommitdiff
path: root/src/instance_context.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/instance_context.hh')
-rw-r--r--src/instance_context.hh17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/instance_context.hh b/src/instance_context.hh
index 0a0b999..3b71a82 100644
--- a/src/instance_context.hh
+++ b/src/instance_context.hh
@@ -3,21 +3,26 @@
#include <vulkan/utility/vk_dispatch_table.h>
+#include <memory>
+#include <unordered_map>
+
+#include "context.hh"
+
namespace low_latency {
-struct InstanceContext {
+class PhysicalDeviceContext;
+
+struct InstanceContext final : public Context {
const VkInstance instance;
const VkuInstanceDispatchTable vtable;
+ std::unordered_map<void*, std::shared_ptr<PhysicalDeviceContext>> phys_devices;
+
public:
InstanceContext(const VkInstance& instance,
VkuInstanceDispatchTable&& vtable);
- InstanceContext(const InstanceContext&) = delete;
- InstanceContext(InstanceContext&&) = delete;
- InstanceContext operator==(const InstanceContext&) = delete;
- InstanceContext operator==(InstanceContext&&) = delete;
- ~InstanceContext();
+ virtual ~InstanceContext();
};
}; // namespace low_latency