Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions
foray::base Namespace Reference

Classes

class  AppFrameTiming
 Controls an apps render scheduling timing. More...
 
class  DefaultAppBase
 Intended as base class for demo applications. Compared to MinimalAppBase it offers a complete simple vulkan setup. More...
 
class  FrameRenderInfo
 Context used for render processes. This object is rebuilt for every frame. /. More...
 
class  InFlightFrame
 Wraps synchronization primitives and command buffers for an inflight frame. More...
 
class  MinimalAppBase
 Application base providing bare minimum of functionality (app lifetime, event handling, vulkan instance management) More...
 
class  RenderLoop
 Manages a single threaded, automatically balancing application lifetime. More...
 
class  VulkanDevice
 Wraps selection and creation of a vulkan logical device. More...
 
class  VulkanInstance
 Wraps creation and lifetime of a vulkan instance. Includes default debug callback logging setup. More...
 
class  VulkanWindowSwapchain
 Combines Window, Surface and Swapchain into one managing object. More...
 

Typedefs

using CmdBufferIndex = int32_t
 

Enumerations

enum class  ESwapchainInteractResult { Nominal , Resized }
 Result of swapchain interaction (AcquireImage or Present) More...
 
enum class  ELifetimeState {
  PreInit , Initializing , Running , StopRequested ,
  Destroying , Finalized
}
 The lifetime states an application progresses through chronologically. More...
 

Functions

void PrintStateChange (ELifetimeState oldState, ELifetimeState newState)
 

Typedef Documentation

◆ CmdBufferIndex

using foray::base::CmdBufferIndex = typedef int32_t

Enumeration Type Documentation

◆ ELifetimeState

enum class foray::base::ELifetimeState
strong

The lifetime states an application progresses through chronologically.

Enumerator
PreInit 
Initializing 
Running 
StopRequested 
Destroying 
Finalized 

◆ ESwapchainInteractResult

Result of swapchain interaction (AcquireImage or Present)

Enumerator
Nominal 

The interaction resulted nominally.

Resized 

The interaction indicated that the swapchain should be resized.

Function Documentation

◆ PrintStateChange()

void foray::base::PrintStateChange ( ELifetimeState  oldState,
ELifetimeState  newState 
)