Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
|
Namespaces | |
namespace | api |
namespace | as |
namespace | base |
namespace | bench |
namespace | core |
namespace | gltf |
namespace | osi |
namespace | rtpipe |
namespace | scene |
namespace | stages |
namespace | util |
Classes | |
class | Exception |
An extension of std::exception providing support for formatted error messages. Exceptions should always be catched via "catch (const std::exception& ex)", and thrown by value (Just use builtin static throw functions) More... | |
class | NoMoveDefaults |
Simple types for supressing automatic definition of duplicating move constructors & operator. More... | |
class | Polymorphic |
Simple type for forcing a type to be polymorphic. More... | |
Typedefs | |
using | fp32_t = float |
stdint.h style 32 bit floating point type alias (float) | |
using | fp64_t = double |
stdint.h style 64 bit floating point type alias (double) | |
Functions | |
void | Assert (bool condition, const source_location location=source_location::current()) |
Asserts condition. Throws a generic error message if conditition is false. | |
void | Assert (bool condition, std::string_view message, const source_location location=source_location::current()) |
Asserts condition. Throws a user defined error message if conditition is false. | |
spdlog::logger * | logger () |
Gives access to a global available logger object. The logger writes to console & to a file next to the application in the folder /logs. | |
std::string | PrintVkResult (VkResult result) |
Prints a VkResult. If outside of NAMEF_ENUM_RANGE_MAX, will only print number. | |
void | AssertVkResult (VkResult result, const source_location location=source_location::current()) |
Asserts a VkResult (Fails if not VK_SUCCESS) | |
void | SetVulkanObjectName (core::Context *context, VkObjectType objectType, const void *objectHandle, std::string_view name) |
Set a vulkan object name (Will show up in validation errors, NSight, RenderDoc, ...) | |
Variables | |
constexpr uint32_t | INFLIGHT_FRAME_COUNT = 2 |
Inflight frame count is the amount of frames 'in flight' aka frames recorded on the host before waiting for the device to finish rendering a previous frame. | |
using foray::fp32_t = typedef float |
stdint.h style 32 bit floating point type alias (float)
using foray::fp64_t = typedef double |
stdint.h style 64 bit floating point type alias (double)
|
inline |
Asserts condition. Throws a generic error message if conditition is false.
|
inline |
Asserts condition. Throws a user defined error message if conditition is false.
|
inline |
Asserts a VkResult (Fails if not VK_SUCCESS)
spdlog::logger * foray::logger | ( | ) |
Gives access to a global available logger object. The logger writes to console & to a file next to the application in the folder /logs.
std::string foray::PrintVkResult | ( | VkResult | result | ) |
Prints a VkResult. If outside of NAMEF_ENUM_RANGE_MAX, will only print number.
void foray::SetVulkanObjectName | ( | core::Context * | context, |
VkObjectType | objectType, | ||
const void * | objectHandle, | ||
std::string_view | name | ||
) |
Set a vulkan object name (Will show up in validation errors, NSight, RenderDoc, ...)
context | Requires DispatchTable |
objectType | Object Type passed as objectHandle |
objectHandle | Vulkan Handle |
name | Debug name |
|
inlineconstexpr |
Inflight frame count is the amount of frames 'in flight' aka frames recorded on the host before waiting for the device to finish rendering a previous frame.