Convert m_pRenderControl from smart pointer to object

Having it be a pointer was an unnecessary complication with no gain.
This commit is contained in:
Vasily
2019-11-30 18:14:49 +01:00
committed by username223
parent a237168ef7
commit 2b9b3d653a
2 changed files with 10 additions and 12 deletions
+9 -11
View File
@@ -402,11 +402,11 @@ void OverlayController::Shutdown()
} }
if ( m_pRenderTimer ) if ( m_pRenderTimer )
{ {
disconnect( m_pRenderControl.get(), disconnect( &m_renderControl,
SIGNAL( renderRequested() ), SIGNAL( renderRequested() ),
this, this,
SLOT( OnRenderRequest() ) ); SLOT( OnRenderRequest() ) );
disconnect( m_pRenderControl.get(), disconnect( &m_renderControl,
SIGNAL( sceneChanged() ), SIGNAL( sceneChanged() ),
this, this,
SLOT( OnRenderRequest() ) ); SLOT( OnRenderRequest() ) );
@@ -418,7 +418,6 @@ void OverlayController::Shutdown()
m_pRenderTimer.reset(); m_pRenderTimer.reset();
} }
m_pWindow.reset(); m_pWindow.reset();
m_pRenderControl.reset();
m_pFbo.reset(); m_pFbo.reset();
m_pOpenGLContext.reset(); m_pOpenGLContext.reset();
m_pOffscreenSurface.reset(); m_pOffscreenSurface.reset();
@@ -493,15 +492,14 @@ void OverlayController::SetWidget( QQuickItem* quickItem,
static_cast<int>( quickItem->height() ), static_cast<int>( quickItem->height() ),
fboFormat ) ); fboFormat ) );
m_pRenderControl.reset( new QQuickRenderControl() ); m_pWindow.reset( new QQuickWindow( &m_renderControl ) );
m_pWindow.reset( new QQuickWindow( m_pRenderControl.get() ) );
m_pWindow->setRenderTarget( m_pFbo.get() ); m_pWindow->setRenderTarget( m_pFbo.get() );
quickItem->setParentItem( m_pWindow->contentItem() ); quickItem->setParentItem( m_pWindow->contentItem() );
m_pWindow->setGeometry( 0, m_pWindow->setGeometry( 0,
0, 0,
static_cast<int>( quickItem->width() ), static_cast<int>( quickItem->width() ),
static_cast<int>( quickItem->height() ) ); static_cast<int>( quickItem->height() ) );
m_pRenderControl->initialize( m_pOpenGLContext.get() ); m_renderControl.initialize( m_pOpenGLContext.get() );
vr::HmdVector2_t vecWindowSize vr::HmdVector2_t vecWindowSize
= { static_cast<float>( quickItem->width() ), = { static_cast<float>( quickItem->width() ),
@@ -509,11 +507,11 @@ void OverlayController::SetWidget( QQuickItem* quickItem,
vr::VROverlay()->SetOverlayMouseScale( m_ulOverlayHandle, vr::VROverlay()->SetOverlayMouseScale( m_ulOverlayHandle,
&vecWindowSize ); &vecWindowSize );
connect( m_pRenderControl.get(), connect( &m_renderControl,
SIGNAL( renderRequested() ), SIGNAL( renderRequested() ),
this, this,
SLOT( OnRenderRequest() ) ); SLOT( OnRenderRequest() ) );
connect( m_pRenderControl.get(), connect( &m_renderControl,
SIGNAL( sceneChanged() ), SIGNAL( sceneChanged() ),
this, this,
SLOT( OnRenderRequest() ) ); SLOT( OnRenderRequest() ) );
@@ -558,9 +556,9 @@ void OverlayController::renderOverlay()
&& !vr::VROverlay()->IsOverlayVisible( && !vr::VROverlay()->IsOverlayVisible(
m_ulOverlayThumbnailHandle ) ) ) m_ulOverlayThumbnailHandle ) ) )
return; return;
m_pRenderControl->polishItems(); m_renderControl.polishItems();
m_pRenderControl->sync(); m_renderControl.sync();
m_pRenderControl->render(); m_renderControl.render();
GLuint unTexture = m_pFbo->texture(); GLuint unTexture = m_pFbo->texture();
if ( unTexture != 0 ) if ( unTexture != 0 )
+1 -1
View File
@@ -106,7 +106,7 @@ private:
vr::VROverlayHandle_t m_ulOverlayThumbnailHandle vr::VROverlayHandle_t m_ulOverlayThumbnailHandle
= vr::k_ulOverlayHandleInvalid; = vr::k_ulOverlayHandleInvalid;
std::unique_ptr<QQuickRenderControl> m_pRenderControl; QQuickRenderControl m_renderControl;
std::unique_ptr<QQuickWindow> m_pWindow; std::unique_ptr<QQuickWindow> m_pWindow;
std::unique_ptr<QOpenGLFramebufferObject> m_pFbo; std::unique_ptr<QOpenGLFramebufferObject> m_pFbo;
std::unique_ptr<QOpenGLContext> m_pOpenGLContext; std::unique_ptr<QOpenGLContext> m_pOpenGLContext;