31 lines
769 B
C++
31 lines
769 B
C++
#pragma once
|
|
|
|
#include <vector>
|
|
#include "Layer.hpp"
|
|
#include "interfaces/IWindow.hpp"
|
|
#include "Types.hpp"
|
|
|
|
namespace TSE
|
|
{
|
|
class Scene
|
|
{
|
|
private:
|
|
string name = "Unnamed";
|
|
std::vector<std::pair<string, Layer*>> layers;
|
|
|
|
public:
|
|
void Render(IRenderer& rnd, const IWindow& wnd);
|
|
void DoneRender();
|
|
void AddLayer(Layer* l);
|
|
void RemoveLayer(const string& name);
|
|
int GetLayerCount() const;
|
|
Layer* GetLayerAt(const int& i) const;
|
|
void SetName(const string& name);
|
|
string GetName();
|
|
void Update();
|
|
void RenameLayer(const string& oldName, const string& newName);
|
|
void MoveLayerUp(Layer* l);
|
|
void MoveLayerDown(Layer* l);
|
|
};
|
|
} // namespace TSE
|