34#include <NDEVR/QtVulkanSession.h>
35#include <NDEVR/QTGraphicsWindow.h>
36#include <NDEVR/VirtualCameraView.h>
37#include <NDEVR/QTModelManager.h>
38#include <NDEVR/ViewportFactory.h>
39#include <NDEVR/WindowContainer.h>
42#include <QAbstractScrollArea>
62 explicit VulkanGraphicsWindow(QWindow* parent, Qt::WindowFlags flags);
64 ~VulkanGraphicsWindow();
67 void setModelManager(QTModelManager* manager)
override;
69 virtual void initialize()
override;
72 void* getSurface()
override;
75 void finishFrame(GraphicsUpdateArguments& args)
final override;
77 void updateInstance()
override;
80 void exposeEvent(QExposeEvent*)
override;
84 static void SetupVulkanInstance(QTModelManager* manager);
87 static QVulkanInstance* DefaultQTVulkanInstance();
89#ifdef MAC_OS_X_VERSION_10_0
90 VkSurfaceKHR_T* m_mac_os_surface =
nullptr;
92 QVulkanInstance* m_qt_instance =
nullptr;
Simple version of ResourceListener which allows for a simple function callback that will be executed ...
A thread that executes a user-provided callback function concurrently.
A core class where all Design Objects including models, materials, and geometries are stored.
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
A Window used to render 3D graphics.
A ResourceListener which will always be executed on the main UI thread and can be tied to a Qt Object...
An object that renders a specific Camera object, typically run on a different thread than the main UI...
A service which can generate Viewports based on Camera data.
A Viewport for rendering 3D objects in the scene with the NDEVR Graphics Engine.
A QTGraphicsWindow for rendering using Vulkan.
virtual VirtualCameraView * createView(const DynamicPointer< Camera > &camera, DesignObjectLookup *model_manager, QWidget *parent=nullptr) override
Creates a Vulkan-based virtual camera view.
virtual bool canCreateView(const DynamicPointer< Camera > &camera, DesignObjectLookup *model_manager, bool ignore_active) override
Checks whether this factory can create a view for the given camera.
virtual void resetToDefaults() override
Resets the factory to its default configuration.
The primary namespace for the NDEVR SDK.