#include <image.hpp>
Static Public Member Functions | |
Manipulators | |
static void | registerImage (int type, NewInstanceFct newInst, IsThisTypeFct isType) |
Register image type together with its function pointers. | |
Accessors | |
static Image::AutoPtr | open (const std::string &path) |
Create an Image subclass of the appropriate type by reading the specified file. Image type is derived from the file contents. | |
static Image::AutoPtr | open (const byte *data, long size) |
Create an Image subclass of the appropriate type by reading the provided memory. Image type is derived from the memory contents. | |
static Image::AutoPtr | open (BasicIo::AutoPtr io) |
Create an Image subclass of the appropriate type by reading the provided BasicIo instance. Image type is derived from the data provided by io. The passed in io instance is (re)opened by this method. | |
static Image::AutoPtr | create (int type, const std::string &path) |
Create an Image subclass of the requested type by creating a new image file. If the file already exists, it will be overwritten. | |
static Image::AutoPtr | create (int type) |
Create an Image subclass of the requested type by creating a new image in memory. | |
static Image::AutoPtr | create (int type, BasicIo::AutoPtr io) |
Create an Image subclass of the requested type by writing a new image to a BasicIo instance. If the BasicIo instance already contains data, it will be overwritten. | |
static int | getType (const std::string &path) |
Returns the image type of the provided file. | |
static int | getType (const byte *data, long size) |
Returns the image type of the provided data buffer. | |
static int | getType (BasicIo &io) |
Returns the image type of data provided by a BasicIo instance. The passed in io instance is (re)opened by this method. | |
Classes | |
struct | Registry |
Struct for storing image types and function pointers. |
The factory is implemented as a static class.
static void Exiv2::ImageFactory::registerImage | ( | int | type, | |
NewInstanceFct | newInst, | |||
IsThisTypeFct | isType | |||
) | [static] |
Register image type together with its function pointers.
The image factory creates new images by calling their associated function pointer. Additional images can be added by registering new type and function pointers. If called for a type that already exists in the list, the corresponding functions are replaced.
type | Image type. | |
newInst | Function pointer for creating image instances. | |
isType | Function pointer to test for matching image types. |
static Image::AutoPtr Exiv2::ImageFactory::open | ( | const std::string & | path | ) | [static] |
Create an Image subclass of the appropriate type by reading the specified file. Image type is derived from the file contents.
path | Image file. The contents of the file are tested to determine the image type. File extension is ignored. |
Error | If opening the file fails or it contains data of an unknown image type. |
static Image::AutoPtr Exiv2::ImageFactory::open | ( | const byte * | data, | |
long | size | |||
) | [static] |
Create an Image subclass of the appropriate type by reading the provided memory. Image type is derived from the memory contents.
data | Pointer to a data buffer containing an image. The contents of the memory are tested to determine the image type. | |
size | Number of bytes pointed to by data. |
Error | If the memory contains data of an unknown image type. |
static Image::AutoPtr Exiv2::ImageFactory::open | ( | BasicIo::AutoPtr | io | ) | [static] |
Create an Image subclass of the appropriate type by reading the provided BasicIo instance. Image type is derived from the data provided by io. The passed in io instance is (re)opened by this method.
io | An auto-pointer that owns a BasicIo instance that provides image data. The contents of the image data are tested to determine the type. |
static Image::AutoPtr Exiv2::ImageFactory::create | ( | int | type, | |
const std::string & | path | |||
) | [static] |
Create an Image subclass of the requested type by creating a new image file. If the file already exists, it will be overwritten.
type | Type of the image to be created. | |
path | Image file to create. File extension is ignored. |
Error | If the image type is not supported. |
static Image::AutoPtr Exiv2::ImageFactory::create | ( | int | type | ) | [static] |
static Image::AutoPtr Exiv2::ImageFactory::create | ( | int | type, | |
BasicIo::AutoPtr | io | |||
) | [static] |
Create an Image subclass of the requested type by writing a new image to a BasicIo instance. If the BasicIo instance already contains data, it will be overwritten.
type | Type of the image to be created. | |
io | An auto-pointer that owns a BasicIo instance that will be written to when creating a new image. |
static int Exiv2::ImageFactory::getType | ( | const std::string & | path | ) | [static] |
Returns the image type of the provided file.
path | Image file. The contents of the file are tested to determine the image type. File extension is ignored. |
static int Exiv2::ImageFactory::getType | ( | const byte * | data, | |
long | size | |||
) | [static] |
Returns the image type of the provided data buffer.
data | Pointer to a data buffer containing an image. The contents of the memory are tested to determine the image type. | |
size | Number of bytes pointed to by data. |
static int Exiv2::ImageFactory::getType | ( | BasicIo & | io | ) | [static] |
Returns the image type of data provided by a BasicIo instance. The passed in io instance is (re)opened by this method.
io | A BasicIo instance that provides image data. The contents of the image data are tested to determine the type. |