50 bool success,
const std::string& reason =
"");
52 bool has_palette,
int color_count);
53 void LogSurfaceState(
const std::string& location, SDL_Surface* surface);
73 std::string ExportToJSON()
const;
74 std::string ExportColorComparisonsJSON()
const;
75 std::string SamplePixelJSON(
int x,
int y)
const;
78 std::string ExportFullStateJSON()
const;
79 std::string ExportPaletteDataJSON()
const;
80 std::string ExportTimelineJSON()
const;
83 std::string GetDiagnosticSummary()
const;
84 std::string GetHypothesisAnalysis()
const;
Represents a bitmap image optimized for SNES ROM hacking.
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).
void SetCurrentBitmap(gfx::Bitmap *bitmap)
void LogTextureCreation(const std::string &location, bool has_palette, int color_count)
uint32_t ComputePaletteChecksum(const gfx::SnesPalette &palette) const
void AddEvent(const PaletteDebugEvent &event)
static constexpr size_t kMaxEvents
static constexpr size_t kMaxComparisons
void LogPaletteLoad(const std::string &location, int palette_id, const gfx::SnesPalette &palette)
static PaletteDebugger & Get()
gfx::SnesPalette current_palette_
const std::vector< PaletteDebugEvent > & GetEvents() const
void LogPaletteApplication(const std::string &location, int palette_id, bool success, const std::string &reason="")
gfx::Bitmap * current_bitmap_
void SetCurrentPalette(const gfx::SnesPalette &palette)
void AddComparisonLimited(const ColorComparison &comp)
PaletteDebugger()=default
std::vector< PaletteDebugEvent > events_
std::vector< ColorComparison > comparisons_
void LogSurfaceState(const std::string &location, SDL_Surface *surface)
std::vector< ColorComparison > GetColorComparisons() const
void AddComparison(const ColorComparison &comp)
ColorComparison SamplePixelAt(int x, int y) const
Zelda 3 specific classes and functions.
std::vector< uint8_t > sample_colors