23 lines
782 B
C++
23 lines
782 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#include "core/rendering/surface.hpp"
|
|
|
|
namespace Resource::PaletteLoader {
|
|
|
|
// Detecta el format pel sufix i retorna una Palette (256 entrades ARGB).
|
|
// Actualment suporta:
|
|
// - ".pal" → JASC-PAL versió 0100 (plaintext "R G B" per línia).
|
|
// - ".gif" → paleta global del GIF (reutilitza el decoder existent).
|
|
// Cridar-lo amb un altre sufix llança std::runtime_error.
|
|
auto loadFromFile(const std::string& file_path) -> Palette;
|
|
|
|
// Parser pur del format JASC-PAL, útil si ja es té el contingut en memòria
|
|
// (p.ex. des d'un resources.pack). No fa I/O.
|
|
auto parseJasc(const std::vector<std::uint8_t>& bytes) -> Palette;
|
|
|
|
} // namespace Resource::PaletteLoader
|