Lugdunum  0.1.0
Queue.hpp
Go to the documentation of this file.
1 #pragma once
2 
5 
6 namespace lug {
7 namespace Graphics {
8 
9 class Renderer;
10 
11 namespace Scene {
12 class Node;
13 }
14 
15 namespace Render {
16 
17 class Queue {
18 public:
19  Queue() = default;
20 
21  Queue(const Queue&) = delete;
22  Queue(Queue&&) = delete;
23 
24  Queue& operator=(const Queue&) = delete;
25  Queue& operator=(Queue&&) = delete;
26 
27  ~Queue() = default;
28 
29  virtual void addMeshInstance(Scene::Node& node, const Renderer& renderer) = 0;
30  virtual void addLight(Scene::Node& node) = 0;
31  virtual void addSkyBox(Resource::SharedPtr<Render::SkyBox> skyBox) = 0;
32  virtual void clear() = 0;
33 };
34 
35 } // Render
36 } // Graphics
37 } // lug
Dummy class for a shared pointer.
Definition: Resource.hpp:66