Rename Array

This commit is contained in:
Joshua Ashton 2022-08-05 02:28:51 +00:00
parent aeed8530ad
commit 26f4deca12
6 changed files with 33 additions and 33 deletions

View File

@ -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*)>;
}

View File

@ -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);

View File

@ -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;

View File

@ -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');

View File

@ -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;

View File

@ -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);