diff options
| author | TazyFoundSoup <gardendistrict0x0@outlook.com> | 2026-02-04 16:06:22 +1100 |
|---|---|---|
| committer | TazyFoundSoup <gardendistrict0x0@outlook.com> | 2026-02-04 16:06:22 +1100 |
| commit | fd05629fb093dab6ae44db4f201a48f65c717288 (patch) | |
| tree | f4be0520958c8e02b54500e3bef5021ba09eb77e /include/tinyff/image | |
| parent | 7c56468903540fefc8029f67395665436f5d26b3 (diff) | |
feat(png): Add ff_png_normalize function and generic image header
Diffstat (limited to 'include/tinyff/image')
| -rw-r--r-- | include/tinyff/image/generic.h | 30 | ||||
| -rw-r--r-- | include/tinyff/image/png.h | 3 |
2 files changed, 33 insertions, 0 deletions
diff --git a/include/tinyff/image/generic.h b/include/tinyff/image/generic.h new file mode 100644 index 0000000..e136027 --- /dev/null +++ b/include/tinyff/image/generic.h @@ -0,0 +1,30 @@ +// This is the generics image header file for tinyff +// It contains generic image structures and definitions + +#include "common.h" +#include "result.h" + +#ifndef GENERIC_IMAGE_H +#define GENERIC_IMAGE_H + + +// The image origin is **not** the origin point of the image +// But rather from what the image was loaded + +typedef enum { + FF_IMAGE_ORIGIN_PNG, +} ff_image_origin; + +// Only the basic information about an image +// Warning: Data is RGBA8888 using scanlines going from top to bottom +typedef struct { + uint32_t width; + uint32_t height; + ff_image_origin origin; + + uint8_t* data; + +} ff_image_ctx; + + +#endif
\ No newline at end of file diff --git a/include/tinyff/image/png.h b/include/tinyff/image/png.h index fd8d29d..0b0bb3b 100644 --- a/include/tinyff/image/png.h +++ b/include/tinyff/image/png.h @@ -10,6 +10,7 @@ #include "tinyff/result.h" #include "tinyff/common.h" #include "tinyff/stream.h" +#include "tinyff/image/generic.h" // External #include "ext/tinf.h" @@ -100,4 +101,6 @@ const ff_png_chunk_handler ff_png_chunk_handlers[] = { ff_result ff_png_isvalid(ff_stream *stream); ff_result ff_open_png(ff_stream *stream, ff_png_ctx **out_ctx); +ff_result ff_png_normalize(ff_png_ctx *ctx, ff_image_ctx **out_data); + #endif |
