/** * @file image.h * @author Joe Wingbermuehle * @date 2005-2006 * * @brief Functions to load images. * */ #ifndef IMAGE_H #define IMAGE_H /** Structure to represent an image. */ typedef struct ImageNode { #ifdef USE_PNG png_uint_32 width; /**< Width of the image. */ png_uint_32 height; /**< Height of the image. */ #else int width; /**< Width of the image. */ int height; /**< Height of the image. */ #endif unsigned long *data; /**< Image data. */ } ImageNode; /** Load an image from a file. * @param fileName The file containing the image. * @return A new image node (NULL if the image could not be loaded). */ ImageNode *LoadImage(const char *fileName); /** Load an image from data. * The data must be in the format from the EWMH spec. * @param data The image data. * @return A new image node (NULL if there were errors. */ ImageNode *LoadImageFromData(char **data); /** Destroy an image node. * @param image The image to destroy. */ void DestroyImage(ImageNode *image); #endif