Faro Engine 0.0.0.b519570 (main)
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
Faro::GraphicsFence Class Referenceabstract

Marker to be placed on an adapter command queue. Allows for synchronization between CPU and graphics adapter. More...

#include <GraphicsFence.hpp>

Inheritance diagram for Faro::GraphicsFence:
Faro::IGraphicsAdapterChild Faro::IObject Faro::GraphicsFenceVK

Public Member Functions

virtual void Trigger ()=0
 Place a synchronization marker on the command queue of the related GraphicsAdapter.
 
virtual bool HasFinished ()=0
 Check wether or not the previously marker (Triggered by GraphicsFence::Trigger) has been hit yet.
 
virtual void WaitForFinish ()=0
 Wait for the previously marker (Triggered by GraphicsFence::Trigger) to be hit.
 
void Init (GraphicsAdapter *adapter)
 Initialize this as a child object for an adapter. Also invokes IObject::Init, derived classes should use that for initialization.
 
GraphicsAdapterGetAdapter ()
 
template<class T >
T * GetTypedAdapter ()
 
virtual void Destroy ()
 Run the destruction logic of this class. This also frees its memory.
 

Protected Member Functions

void Init () override
 Run the initialization logic of this object. Should be overriden by deriving classes.
 

Detailed Description

Marker to be placed on an adapter command queue. Allows for synchronization between CPU and graphics adapter.

Member Function Documentation

◆ Destroy()

void Faro::IObject::Destroy ( )
virtualinherited

Run the destruction logic of this class. This also frees its memory.

Warning
When overriding, the super call must be performed last

Reimplemented in Faro::DataStream, Faro::DataStreamCopy, Faro::GraphicsBufferContainer, Faro::GraphicsSwapchain, Faro::GraphicsBufferVK, Faro::GraphicsCommandListVK, Faro::GraphicsFenceVK, Faro::GraphicsPipelineVK, Faro::GraphicsSemaphoreVK, and Faro::GraphicsSwapchainVK.

◆ GetAdapter()

GraphicsAdapter * Faro::IGraphicsAdapterChild::GetAdapter ( )
inherited

◆ GetTypedAdapter()

template<class T >
T * Faro::IGraphicsAdapterChild::GetTypedAdapter ( )
inlineinherited

◆ HasFinished()

virtual bool Faro::GraphicsFence::HasFinished ( )
pure virtual

Check wether or not the previously marker (Triggered by GraphicsFence::Trigger) has been hit yet.

Returns
true The marker has been hit
false The marker has not been hit yet

Implemented in Faro::GraphicsFenceVK.

◆ Init() [1/2]

void Faro::IGraphicsAdapterChild::Init ( )
overrideprotectedvirtualinherited

Run the initialization logic of this object. Should be overriden by deriving classes.

Reimplemented from Faro::IObject.

◆ Init() [2/2]

void Faro::IGraphicsAdapterChild::Init ( GraphicsAdapter adapter)
inherited

Initialize this as a child object for an adapter. Also invokes IObject::Init, derived classes should use that for initialization.

Parameters
adapterGraphics adapter to initialize this child on.

◆ Trigger()

virtual void Faro::GraphicsFence::Trigger ( )
pure virtual

Place a synchronization marker on the command queue of the related GraphicsAdapter.

Implemented in Faro::GraphicsFenceVK.

◆ WaitForFinish()

virtual void Faro::GraphicsFence::WaitForFinish ( )
pure virtual

Wait for the previously marker (Triggered by GraphicsFence::Trigger) to be hit.

Implemented in Faro::GraphicsFenceVK.


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