add YAZE_LIB_PNG if directives

This commit is contained in:
scawful
2024-08-13 00:32:02 -04:00
parent feaee62462
commit 9f9edc9666
2 changed files with 12 additions and 5 deletions

View File

@@ -1,7 +1,9 @@
#include "bitmap.h"
#include <SDL.h>
#if YAZE_LIB_PNG == 1
#include <png.h>
#endif
#include <cstdint>
#include <memory>
@@ -187,6 +189,11 @@ void ConvertPngToSurface(const std::vector<uint8_t> &png_data,
SDL_Log("Successfully created SDL_Surface from PNG data");
}
std::vector<uint8_t> Bitmap::GetPngData() {
ConvertSurfaceToPNG(surface_.get(), png_data_);
return png_data_;
}
#endif // YAZE_LIB_PNG
namespace {
@@ -214,11 +221,6 @@ Uint32 GetSnesPixelFormat(int format) {
}
} // namespace
std::vector<uint8_t> Bitmap::GetPngData() {
ConvertSurfaceToPNG(surface_.get(), png_data_);
return png_data_;
}
void Bitmap::SaveSurfaceToFile(std::string_view filename) {
SDL_SaveBMP(surface_.get(), filename.data());
}

View File

@@ -46,6 +46,7 @@ enum BitmapFormat {
k8bpp = 3,
};
#if YAZE_LIB_PNG == 1
/**
* @brief Convert SDL_Surface to PNG image data.
*/
@@ -56,6 +57,7 @@ bool ConvertSurfaceToPNG(SDL_Surface *surface, std::vector<uint8_t> &buffer);
*/
void ConvertPngToSurface(const std::vector<uint8_t> &png_data,
SDL_Surface **outSurface);
#endif
/**
* @brief Represents a bitmap image.
@@ -87,7 +89,10 @@ class Bitmap {
}
}
#if YAZE_LIB_PNG == 1
std::vector<uint8_t> GetPngData();
#endif
void SaveSurfaceToFile(std::string_view filename);
/**