NDEVR
API Documentation
Graphics

Rendering engines, graphics pipelines, and viewport management. More...

Collaboration diagram for Graphics:

Classes

class  CheckoutLock
 Used by Viewports to signal they are rendering and we should not be performing an Update. More...
class  DeviceLostException
 A specific type of Exception that occurs when a GraphicsDevice is lost. More...
class  GLESCameraManager
 Manages viewports in the OpenGL engine, responsible for matrix transformations within shaders. More...
class  GLESCameraViewFactory
 Allows the software to generate OpenGL windows when requested that are rendered with OpenGL. More...
class  GLESGraphicsDevice
 Buffer for storing data in the OpenGL engine, usually for rendering. More...
class  GLESGraphicsPipeline
 Creates and manages the resources necessary for rendering a single Viewport within the OpenGL pipeline. More...
class  GLESGraphicsSession
 Creates and manages the resources necessary for converting a DesignObjectLookup into 3D rendered data in the OpenGL engine. More...
class  GLESGraphicsWindow
 The core Window used to render a viewport with OpenGL. More...
class  GLESImageData
 A pointer to an Image and functions relating to that image within the GLES logic space. More...
class  GLESImageManager
 Manages all images within the Vulkan space. More...
class  GLESMaterialManager
 Structure responsible for handling the OpenGL data surrounding a particular Material object. More...
class  GLESRenderObject
 A root render Object for OpenGL, which consists of a set Material, Model, and Geometry that is used together to optimally create a 3D render. More...
class  GLESShader
 A Shader for rendering default OpenGL logic to the graphics card. More...
struct  GLESShader::Definition
 Defines the set of features a shader must support, used to select or compile the correct variant. More...
class  GLESShaderManager
 Manages all shaders used with OpenGL and the NDEVR API. More...
class  GLESVertexManager
 Manages vertex buffers for the OpenGL engine. More...
class  GraphicsBuffer
 A Special abstract TableColumn responsible for interfacing a Buffer of data with the video card. More...
class  GraphicsBufferException
 An exception thrown when a specific GraphicsBuffer encounters an error. More...
class  GraphicsCameraManager
 A structure for managing Viewport interactions with an NDEVR Rendering Engine. More...
class  GraphicsDevice
 A physical or virtual device used with the NDEVR Rendering Engine. More...
class  GraphicsException
 A common exeption thrown when an issue occurs within the NDEVR Graphics Engine. More...
class  GraphicsManager
 A common interface responsible for managing specific actions with a Gaphics engine, such as Vulkan or OpenGL. More...
class  GraphicsPipeline
 A GraphicsPipeline is a set of resources that are chained together to correctly render something. More...
class  GraphicsSession
 A GraphicsPipeline that is responsible for setting up and rendering the resources of a DesignObjectLookup. More...
struct  GraphicsSession::GeometryUpdateObject
 Tracks a geometry and its last modification time for incremental updates. More...
class  GraphicsUpdateArguments
 Options that are used for performing an update on a Graphics Engine call. More...
class  GraphicsUpdater
 Responsible for updating resources or layouts of data in-between calls to render. More...
class  NDEVRGraphicsManagerFactory
 Stores a default rendering engine to be used with the application, with logic for finding a enabled Graphics Engine and using it to create a GraphicsManager. More...
class  OpenGLBuffer
 Buffer for storing data in the OpenGL engine, usually for rendering. More...
class  PhysicalCameraView
 A Viewport that represents a physical camera stream, or real world camera view. More...
struct  PhysicalCameraView::OutputCodec
 Describes a video output codec with an identifier and display name. More...
struct  PhysicalCameraView::OutputMux
 Describes a video output muxer/container format with an identifier and display name. More...
struct  PhysicalCameraView::ToolButtonSettings
 Configuration flags controlling which tool buttons are visible in the camera toolbar. More...
class  QTGraphicsWidget
 A Widget wrapper around a QTGraphicsWindow that allows it to be used inside the UI framework. More...
class  QTGraphicsWindow
 A Window used to render 3D graphics. More...
class  QtVulkanSession
 A VulkanSession within the Qt space. More...
class  Renderer
 An object that renders a specific Camera object, typically run on a different thread than the main UI thread. More...
class  VirtualCameraView
 A Viewport for rendering 3D objects in the scene with the NDEVR Graphics Engine. More...
class  VulkanBuffer
 A GPU buffer managed through the Vulkan API, used for vertex, index, and uniform data. More...
class  VulkanCameraManager
 A structure for managing Viewport interactions with in the Vulkan Graphics Space. More...
class  VulkanCameraViewFactory
 A QTGraphicsWindow for rendering using Vulkan. More...
class  VulkanDevice
 A GraphicsDevice for managing Vulkan limitations and actions. More...
class  VulkanImageData
 A pointer to an Image and functions relating to that image within the Vulkan logic space. More...
class  VulkanImageManager
 Manages all images within the Vulkan space. More...
class  VulkanImageView
 Manages a view within the Vulkan logic space. More...
class  VulkanInstance
 The connection between the NDEVR API and the Vulkan library. More...
class  VulkanMaterialManager
 Logic for creating the data in Vulkan for a specific Material. More...
class  VulkanQueue
 A wrapper around a VulkanQueueCore that allows for thread-safe access to a specific queue. More...
class  VulkanQueueCore
 A queue of commands or actions to be executed in order by the Vulkan engine. More...
class  VulkanRenderDefinition
 Creates specific information for performing a render pass within Vulkan. More...
class  VulkanRenderObject
 A root render Object for Vulkan, which consists of a set Material, Model, and Geometry that is used together to optimally create a 3D render. More...
struct  VulkanRenderObject::GeoProperties
 Cached properties of a Geometry instance within this render object. More...
struct  VulkanRenderObject::ModelProperties
 Cached properties of a parent Model for a rendered geometry instance. More...
class  VulkanRenderPipeline
 A GraphicsPipeline that renders a single Viewport for Vulkan. More...
struct  VulkanRenderPipeline::PipelineSemaphore
 A semaphore paired with an active flag for pipeline synchronization. More...
struct  VulkanRenderPipeline::PipelineSemaphores
 Paired acquire and finish semaphores for a single frame in the render pipeline. More...
struct  VulkanRenderPipeline::SwapChainSupportDetails
 Details about swap chain support on a physical device. More...
class  VulkanSession
 Creates and manages the resources necessary for converting a DesignObjectLookup into 3D rendered data in the Vulkan engine. More...
class  VulkanShader
 A shader program used to render data in Vulkan. More...
class  VulkanShaderManager
 Manages all active shaders in a VulkanSession. More...
class  VulkanStagingRing
 A ring buffer for staging GPU uploads. More...
class  VulkanVertexManager
 Manages all vertices in a specific Scene object for interfacing with Vulkan. More...

Detailed Description

Rendering engines, graphics pipelines, and viewport management.

Vulkan, OpenGL ES, and software rendering backends including graphics devices, shader management, material rendering, camera views, and GPU buffer management.