/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ #include "ArchiveReaderIterator.hpp" #include "ArchiveReader.hpp" namespace OpenVulkano { ArchiveReaderIterator::ArchiveReaderIterator(ArchiveReader* reader) : m_reader(reader) { if (m_reader) { if (m_reader->HasNext()) m_current = m_reader->GetNext(); else m_reader = nullptr; } } ArchiveReaderIterator& ArchiveReaderIterator::operator++() { if (m_reader) { if (m_reader->HasNext()) { m_current = m_reader->GetNext(); } else { m_current.first.Reset(); m_current.second.Reset(); m_reader = nullptr; } } return *this; } }