From 7e5b3858f49b53bdcc5ce5689473f4f84e0410b5 Mon Sep 17 00:00:00 2001 From: scawful Date: Tue, 6 Aug 2024 19:19:28 -0400 Subject: [PATCH] mark BitmapManager as deprecated, transitioning to fixed arrays or vectors over hash map --- src/app/gfx/bitmap.h | 1 + src/app/rom.h | 15 +++++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/app/gfx/bitmap.h b/src/app/gfx/bitmap.h index 3e83c7c9..11f503fd 100644 --- a/src/app/gfx/bitmap.h +++ b/src/app/gfx/bitmap.h @@ -234,6 +234,7 @@ using BitmapTable = std::unordered_map; /** * @brief Hash map container of shared pointers to Bitmaps. + * \deprecated Moved to fixed array or vector for storing groups of bitmaps. */ class BitmapManager { private: diff --git a/src/app/rom.h b/src/app/rom.h index fee078fd..4b4a3305 100644 --- a/src/app/rom.h +++ b/src/app/rom.h @@ -421,13 +421,15 @@ class Rom : public core::ExperimentFlags { // Full graphical data for the game Bytes graphics_buffer() const { return graphics_buffer_; } - gfx::BitmapTable graphics_bin() const { return graphics_bin_; } + [[deprecated]] gfx::BitmapTable graphics_bin() const { return graphics_bin_; } - gfx::Bitmap* mutable_graphics_sheet(int index) { + [[deprecated]] gfx::Bitmap* mutable_graphics_sheet(int index) { return &graphics_bin_.at(index); } - auto bitmap_manager() { return graphics_manager_; } - auto mutable_bitmap_manager() { return &graphics_manager_; } + + [[deprecated]] auto bitmap_manager() { return graphics_manager_; } + [[deprecated]] auto mutable_bitmap_manager() { return &graphics_manager_; } + auto link_graphics() { return link_graphics_; } auto mutable_link_graphics() { return &link_graphics_; } @@ -505,7 +507,6 @@ class Rom : public core::ExperimentFlags { void SaveGroupsToRom(); auto resource_label() { return &resource_label_manager_; } - auto font_gfx_data() { return font_gfx_data_; } private: struct WriteAction { @@ -569,7 +570,9 @@ class Rom : public core::ExperimentFlags { Z3_Version version_ = Z3_Version::US; gfx::BitmapTable graphics_bin_; - gfx::BitmapManager graphics_manager_; + + [[deprecated("BitmapManager has unpredictable destructor behavior.")]] gfx:: + BitmapManager graphics_manager_; gfx::BitmapTable link_graphics_; gfx::SnesPalette link_palette_; gfx::PaletteGroupMap palette_groups_;