Elevate Engine 1
Loading...
Searching...
No Matches
Elevate::LayerStack Class Reference

#include <LayerStack.h>

Public Member Functions

 LayerStack ()
 
 ~LayerStack ()
 
void PushLayer (Layer *layer)
 
void PushOverlay (Layer *overlay)
 
void PopLayer (Layer *layer)
 
void PopOverlay (Layer *overlay)
 
std::vector< Layer * >::iterator begin ()
 
std::vector< Layer * >::iterator end ()
 

Detailed Description

Definition at line 8 of file LayerStack.h.

Constructor & Destructor Documentation

◆ LayerStack()

Elevate::LayerStack::LayerStack ( )

Definition at line 6 of file LayerStack.cpp.

7{
8}

◆ ~LayerStack()

Elevate::LayerStack::~LayerStack ( )

Definition at line 10 of file LayerStack.cpp.

11{
12 for (Layer* layer : m_Layers)
13 delete layer;
14}

Member Function Documentation

◆ begin()

std::vector< Layer * >::iterator Elevate::LayerStack::begin ( )
inline

Definition at line 19 of file LayerStack.h.

19{ return m_Layers.begin(); }

◆ end()

std::vector< Layer * >::iterator Elevate::LayerStack::end ( )
inline

Definition at line 20 of file LayerStack.h.

20{ return m_Layers.end(); }

◆ PopLayer()

void Elevate::LayerStack::PopLayer ( Layer layer)

Definition at line 27 of file LayerStack.cpp.

28{
29 auto it = std::find(m_Layers.begin(), m_Layers.end(), layer);
30 if (it != m_Layers.end())
31 {
32 m_Layers.erase(it);
33 m_LayerInsertIndex--;
34 }
35}

◆ PopOverlay()

void Elevate::LayerStack::PopOverlay ( Layer overlay)

Definition at line 37 of file LayerStack.cpp.

38{
39 auto it = std::find(m_Layers.begin(), m_Layers.end(), overlay);
40 if (it != m_Layers.end())
41 {
42 m_Layers.erase(it);
43 }
44}

◆ PushLayer()

void Elevate::LayerStack::PushLayer ( Layer layer)

Definition at line 16 of file LayerStack.cpp.

17{
18 m_Layers.emplace(m_Layers.begin() + m_LayerInsertIndex, layer);
19 m_LayerInsertIndex++;
20}

◆ PushOverlay()

void Elevate::LayerStack::PushOverlay ( Layer overlay)

Definition at line 22 of file LayerStack.cpp.

23{
24 m_Layers.emplace_back(overlay);
25}

The documentation for this class was generated from the following files: