SPARK  0.1.0
A general purpose game engine written in C++.
Loading...
Searching...
No Matches
VulkanIndexBufferLayout.h
1#pragma once
2
3#include "spark/render/IndexBuffer.h"
4#include "spark/render/vk/Export.h"
5
6namespace spark::render::vk
7{
11 class SPARK_RENDER_VK_EXPORT VulkanIndexBufferLayout final : public IIndexBufferLayout
12 {
13 public:
18 explicit VulkanIndexBufferLayout(IndexType type);
19 ~VulkanIndexBufferLayout() override;
20
22 VulkanIndexBufferLayout(VulkanIndexBufferLayout&& other) noexcept = delete;
23 VulkanIndexBufferLayout& operator=(const VulkanIndexBufferLayout& other) = delete;
24 VulkanIndexBufferLayout& operator=(VulkanIndexBufferLayout&& other) noexcept = delete;
25
27 [[nodiscard]] std::size_t elementSize() const noexcept override;
28
30 [[nodiscard]] unsigned binding() const noexcept override;
31
33 [[nodiscard]] BufferType type() const noexcept override;
34
36 [[nodiscard]] IndexType indexType() const noexcept override;
37
38 private:
39 struct Impl;
40 std::unique_ptr<Impl> m_impl;
41 };
42}
Describes the layout of an index buffer.
Definition IndexBuffer.h:24
Implements IIndexBufferLayout for Vulkan.
Definition VulkanIndexBufferLayout.h:12
Definition VulkanIndexBufferLayout.cpp:6