Radium Engine  1.5.20
Loading...
Searching...
No Matches
DefaultCameraManager.hpp
1#pragma once
2
3#include <Core/Asset/Camera.hpp>
4#include <Engine/Scene/CameraComponent.hpp>
5#include <Engine/Scene/CameraManager.hpp>
6#include <Engine/Scene/CameraStorage.hpp>
7#include <memory>
8#include <vector>
9
10namespace Ra {
11namespace Engine {
12namespace Scene {
13
17class RA_ENGINE_API DefaultCameraStorage : public CameraStorage
18{
19 public:
21 void add( CameraComponent* cam ) override;
22 void remove( CameraComponent* cam ) override;
23 size_t size() const override;
24 void clear() override;
25 CameraComponent* operator[]( unsigned int n ) override;
26
27 private:
29 // std::multmmap<Ra::Core::Asset::Camera::ProjType, CameraComponent*> m_data;
31};
32
36class RA_ENGINE_API DefaultCameraManager : public CameraManager
37{
38 public:
40
42 const CameraComponent* getCamera( size_t cam ) const override;
43
45 void addCamera( CameraComponent* cam ) override;
46};
47
48} // namespace Scene
49} // namespace Engine
50} // namespace Ra
DefaultCameraManager. A simple Camera Manager with a list of Cameras.
hepler function to manage enum as underlying types in VariableSet
Definition Cage.cpp:3