Cogs.Core
Public Member Functions | Public Attributes | List of all members
Cogs::Core::PotreeRenderer Struct Reference
Inheritance diagram for Cogs::Core::PotreeRenderer:
Cogs::Core::IRendererExtension

Public Member Functions

void initialize (Context *context, IGraphicsDevice *device) override
 Initialize the extension using the given context and device.
 
void handleEvent (uint32_t eventId, const DrawContext *renderingContext) override
 Called when rendering events occur.
 
void generateCommands (const RenderTaskContext *renderingContext, RenderList *renderList) override
 
- Public Member Functions inherited from Cogs::Core::IRendererExtension
virtual ~IRendererExtension ()=default
 Provided for destruction via pointer to base.
 
virtual void initialize (class Context *context, IGraphicsDevice *device)=0
 Initialize the extension using the given context and device.
 
virtual void handleEvent (uint32_t eventId, const DrawContext *renderingContext)=0
 Called when rendering events occur.
 
virtual void generateCommands (const RenderTaskContext *renderingContext, RenderList *renderList)=0
 

Public Attributes

Contextcontext = nullptr
 
IGraphicsDevicedevice = nullptr
 
PotreeSystempotreeSystem = nullptr
 
Cogs::VertexBufferHandle boxVertices
 
Cogs::IndexBufferHandle boxEdgeIndices
 
unsigned boxEdgeIndexPrimitives = 0
 
MeshStreamsLayout boxStreamsLayout
 

Detailed Description

Definition at line 15 of file PotreeRenderer.h.

Member Function Documentation

◆ generateCommands()

void Cogs::Core::PotreeRenderer::generateCommands ( const RenderTaskContext renderingContext,
RenderList renderList 
)
overridevirtual

Implements Cogs::Core::IRendererExtension.

Definition at line 282 of file PotreeRenderer.cpp.

◆ handleEvent()

void Cogs::Core::PotreeRenderer::handleEvent ( uint32_t  eventId,
const DrawContext renderingContext 
)
overridevirtual

Called when rendering events occur.

Allows rendering extensions to handle the events in a custom way.

Parameters
eventIdRendering event identifier. May be one of RenderingEvent, or custom identifier.
renderingContextPointer to rendering context data, or nullptr if not present.

Implements Cogs::Core::IRendererExtension.

Definition at line 238 of file PotreeRenderer.cpp.

References Cogs::BindFlags::ConstantBuffer, Cogs::TextureFlags::Default, Cogs::Usage::Dynamic, Cogs::IGraphicsDevice::getBuffers(), Cogs::IGraphicsDevice::getTextures(), Cogs::Core::HandleIsValid(), Cogs::IBuffers::loadBuffer(), Cogs::ITextures::loadTexture(), Cogs::Handle_t< TextureTag >::NoHandle, Cogs::Core::RenderingEvent::PostRender, Cogs::Core::RenderingEvent::PreRender, Cogs::ITextures::releaseTexture(), and Cogs::AccessMode::Write.

◆ initialize()

void Cogs::Core::PotreeRenderer::initialize ( Context context,
IGraphicsDevice device 
)
overridevirtual

Initialize the extension using the given context and device.

Parameters
contextContext the extension exists in.
deviceGraphics device used by the renderer that can be shared with the extension.

Implements Cogs::Core::IRendererExtension.

Definition at line 198 of file PotreeRenderer.cpp.

References Cogs::IGraphicsDevice::getBuffers(), Cogs::Core::MeshStreamsLayout::numStreams, Cogs::Position, Cogs::Core::MeshStreamsLayout::updateHash(), Cogs::VertexData, and Cogs::Core::MeshStreamsLayout::vertexFormats.

Member Data Documentation

◆ boxEdgeIndexPrimitives

unsigned Cogs::Core::PotreeRenderer::boxEdgeIndexPrimitives = 0

Definition at line 28 of file PotreeRenderer.h.

◆ boxEdgeIndices

Cogs::IndexBufferHandle Cogs::Core::PotreeRenderer::boxEdgeIndices

Definition at line 27 of file PotreeRenderer.h.

◆ boxStreamsLayout

MeshStreamsLayout Cogs::Core::PotreeRenderer::boxStreamsLayout

Definition at line 30 of file PotreeRenderer.h.

◆ boxVertices

Cogs::VertexBufferHandle Cogs::Core::PotreeRenderer::boxVertices

Definition at line 26 of file PotreeRenderer.h.

◆ context

Context* Cogs::Core::PotreeRenderer::context = nullptr

Definition at line 22 of file PotreeRenderer.h.

◆ device

IGraphicsDevice* Cogs::Core::PotreeRenderer::device = nullptr

Definition at line 23 of file PotreeRenderer.h.

◆ potreeSystem

PotreeSystem* Cogs::Core::PotreeRenderer::potreeSystem = nullptr

Definition at line 25 of file PotreeRenderer.h.


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