1#include <Engine/Scene/DefaultCameraManager.hpp>
3#include <Engine/RadiumEngine.hpp>
4#include <Engine/Scene/CameraComponent.hpp>
12DefaultCameraManager::DefaultCameraManager() {
13 m_data = std::make_unique<DefaultCameraStorage>();
25DefaultCameraStorage::DefaultCameraStorage() =
default;
29 m_data.push_back( cam );
42 auto itr =
std::find( m_data.begin(), m_data.end(), cam );
43 if ( itr != m_data.end() ) m_data.erase( itr );
std::unique_ptr< CameraStorage > m_data
Stores the object that stores the Cameras...
void registerComponent(const Entity *entity, Component *component) final
virtual Entity * getEntity() const
Return the entity the component belongs to.
const CameraComponent * getCamera(size_t cam) const override
Return the cam-th camera.
void addCamera(CameraComponent *cam) override
Add cam for management.
void clear() override
Clear the container.
size_t size() const override
Returns the container size.
void remove(CameraComponent *cam) override
Remove a Camera from the container.
void add(CameraComponent *cam) override
Add a Camera to the container.
CameraComponent * operator[](unsigned int n) override
Access the container.
hepler function to manage enum as underlying types in VariableSet