From 80c352f1d717f02e8bd40bf1f5c5427ea35875ad Mon Sep 17 00:00:00 2001 From: Joseph Aquino Date: Fri, 1 Aug 2025 02:28:36 -0400 Subject: [PATCH] fixed DrawQueue iterator for msvc --- Engine-Core/Build-Core.lua | 1 - Engine-Core/include/Containers/DrawQueue.h | 6 ++++-- Engine-Core/src/Containers/DrawQueue.cpp | 5 +++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Engine-Core/Build-Core.lua b/Engine-Core/Build-Core.lua index 2d554c9..9355738 100644 --- a/Engine-Core/Build-Core.lua +++ b/Engine-Core/Build-Core.lua @@ -81,7 +81,6 @@ project "Engine-Core" "gdi32", "freetype", "sfml-audio-s", - "openal32", "flac", "vorbisfile", "vorbis", diff --git a/Engine-Core/include/Containers/DrawQueue.h b/Engine-Core/include/Containers/DrawQueue.h index 813074b..47f3912 100644 --- a/Engine-Core/include/Containers/DrawQueue.h +++ b/Engine-Core/include/Containers/DrawQueue.h @@ -3,6 +3,7 @@ #include #include + class Sprite; namespace container @@ -34,7 +35,8 @@ public: difference_type operator-(iterator) const; friend iterator operator+(difference_type, iterator); - Sprite& operator*(); + Sprite& operator*() const; + Sprite* operator->(); Sprite& operator[](size_type); @@ -113,4 +115,4 @@ private: size_type m_capacity; }; -}//namespace \ No newline at end of file +}//namespace diff --git a/Engine-Core/src/Containers/DrawQueue.cpp b/Engine-Core/src/Containers/DrawQueue.cpp index 4d79e49..78b880d 100644 --- a/Engine-Core/src/Containers/DrawQueue.cpp +++ b/Engine-Core/src/Containers/DrawQueue.cpp @@ -3,7 +3,7 @@ #include #include -container::DrawQueue::iterator operator+(container::DrawQueue::iterator::difference_type offset, container::DrawQueue::iterator it) +static container::DrawQueue::iterator operator+(container::DrawQueue::iterator::difference_type offset, container::DrawQueue::iterator it) { return it + offset; } @@ -68,11 +68,12 @@ namespace container return m_ptr - other.m_ptr; } - Sprite& DrawQueue::iterator::operator*() + Sprite& DrawQueue::iterator::operator*() const { return *m_ptr; } + Sprite* DrawQueue::iterator::operator->() { return m_ptr;