diff options
author | Harry Jeffery <harry@exec64.co.uk> | 2015-11-10 00:54:24 +0000 |
---|---|---|
committer | Harry Jeffery <harry@exec64.co.uk> | 2015-11-10 00:54:24 +0000 |
commit | 7c8c33aa199c5fa8b2cdb85ce57bd9c596da78f4 (patch) | |
tree | 8ba3c95d5d5911c1a7ac7c8e78010c9f3fd10206 /texture.h | |
parent | 60e9d6f61aa9e12cbbbde8e1d9de3b9455aa1e44 (diff) | |
download | imv-7c8c33aa199c5fa8b2cdb85ce57bd9c596da78f4.tar.gz |
Add imv_texture object
Diffstat (limited to 'texture.h')
-rw-r--r-- | texture.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/texture.h b/texture.h new file mode 100644 index 0000000..cae0d33 --- /dev/null +++ b/texture.h @@ -0,0 +1,27 @@ +#ifndef IMV_TEXTURE_H +#define IMV_TEXTURE_H + +#include <SDL2/SDL.h> +#include <FreeImage.h> + +struct imv_texture { + int width; //width of the texture overall + int height; //height of the texture overall + int num_chunks; //number of chunks allocated + SDL_Texture **chunks; //array of chunks + int num_chunks_wide; //number of chunks per row of the image + int num_chunks_tall; //number of chunks per column of the image + int chunk_width; //chunk width + int chunk_height; //chunk height + int last_chunk_width; //width of rightmost chunk + int last_chunk_height; //height of bottommost chunk + SDL_Renderer *renderer; //SDL renderer to draw to +}; + +void imv_init_texture(struct imv_texture *tex, SDL_Renderer *r); +void imv_destroy_texture(struct imv_texture *tex); + +int imv_texture_set_image(struct imv_texture *tex, FIBITMAP *image); +void imv_texture_draw(struct imv_texture *tex, int x, int y, double scale); + +#endif |