Radium Engine  1.5.0
CameraStorage.hpp
1 #pragma once
2 
3 #include <Engine/RaEngine.hpp>
4 #include <Engine/Scene/CameraComponent.hpp>
5 
6 namespace Ra {
7 namespace Engine {
8 namespace Scene {
9 
14 class RA_ENGINE_API CameraStorage
15 {
16  // Radium-V2 : make camera storage compatible with range for ...
17  public:
18  CameraStorage() = default;
19 
21  virtual ~CameraStorage() = default;
22 
23  // Redefine container classic functions.
24 
26  virtual size_t size() const = 0;
27 
29  virtual void add( CameraComponent* cam ) = 0;
30 
32  virtual void remove( CameraComponent* cam ) = 0;
33 
35  virtual void clear() = 0;
36 
38  virtual CameraComponent* operator[]( unsigned int n ) = 0;
39 };
40 
41 } // namespace Scene
42 } // namespace Engine
43 } // namespace Ra
virtual void remove(CameraComponent *cam)=0
Remove a Camera from the container.
virtual ~CameraStorage()=default
Destructor.
virtual void clear()=0
Clear the container.
virtual void add(CameraComponent *cam)=0
Add a Camera to the container.
virtual CameraComponent * operator[](unsigned int n)=0
Access the container.
virtual size_t size() const =0
Returns the container size.
Definition: Cage.cpp:3