NDEVR
API Documentation
GraphicsDevice.h
1#pragma once
2#include "DLLInfo.h"
3#include <NDEVR/UUID.h>
4#include <NDEVR/Pointer.h>
5#include <NDEVR/Resource.h>
6namespace NDEVR
7{
15 {
16 public:
21
22 virtual ~GraphicsDevice() {};
25 virtual UUID id() const = 0;
28 virtual bool isValid() const = 0;
31 virtual uint04 maxSupportedSamples() const = 0;
33 virtual void init() = 0;
36 virtual const void* initLockPtr() const = 0;
39 virtual bool supportsMultiThreading() const { return false; }
42 virtual bool isInitialized() const = 0;
45 virtual bool isReady() const { return true; };
48 virtual bool updateFromLookup() const { return true; };
50 public:
53 NDEVR_GRAPHICS_API static const DynamicPointer<GraphicsDevice>& DefaultGraphicsDevice();
56 NDEVR_GRAPHICS_API static void SetDefaultGraphicsDevice(const DynamicPointer<GraphicsDevice>& device);
57 public:
59 };
60}
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
Definition Pointer.hpp:356
virtual bool isValid() const =0
Checks whether this device is valid and usable.
virtual const void * initLockPtr() const =0
Returns a pointer used for synchronizing device initialization.
virtual bool isInitialized() const =0
Checks whether the device has been initialized.
virtual bool updateFromLookup() const
Checks whether the device should update from the design lookup.
virtual bool isReady() const
Checks whether the device is ready for rendering.
Resource< bool > can_service_capture_requests
Whether the device can service image capture requests.
virtual void init()=0
Initializes the graphics device.
virtual uint04 maxSupportedSamples() const =0
Returns the maximum number of multisample samples supported.
virtual ~GraphicsDevice()
Destructor.
virtual UUID id() const =0
Returns the unique identifier for this device.
static DynamicPointer< GraphicsDevice > s_default_graphics_device
The application-wide default graphics device.
GraphicsDevice()
Default constructor.
virtual bool supportsMultiThreading() const
Checks whether the device supports multi-threaded rendering.
A core part of the engine, stores variables that can be listened to with ResourceListener which will ...
Definition Resource.h:42
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:61
The primary namespace for the NDEVR SDK.
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...