Rename Array
This commit is contained in:
parent
aeed8530ad
commit
26f4deca12
|
@ -7,23 +7,23 @@
|
|||
namespace orange
|
||||
{
|
||||
template <typename T, size_t N>
|
||||
class SmallVector
|
||||
class SmallArray
|
||||
{
|
||||
public:
|
||||
|
||||
SmallVector() {}
|
||||
SmallVector(size_t size) { Resize(size); }
|
||||
SmallVector(Span<T> span)
|
||||
SmallArray() {}
|
||||
SmallArray(size_t size) { Resize(size); }
|
||||
SmallArray(Span<T> span)
|
||||
{
|
||||
Reserve(span.size);
|
||||
for (const auto& val : span)
|
||||
PushBack(val);
|
||||
}
|
||||
|
||||
SmallVector (const SmallVector&) = delete;
|
||||
SmallVector& operator = (const SmallVector&) = delete;
|
||||
SmallArray (const SmallArray&) = delete;
|
||||
SmallArray& operator = (const SmallArray&) = delete;
|
||||
|
||||
~SmallVector()
|
||||
~SmallArray()
|
||||
{
|
||||
for (size_t i = 0; i < m_size; i++)
|
||||
Ptr(i)->~T();
|
||||
|
@ -177,6 +177,6 @@ namespace orange
|
|||
};
|
||||
|
||||
template <typename T>
|
||||
using Vector = SmallVector<T, sizeof(T) / sizeof(void*)>;
|
||||
using Array = SmallArray<T, sizeof(T) / sizeof(void*)>;
|
||||
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
#pragma once
|
||||
|
||||
#include "Orange/Core/SmallVector.h"
|
||||
#include "Orange/Core/Array.h"
|
||||
#include <Orange/Core/Result.h>
|
||||
#include <Orange/Core/Span.h>
|
||||
|
||||
|
@ -68,7 +68,7 @@ namespace orange::stream
|
|||
return Consume(first, end, " \t");
|
||||
}
|
||||
|
||||
template <typename OutArray = SmallVector<char, 1>>
|
||||
template <typename OutArray = SmallArray<char, 1>>
|
||||
size_t ReadOrAdvance(const char*& first, const char* end, StringView delims, size_t advancement = 0, OutArray* array = nullptr)
|
||||
{
|
||||
size_t count = 0;
|
||||
|
@ -88,7 +88,7 @@ namespace orange::stream
|
|||
return count;
|
||||
}
|
||||
|
||||
template <typename OutArray = SmallVector<char, 1>>
|
||||
template <typename OutArray = SmallArray<char, 1>>
|
||||
size_t ReadString(const char*& first, const char* end, StringView delims, OutArray& array)
|
||||
{
|
||||
return ReadOrAdvance(first, end, delims, 0, &array);
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#include <Orange/Core/Span.h>
|
||||
#include <Orange/Core/Result.h>
|
||||
#include <Orange/Core/SmallVector.h>
|
||||
#include <Orange/Core/Array.h>
|
||||
|
||||
#include <Orange/Render/RenderContext.h>
|
||||
#include <vulkan/vulkan_core.h>
|
||||
|
@ -51,13 +51,13 @@ namespace orange
|
|||
VkExtent2D m_extent;
|
||||
VkSwapchainKHR m_swapchain;
|
||||
|
||||
SmallVector<VkImage, 6> m_images;
|
||||
SmallVector<VkImageView, 6> m_imageViews;
|
||||
SmallArray<VkImage, 6> m_images;
|
||||
SmallArray<VkImageView, 6> m_imageViews;
|
||||
|
||||
SmallVector<VkCommandBuffer, MaxFramesInFlight> m_commandBuffers;
|
||||
SmallVector<VkSemaphore, MaxFramesInFlight> m_imageAvailableSemaphores;
|
||||
SmallVector<VkSemaphore, MaxFramesInFlight> m_renderFinishedSemaphores;
|
||||
SmallVector<VkFence, MaxFramesInFlight> m_inFlightFences;
|
||||
SmallArray<VkCommandBuffer, MaxFramesInFlight> m_commandBuffers;
|
||||
SmallArray<VkSemaphore, MaxFramesInFlight> m_imageAvailableSemaphores;
|
||||
SmallArray<VkSemaphore, MaxFramesInFlight> m_renderFinishedSemaphores;
|
||||
SmallArray<VkFence, MaxFramesInFlight> m_inFlightFences;
|
||||
|
||||
uint32_t m_currentFrame = 0;
|
||||
uint32_t m_currentImage = 0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "Orange/Core/SmallVector.h"
|
||||
#include "Orange/Core/Array.h"
|
||||
#include "Orange/Core/Span.h"
|
||||
#include <Orange/Core/Result.h>
|
||||
#include <Orange/Core/FileSystem.h>
|
||||
|
@ -16,7 +16,7 @@ Result<VoidResult> ParseOBJ(StringView buffer)
|
|||
const char* end = buffer.data + buffer.size;
|
||||
while (obj != end)
|
||||
{
|
||||
SmallVector<char, 8> element;
|
||||
SmallArray<char, 8> element;
|
||||
stream::ReadString(obj, end, " #\n", element);
|
||||
|
||||
if (element == "v" || element == "vn" || element == "vt")
|
||||
|
@ -37,7 +37,7 @@ Result<VoidResult> ParseOBJ(StringView buffer)
|
|||
else if (element == "g" || element == "o")
|
||||
{
|
||||
stream::ConsumeSpace(obj, end);
|
||||
SmallVector<char, 32> name;
|
||||
SmallArray<char, 32> name;
|
||||
stream::ReadString(obj, end, " #\n", name);
|
||||
|
||||
name.PushBack('\0');
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include <Orange/Core/Log.h>
|
||||
#include <Orange/Core/SmallVector.h>
|
||||
#include <Orange/Core/Array.h>
|
||||
|
||||
#include <Orange/Render/VulkanHelpers.h>
|
||||
#include <Orange/Render/RenderContext.h>
|
||||
|
@ -9,7 +9,7 @@ namespace orange
|
|||
{
|
||||
static VulkanResult<VkInstance> CreateVkInstance(const char* appName)
|
||||
{
|
||||
SmallVector<const char *, 32> instanceExtensions;
|
||||
SmallArray<const char *, 32> instanceExtensions;
|
||||
{
|
||||
auto r_tempWindow = Window::Create();
|
||||
if (!r_tempWindow)
|
||||
|
@ -49,7 +49,7 @@ namespace orange
|
|||
|
||||
static Result<uint32_t> PickQueueFamilyIndex(VkPhysicalDevice physicalDevice)
|
||||
{
|
||||
SmallVector<VkQueueFamilyProperties, 32> queueFamilyProperties;
|
||||
SmallArray<VkQueueFamilyProperties, 32> queueFamilyProperties;
|
||||
VkEnumerate(vkGetPhysicalDeviceQueueFamilyProperties, queueFamilyProperties, physicalDevice);
|
||||
|
||||
for (uint32_t i = 0; i < queueFamilyProperties.Size(); i++)
|
||||
|
@ -80,7 +80,7 @@ namespace orange
|
|||
|
||||
static Result<VkPhysicalDevice> PickPhysicalDevice(VkInstance instance)
|
||||
{
|
||||
SmallVector<VkPhysicalDevice, 32> physicalDevices;
|
||||
SmallArray<VkPhysicalDevice, 32> physicalDevices;
|
||||
VkEnumerate(vkEnumeratePhysicalDevices, physicalDevices, instance);
|
||||
|
||||
VkPhysicalDevice bestPhysicalDevice = VK_NULL_HANDLE;
|
||||
|
|
|
@ -11,7 +11,7 @@ namespace orange
|
|||
|
||||
static Result<VkSurfaceFormatKHR> ChooseSwapChainFormat(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface)
|
||||
{
|
||||
SmallVector<VkSurfaceFormatKHR, 32> surfaceFormats;
|
||||
SmallArray<VkSurfaceFormatKHR, 32> surfaceFormats;
|
||||
if (!VkEnumerate(vkGetPhysicalDeviceSurfaceFormatsKHR, surfaceFormats, physicalDevice, surface))
|
||||
{
|
||||
log::err("Surface supports no formats");
|
||||
|
@ -29,7 +29,7 @@ namespace orange
|
|||
|
||||
static VkPresentModeKHR ChoosePresentMode(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface)
|
||||
{
|
||||
SmallVector<VkPresentModeKHR, 32> presentModes;
|
||||
SmallArray<VkPresentModeKHR, 32> presentModes;
|
||||
VkEnumerate(vkGetPhysicalDeviceSurfacePresentModesKHR, presentModes, physicalDevice, surface);
|
||||
|
||||
for (auto& presentMode : presentModes) { if (presentMode == VK_PRESENT_MODE_MAILBOX_KHR) return presentMode; }
|
||||
|
@ -99,11 +99,11 @@ namespace orange
|
|||
if (vkCreateSwapchainKHR(context.Device(), &swapchainInfo, nullptr, &swapchain) != VK_SUCCESS)
|
||||
return Result<Swapchain>::PrintError("Failed to create swapchain");
|
||||
|
||||
SmallVector<VkImage, 6> swapchainImages;
|
||||
SmallArray<VkImage, 6> swapchainImages;
|
||||
if (!VkEnumerate(vkGetSwapchainImagesKHR, swapchainImages, context.Device(), swapchain))
|
||||
return Result<Swapchain>::PrintError("Failed to get swapchain images");
|
||||
|
||||
SmallVector<VkImageView, 6> swapchainImageViews{ swapchainImages.Size() };
|
||||
SmallArray<VkImageView, 6> swapchainImageViews{ swapchainImages.Size() };
|
||||
for (size_t i = 0; i < swapchainImages.Size(); i++)
|
||||
{
|
||||
VkImageViewCreateInfo imageViewInfo =
|
||||
|
@ -119,7 +119,7 @@ namespace orange
|
|||
return Result<Swapchain>::PrintError("Failed to get swapchain image view");
|
||||
}
|
||||
|
||||
SmallVector<VkCommandBuffer, 6> commandBuffers{ DefaultFramesInFlight };
|
||||
SmallArray<VkCommandBuffer, 6> commandBuffers{ DefaultFramesInFlight };
|
||||
{
|
||||
VkCommandBufferAllocateInfo commandBufferInfo =
|
||||
{
|
||||
|
@ -133,9 +133,9 @@ namespace orange
|
|||
return Result<Swapchain>::PrintError("Failed to get swapchain image view");
|
||||
}
|
||||
|
||||
SmallVector<VkSemaphore, MaxFramesInFlight> imageAvailableSemaphores{ DefaultFramesInFlight };
|
||||
SmallVector<VkSemaphore, MaxFramesInFlight> renderFinishedSemaphores{ DefaultFramesInFlight };
|
||||
SmallVector<VkFence, MaxFramesInFlight> inFlightFences { DefaultFramesInFlight };
|
||||
SmallArray<VkSemaphore, MaxFramesInFlight> imageAvailableSemaphores{ DefaultFramesInFlight };
|
||||
SmallArray<VkSemaphore, MaxFramesInFlight> renderFinishedSemaphores{ DefaultFramesInFlight };
|
||||
SmallArray<VkFence, MaxFramesInFlight> inFlightFences { DefaultFramesInFlight };
|
||||
for (uint32_t i = 0; i < DefaultFramesInFlight; i++)
|
||||
{
|
||||
auto r_fence = context.CreateFence(true);
|
||||
|
|
Loading…
Reference in New Issue