Large code cleanup of image rendering engine

This commit is contained in:
Gareth Evans
2017-02-02 12:35:19 +00:00
parent 93aa2e472a
commit fb950bafef
4 changed files with 149 additions and 75 deletions

View File

@@ -6,7 +6,8 @@
#define RGB_SIZE 3
#define RGBA_SIZE 4
typedef enum _IMAGE_FORMAT{ IMAGE_PPM, \
typedef enum _IMAGE_FORMAT{ IMAGE_DEFAULT = 0, \
IMAGE_PPM, \
IMAGE_LIBRARY, \
IMAGE_FORMAT_MAX \
} IMAGE_FORMAT;
@@ -28,15 +29,16 @@ typedef struct _IMAGE_CTX{
void *_dt;
} IMAGE_CTX, *PIMAGE_CTX;
int image_init(PIMAGE_CTX ctx, const size_t width, const size_t height, const IMAGE_MODEL model);
int image_add_pixel(PIMAGE_CTX ctx, const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t a);
int image_set_pixel(PIMAGE_CTX ctx, const size_t x, const size_t y, const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t a);
int image_get_pixel(PIMAGE_CTX ctx,const size_t x,const size_t y, uint8_t const *r, uint8_t const *g, uint8_t const *b, uint8_t const *a);
int image_get_filename(PIMAGE_CTX ctx, char* out, size_t len, char* in);
int image_write(PIMAGE_CTX ctx, FILE *fd);
int image_set_library(char *library);
int image_set_format(IMAGE_FORMAT);
int image_init(PIMAGE_CTX, const size_t, const size_t, const IMAGE_MODEL, const IMAGE_FORMAT);
int image_add_pixel(PIMAGE_CTX ctx, const uint8_t, const uint8_t, const uint8_t, const uint8_t);
int image_set_pixel(PIMAGE_CTX ctx, const size_t, const size_t, const uint8_t, const uint8_t, const uint8_t, const uint8_t);
int image_get_pixel(PIMAGE_CTX ctx,const size_t,const size_t, uint8_t const*, uint8_t const*, uint8_t const*, uint8_t const*);
int image_get_filename(PIMAGE_CTX, char*, size_t, char*);
int image_write(PIMAGE_CTX, FILE*);
int image_set_library(char*);
#define ADD_PIXEL(ctx,r,g,b) image_add_pixel((ctx),(r),(g),(b),0)
#define ADD_PIXEL(ctx,r,g,b) image_add_pixel((ctx),(r),(g),(b),0xff)
#define ADD_PIXELA(ctx,r,g,b,a) image_add_pixel((ctx),(r),(g),(b),(a))
#endif