Radium Engine  1.5.20
Loading...
Searching...
No Matches
CameraStorage.hpp
1#pragma once
2
3#include <Engine/RaEngine.hpp>
4#include <Engine/Scene/CameraComponent.hpp>
5
6namespace Ra {
7namespace Engine {
8namespace Scene {
9
14class 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.
hepler function to manage enum as underlying types in VariableSet
Definition Cage.cpp:3