Nameless Engine
Loading...
Searching...
No Matches
ne::DelayedPipelineResourcesCreation Class Reference

#include <PipelineManager.h>

Public Member Functions

 DelayedPipelineResourcesCreation (const DelayedPipelineResourcesCreation &)=delete
 
DelayedPipelineResourcesCreationoperator= (const DelayedPipelineResourcesCreation &)=delete
 
 DelayedPipelineResourcesCreation (DelayedPipelineResourcesCreation &&other) noexcept=delete
 
DelayedPipelineResourcesCreationoperator= (DelayedPipelineResourcesCreation &&other) noexcept=delete
 
 DelayedPipelineResourcesCreation (PipelineManager *pPipelineManager)
 

Private Member Functions

void initialize ()
 
void destroy ()
 

Private Attributes

PipelineManagerpPipelineManager = nullptr
 

Detailed Description

RAII class that once acquired waits for the GPU to finish work up to this point, pauses the rendering, releases all internal resources from all graphics pipelines, then in destructor restores them.

Remarks
This can be useful when some render resource (like MSAA state or sample count) has changed or about to be changed so that we can make sure all pipelines are refreshed to use the new/changed resource.

Constructor & Destructor Documentation

◆ DelayedPipelineResourcesCreation()

ne::DelayedPipelineResourcesCreation::DelayedPipelineResourcesCreation ( PipelineManager pPipelineManager)
inline

Constructor.

Parameters
pPipelineManagerPipeline manager to use.

Member Function Documentation

◆ destroy()

void ne::DelayedPipelineResourcesCreation::destroy ( )
private

Does destruction logic.

◆ initialize()

void ne::DelayedPipelineResourcesCreation::initialize ( )
private

Does initialization logic.

Member Data Documentation

◆ pPipelineManager

PipelineManager* ne::DelayedPipelineResourcesCreation::pPipelineManager = nullptr
private

Do not delete (free) this pointer. Non-owning reference to pipeline manager.


The documentation for this class was generated from the following files: