/***************************************************************************** * Copyright (c) 2014-2019 OpenRCT2 developers * * For a complete list of all authors, please refer to contributors.md * Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2 * * OpenRCT2 is licensed under the GNU General Public License version 3. *****************************************************************************/ #pragma once #include "../common.h" #include "../drawing/Drawing.h" #include #include interface IReadObjectContext; interface IStream; class ImageTable { private: std::unique_ptr _data; std::vector _entries; public: ImageTable() = default; ImageTable(const ImageTable&) = delete; ImageTable& operator=(const ImageTable&) = delete; ~ImageTable(); void Read(IReadObjectContext* context, IStream* stream); const rct_g1_element* GetImages() const { return _entries.data(); } uint32_t GetCount() const { return static_cast(_entries.size()); } void AddImage(const rct_g1_element* g1); };