Images -- RGB Image Abstraction Library

The Images library contains classes and functions to represent RGB images, and to load/save images from/to a variety of image file formats.

Header Files

Image.h
Image is a base class to represent images in variable formats. The Image class uses a handle mechanism to allow passing images as values to functions, and return images from functions without incurring copy overhead.
RGBImage.h
RGBImage is a class to represent color images in RGB format, derived from the Image base class.
RGBAImage.h
RGBAImage is a class to represent color images with alpha channels in RGBA format, derived from the Image base class.
GetImageFileSize.h
GetImageFileSize.h contains a function to extract the pixel size from image files with reading the minimum required amount of information from the image file. The function detects the format of the given image file by its extension, and supports PPM, PNG, and JPEG image formats (the latter two rely on the libpng and libjpeg libraries, respectively).
ReadImageFile.h
ReadImageFile.h contains a function to read RGB images from image files. The function detects the format of the given image file by its extension, and supports PPM, PNG, and JPEG image formats (the latter two rely on the libpng and libjpeg libraries, respectively). It also contains a function to read RGBA images from cursor files in Xcursor format.
WriteImageFile.h
WriteImageFile.h contains a function to write RGB images to image files. The function detects the format of the given image file by its extension, and supports PPM, PNG, and JPEG image formats (the latter two rely on the libpng and libjpeg libraries, respectively).