This commit is contained in:
2025-05-19 14:01:32 -04:00
parent 89faad3602
commit f229424df4
65 changed files with 25036 additions and 33 deletions

View File

@ -33,9 +33,19 @@ typedef struct amscimglib4_image
{
int sizex;
int sizey;
unsigned char *bytebuf; //size 4*sizex*sizey, [color + I*4 + J*4*sizex]
unsigned char *data; //size 4*sizex*sizey, [color + I*4 + J*4*sizex]
} amscimglib4_image;
typedef struct amscimglib4_pixel
{
unsigned char R;
unsigned char G;
unsigned char B;
unsigned char A;
} amscimglib4_pixel;
// commonly known as an opaque pointer pattern or PIMPL pattern (Pointer to IMPLementation) for memory management.
AMSCIMGLIB4_API int amscimglib4_image_new(amscimglib4_image **imgptr, int _sizex, int _sizey);
@ -49,10 +59,22 @@ AMSCIMGLIB4_API void amscimglib4_image_clear(amscimglib4_image *imgptr);
//copies an image from one image struct to another
//resizes imgto
//AMSIMG_API void amsimg_copy_image(amsimg_image *imgfrom, amsimg_image *imgto);
AMSCIMGLIB4_API int amscimglib4_copy_image(const amscimglib4_image *imgfrom, amscimglib4_image *imgto);
AMSCIMGLIB4_API int amscimglib4_image_copy(amscimglib4_image *imgto, const amscimglib4_image *imgfrom);
AMSCIMGLIB4_API int amscimglib4_set_pixel_RGBA(amscimglib4_image *img, int x, int y,
unsigned char R, unsigned char G, unsigned char B, unsigned char A);
AMSCIMGLIB4_API int amscimglib4_get_pixel_RGBA(amscimglib4_image *img, int x, int y,
unsigned char *R, unsigned char *G, unsigned char *B, unsigned char *A);
AMSCIMGLIB4_API int amscimglib4_set_pixel(amscimglib4_image *img, int x, int y,
const amscimglib4_pixel px);
AMSCIMGLIB4_API int amscimglib4_get_pixel(amscimglib4_image *img, int x, int y,
amscimglib4_pixel *px);
AMSCIMGLIB4_API void amscimglib4_image_flipx(amscimglib4_image *img);
AMSCIMGLIB4_API void amscimglib4_image_flipy(amscimglib4_image *img);
//////////////////////////////////////////////
// Some limited image manipulation routines //
@ -61,7 +83,9 @@ AMSCIMGLIB4_API int amscimglib4_copy_image(const amscimglib4_image *imgfrom, ams
//transposes an image
AMSCIMGLIB4_API int amscimglib4_transpose_image(amscimglib4_image *img);
//////////////////////////////////////////////////
// Routines to load and save image file formats //
//////////////////////////////////////////////////
#ifdef __cplusplus
}; // end extern "C"

View File

@ -3,9 +3,16 @@
#include <amscimglib4/amscimglib4_tests.h>
#ifdef __cplusplus
extern "C" {
#endif
//returns the size of a file using ANSI C
unsigned int amscimglib4_filesize(FILE *fp);
#ifdef __cplusplus
}; //end extern "C"
#endif
#endif