forked from Green-Sky/tomato
27 lines
522 B
C++
27 lines
522 B
C++
|
#pragma once
|
||
|
|
||
|
#include <cstdint>
|
||
|
#include <vector>
|
||
|
|
||
|
struct ImageLoaderI {
|
||
|
virtual ~ImageLoaderI(void) {}
|
||
|
|
||
|
struct ImageInfo {
|
||
|
uint32_t width {0};
|
||
|
uint32_t height {0};
|
||
|
};
|
||
|
virtual ImageInfo loadInfoFromMemory(const uint8_t* data, uint64_t data_size) = 0;
|
||
|
|
||
|
struct ImageResult {
|
||
|
uint32_t width {0};
|
||
|
uint32_t height {0};
|
||
|
struct Frame {
|
||
|
int32_t ms {0};
|
||
|
std::vector<uint8_t> data;
|
||
|
};
|
||
|
std::vector<Frame> frames;
|
||
|
};
|
||
|
virtual ImageResult loadFromMemoryRGBA(const uint8_t* data, uint64_t data_size) = 0;
|
||
|
};
|
||
|
|