1#ifndef YAZE_UTIL_INDEXED_PNG_H
2#define YAZE_UTIL_INDEXED_PNG_H
9#include "absl/status/statusor.h"
28 std::vector<std::array<uint8_t, 4>>
palette;
36 int width,
int height,
const std::vector<uint8_t>& indices,
37 const std::vector<std::array<uint8_t, 4>>& palette);
39absl::StatusOr<PngImage>
DecodePng(
const std::vector<uint8_t>& bytes);
41absl::StatusOr<std::vector<uint8_t>>
ReadBinaryFile(
const std::string& path);
43 const std::vector<uint8_t>& bytes);
absl::Status WriteBinaryFile(const std::string &path, const std::vector< uint8_t > &bytes)
absl::StatusOr< std::vector< uint8_t > > ReadBinaryFile(const std::string &path)
absl::StatusOr< std::vector< uint8_t > > EncodeIndexedPng(int width, int height, const std::vector< uint8_t > &indices, const std::vector< std::array< uint8_t, 4 > > &palette)
absl::StatusOr< PngImage > DecodePng(const std::vector< uint8_t > &bytes)
A decoded PNG: palette indices for indexed files, RGBA otherwise.
std::vector< std::array< uint8_t, 4 > > palette
std::vector< uint8_t > indices
std::vector< uint8_t > rgba