Lugdunum  0.1.0
Classes | Public Member Functions | Private Attributes | List of all members
lug::Graphics::Vulkan::Render::Queue Class Referencefinal

#include <Queue.hpp>

Inheritance diagram for lug::Graphics::Vulkan::Render::Queue:
[legend]
Collaboration diagram for lug::Graphics::Vulkan::Render::Queue:
[legend]

Classes

struct  PrimitiveSetInstance
 

Public Member Functions

 Queue ()=default
 
 Queue (const Queue &)=delete
 
 Queue (Queue &&)=delete
 
Queueoperator= (const Queue &)=delete
 
Queueoperator= (Queue &&)=delete
 
 ~Queue ()=default
 
void addMeshInstance (Scene::Node &node, const lug::Graphics::Renderer &renderer) override final
 
void addLight (Scene::Node &node) override final
 
void addSkyBox (Resource::SharedPtr<::lug::Graphics::Render::SkyBox > skyBox) override final
 
void clear () override final
 
const std::map< Render::Pipeline::Id, std::vector< PrimitiveSetInstance > > getPrimitiveSets () const
 
const std::vector< Scene::Node * > getLights () const
 
std::size_t getLightsCount () const
 
const Resource::SharedPtr< Render::SkyBoxgetSkyBox () const
 
- Public Member Functions inherited from lug::Graphics::Render::Queue
 Queue ()=default
 
 Queue (const Queue &)=delete
 
 Queue (Queue &&)=delete
 
Queueoperator= (const Queue &)=delete
 
Queueoperator= (Queue &&)=delete
 
 ~Queue ()=default
 
virtual void addSkyBox (Resource::SharedPtr< Render::SkyBox > skyBox)=0
 

Private Attributes

std::map< Render::Pipeline::Id, std::vector< PrimitiveSetInstance > > _primitiveSets
 
std::vector< Scene::Node * > _lights {50}
 
std::size_t _lightsCount {0}
 
Resource::SharedPtr< Render::SkyBox_skyBox {nullptr}
 

Detailed Description

Definition at line 17 of file Queue.hpp.

Constructor & Destructor Documentation

◆ Queue() [1/3]

lug::Graphics::Vulkan::Render::Queue::Queue ( )
default

◆ Queue() [2/3]

lug::Graphics::Vulkan::Render::Queue::Queue ( const Queue )
delete

◆ Queue() [3/3]

lug::Graphics::Vulkan::Render::Queue::Queue ( Queue &&  )
delete

◆ ~Queue()

lug::Graphics::Vulkan::Render::Queue::~Queue ( )
default

Member Function Documentation

◆ operator=() [1/2]

Queue& lug::Graphics::Vulkan::Render::Queue::operator= ( const Queue )
delete

◆ operator=() [2/2]

Queue& lug::Graphics::Vulkan::Render::Queue::operator= ( Queue &&  )
delete

◆ addMeshInstance()

void lug::Graphics::Vulkan::Render::Queue::addMeshInstance ( Scene::Node node,
const lug::Graphics::Renderer renderer 
)
finaloverridevirtual

Implements lug::Graphics::Render::Queue.

Definition at line 11 of file Queue.cpp.

◆ addLight()

void lug::Graphics::Vulkan::Render::Queue::addLight ( Scene::Node node)
finaloverridevirtual

Implements lug::Graphics::Render::Queue.

Definition at line 48 of file Queue.cpp.

◆ addSkyBox()

void lug::Graphics::Vulkan::Render::Queue::addSkyBox ( Resource::SharedPtr<::lug::Graphics::Render::SkyBox skyBox)
finaloverride

Definition at line 53 of file Queue.cpp.

◆ clear()

void lug::Graphics::Vulkan::Render::Queue::clear ( )
finaloverridevirtual

Implements lug::Graphics::Render::Queue.

Definition at line 57 of file Queue.cpp.

◆ getPrimitiveSets()

const std::map< Render::Pipeline::Id, std::vector< Queue::PrimitiveSetInstance > > lug::Graphics::Vulkan::Render::Queue::getPrimitiveSets ( ) const

Definition at line 62 of file Queue.cpp.

◆ getLights()

const std::vector< Scene::Node * > lug::Graphics::Vulkan::Render::Queue::getLights ( ) const

Definition at line 66 of file Queue.cpp.

◆ getLightsCount()

std::size_t lug::Graphics::Vulkan::Render::Queue::getLightsCount ( ) const

Definition at line 70 of file Queue.cpp.

◆ getSkyBox()

const Resource::SharedPtr< Render::SkyBox > lug::Graphics::Vulkan::Render::Queue::getSkyBox ( ) const

Definition at line 74 of file Queue.cpp.

Member Data Documentation

◆ _primitiveSets

std::map<Render::Pipeline::Id, std::vector<PrimitiveSetInstance> > lug::Graphics::Vulkan::Render::Queue::_primitiveSets
private

Definition at line 51 of file Queue.hpp.

◆ _lights

std::vector<Scene::Node*> lug::Graphics::Vulkan::Render::Queue::_lights {50}
private

Definition at line 53 of file Queue.hpp.

◆ _lightsCount

std::size_t lug::Graphics::Vulkan::Render::Queue::_lightsCount {0}
private

Definition at line 54 of file Queue.hpp.

◆ _skyBox

Resource::SharedPtr<Render::SkyBox> lug::Graphics::Vulkan::Render::Queue::_skyBox {nullptr}
private

Definition at line 56 of file Queue.hpp.


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