Refactor Bitmap class: remove deprecated constructor and update Initialize method signature

This commit is contained in:
scawful
2025-03-20 18:17:45 -04:00
parent d8a783a69a
commit 95df0b5d8b
4 changed files with 6 additions and 14 deletions

View File

@@ -1077,8 +1077,8 @@ absl::Status OverworldEditor::LoadGraphics() {
util::logf("Loading overworld tile16 graphics.");
// Loop through the tiles and copy their pixel data into separate vectors
for (unsigned int i = 0; i < zelda3::kNumTile16Individual; i++) {
tile16_individual_[i].Create(kTile16Size, kTile16Size, 0x08,
kTile16Size * kTile16Size);
std::vector<uint8_t> tile16_data(kTile16Size * kTile16Size);
tile16_individual_[i].Create(kTile16Size, kTile16Size, 0x08, tile16_data);
// Copy the pixel data for the current tile into the vector
for (int ty = 0; ty < kTile16Size; ty++) {

View File

@@ -6,9 +6,11 @@
#endif
#include <cstdint>
#include <future>
#include <memory>
#include "absl/status/status.h"
#include "app/core/platform/renderer.h"
#include "app/gfx/snes_palette.h"
#include "util/macro.h"
@@ -209,10 +211,6 @@ void Bitmap::SaveSurfaceToFile(std::string_view filename) {
SDL_SaveBMP(surface_.get(), filename.data());
}
Bitmap::Bitmap(int width, int height, int depth, int data_size) {
Create(width, height, depth, std::vector<uint8_t>(data_size, 0));
}
void Bitmap::Initialize(int width, int height, int depth,
std::span<uint8_t> &data) {
width_ = width;

View File

@@ -67,8 +67,6 @@ void ConvertPngToSurface(const std::vector<uint8_t> &png_data,
class Bitmap {
public:
Bitmap() = default;
Bitmap(int width, int height, int depth, int data_size);
Bitmap(int width, int height, int depth, const std::vector<uint8_t> &data)
: width_(width), height_(height), depth_(depth), data_(data) {
Create(width, height, depth, data);
@@ -85,6 +83,7 @@ class Bitmap {
std::cerr << "Error applying palette in bitmap constructor." << std::endl;
}
}
void Initialize(int width, int height, int depth, std::span<uint8_t> &data);
#if YAZE_LIB_PNG == 1
std::vector<uint8_t> GetPngData();
@@ -92,11 +91,6 @@ class Bitmap {
void SaveSurfaceToFile(std::string_view filename);
void Initialize(int width, int height, int depth, std::span<uint8_t> &data);
void Create(int width, int height, int depth, int data_size) {
Create(width, height, depth, std::vector<uint8_t>(data_size, 0));
}
void Create(int width, int height, int depth, std::span<uint8_t> data);
void Create(int width, int height, int depth,
const std::vector<uint8_t> &data);

View File

@@ -44,8 +44,8 @@ absl::StatusOr<Tilesheet> CreateTilesheetFromGraphicsBuffer(
}
void Tilesheet::Init(int width, int height, TileType tile_type) {
bitmap_ = std::make_shared<Bitmap>(width, height, 8, 0x20000);
internal_data_.resize(0x20000);
bitmap_ = std::make_shared<Bitmap>(width, height, 8, internal_data_);
tile_type_ = tile_type;
if (tile_type_ == TileType::Tile8) {
tile_width_ = 8;