14 void PushLayer(
Layer* layer);
15 void PushOverlay(
Layer* overlay);
19 std::expected<void, CoriError<>> PushLayerToQueue(
Layer* layer);
20 std::expected<void, CoriError<>> PushOverlayToQueue(
Layer* overlay);
21 void PopLayerToQueue();
22 void PopOverlayToQueue();
28 std::vector<Layer*>::iterator begin() {
return m_Layers.begin(); }
29 std::vector<Layer*>::iterator end() {
return m_Layers.end(); }
30 std::vector<Layer*>::reverse_iterator rbegin() {
return m_Layers.rbegin(); }
31 std::vector<Layer*>::reverse_iterator rend() {
return m_Layers.rend(); }
33 std::vector<Layer*> m_Layers;
35 std::vector<Layer*> m_LayerPushQueue;
36 uint32_t m_LayerPopQueue{ 0 };
37 std::vector<Layer*> m_OverlayPushQueue;
38 uint32_t m_OverlayPopQueue{ 0 };
40 uint32_t m_LayerInsertIndex{ 0 };
41 uint32_t m_OverlayLayerCount{ 0 };
43 std::vector<Layer*>::iterator m_LayerInsert{ m_Layers.begin() };