MCPcopy Create free account
hub / github.com/Kitware/VTK / ReleaseGraphicsResources

Method ReleaseGraphicsResources

Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx:718–786  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

716
717//------------------------------------------------------------------------------
718void vtkOpenGLRenderWindow::ReleaseGraphicsResources(vtkWindow* renWin)
719{
720 this->PushContext();
721
722 delete this->ResolveQuad;
723 this->ResolveQuad = nullptr;
724
725 delete this->DepthBlitQuad;
726 this->DepthBlitQuad = nullptr;
727
728 delete this->FlipQuad;
729 this->FlipQuad = nullptr;
730
731 delete this->DepthReadQuad;
732 this->DepthReadQuad = nullptr;
733
734 this->RenderFramebuffer->ReleaseGraphicsResources(renWin);
735 this->DisplayFramebuffer->ReleaseGraphicsResources(renWin);
736 this->ResolveFramebuffer->ReleaseGraphicsResources(renWin);
737 this->DepthFramebuffer->ReleaseGraphicsResources(renWin);
738
739 // release the registered resources
740 if (this->NoiseTextureObject)
741 {
742 this->NoiseTextureObject->ReleaseGraphicsResources(this);
743 }
744
745 std::set<vtkGenericOpenGLResourceFreeCallback*>::iterator it = this->Resources.begin();
746 while (it != this->Resources.end())
747 {
748 (*it)->Release();
749 it = this->Resources.begin();
750 }
751
752 vtkCollectionSimpleIterator rsit;
753 this->Renderers->InitTraversal(rsit);
754 vtkRenderer* aren;
755 while ((aren = this->Renderers->GetNextRenderer(rsit)))
756 {
757 if (aren->GetRenderWindow() == this)
758 {
759 aren->ReleaseGraphicsResources(renWin);
760 }
761 }
762
763 if (this->DrawPixelsTextureObject != nullptr)
764 {
765 this->DrawPixelsTextureObject->ReleaseGraphicsResources(renWin);
766 }
767
768 this->GetShaderCache()->ReleaseGraphicsResources(renWin);
769 // this->VBOCache->ReleaseGraphicsResources(renWin);
770
771 this->GetState()->VerifyNoActiveTextures();
772
773 this->RenderTimer->ReleaseGraphicsResources();
774
775 if (this->TQuad2DVBO)

Callers 3

DrawPixelsMethod · 0.45
SetZbufferDataMethod · 0.45
CreateFramebuffersMethod · 0.45

Calls 12

GetShaderCacheMethod · 0.95
DeleteMethod · 0.65
NewFunction · 0.50
PushContextMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
ReleaseMethod · 0.45
InitTraversalMethod · 0.45
GetRenderWindowMethod · 0.45
GetStateMethod · 0.45
PopContextMethod · 0.45

Tested by

no test coverage detected