# Image I/O addon

## API: al_init_image_addon

Initializes the IIO addon.

## API: al_shutdown_image_addon

Shut down the IIO addon. This is done automatically at program exit,
but can be called any time the user wishes as well.

## API: al_register_bitmap_loader

Register a handler for [al_load_bitmap].  The given function will be used to
handle the loading of bitmaps files with the given extension.

The extension should include the leading dot ('.') character.
It will be matched case-insensitively.

The `loader` argument may be NULL to unregister an entry.

Returns true on success, false on error.
Returns false if unregistering an entry that doesn't exist.

## API: al_register_bitmap_saver

Register a handler for [al_save_bitmap].  The given function will be used to
handle the loading of bitmaps files with the given extension.

The extension should include the leading dot ('.') character.
It will be matched case-insensitively.

The `saver` argument may be NULL to unregister an entry.

Returns true on success, false on error.
Returns false if unregistering an entry that doesn't exist.

## API: al_register_bitmap_loader_stream

Register a handler for [al_load_bitmap_stream].  The given function will be
used to handle the loading of bitmaps files with the given extension.

The extension should include the leading dot ('.') character.
It will be matched case-insensitively.

The `fs_loader` argument may be NULL to unregister an entry.

Returns true on success, false on error.
Returns false if unregistering an entry that doesn't exist.

## API: al_register_bitmap_saver_stream

Register a handler for [al_save_bitmap_stream].  The given function will be
used to handle the loading of bitmaps files with the given extension.

The extension should include the leading dot ('.') character.
It will be matched case-insensitively.

The `saver_stream` argument may be NULL to unregister an entry.

Returns true on success, false on error.
Returns false if unregistering an entry that doesn't exist.

## API: al_load_bitmap

Loads an image file into an ALLEGRO_BITMAP.
The file type is determined by the extension.

Returns NULL on error.

See also: [al_load_bitmap_stream], [al_register_bitmap_loader],
[al_set_new_bitmap_format], [al_set_new_bitmap_flags]

## API: al_load_bitmap_stream

Loads an image from an ALLEGRO_FILE stream into an ALLEGRO_BITMAP.
The file type is determined by the passed 'ident' parameter, which is a file
name extension including the leading dot.

Returns NULL on error.

See also: [al_load_bitmap], [al_register_bitmap_loader_stream]

## API: al_save_bitmap

Saves an ALLEGRO_BITMAP to an image file.
The file type is determined by the extension.

Returns true on success, false on error.

See also: [al_save_bitmap_stream], [al_register_bitmap_saver]

## API: al_save_bitmap_stream

Saves an ALLEGRO_BITMAP to an ALLEGRO_FILE stream.
The file type is determined by the passed 'ident' parameter, which is a file
name extension including the leading dot.

Returns true on success, false on error.

See also: [al_save_bitmap], [al_register_bitmap_saver_stream]

## API: al_load_bmp

Create a new ALLEGRO_BITMAP from a BMP file. The bitmap is created with
[al_create_bitmap].

Returns NULL on error.

See Also: [al_load_bitmap].

## API: al_load_bmp_stream

See [al_load_bmp] and [al_load_bitmap_stream].

## API: al_load_jpg

Create a new ALLEGRO_BITMAP from a JPEG file. The bitmap is created with
[al_create_bitmap].

Returns NULL on error.

See Also: [al_load_bitmap].

## API: al_load_jpg_stream

See [al_load_jpg] and [al_load_bitmap_stream].

## API: al_load_pcx

Create a new ALLEGRO_BITMAP from a PCX file. The bitmap is created with
[al_create_bitmap].

Returns NULL on error.

See Also: [al_load_bitmap].

## API: al_load_pcx_stream

See [al_load_pcx] and [al_load_bitmap_stream].

## API: al_load_png

Create a new ALLEGRO_BITMAP from a PNG file. The bitmap is created with
[al_create_bitmap].

Returns NULL on error.

See Also: [al_load_bitmap].

## API: al_load_png_stream

See [al_load_png] and [al_load_bitmap_stream].

## API: al_load_tga

Create a new ALLEGRO_BITMAP from a TGA file. The bitmap is created with
[al_create_bitmap].

Returns NULL on error.

See Also: [al_load_bitmap].

## API: al_load_tga_stream

See [al_load_tga] and [al_load_bitmap_stream].

## API: al_save_bmp

Save an ALLEGRO_BITMAP as a BMP file.

Returns true on success, false on error.

See Also: [al_save_bitmap].

## API: al_save_bmp_stream

See [al_save_bmp] and [al_save_bitmap_stream].

## API: al_save_jpg

Save an ALLEGRO_BITMAP as a JPEG file. 

Returns true on success, false on error.

See Also: [al_save_bitmap].

## API: al_save_jpg_stream

See [al_save_jpg] and [al_save_bitmap_stream].

## API: al_save_pcx

Save an ALLEGRO_BITMAP as a PCX file.

Returns true on success, false on error.

See Also: [al_save_bitmap].

## API: al_save_pcx_stream

See [al_save_pcx] and [al_save_bitmap_stream].

## API: al_save_png

Save an ALLEGRO_BITMAP as a PNG file. 

Returns true on success, false on error.

See Also: [al_save_bitmap].

## API: al_save_png_stream

See [al_save_png] and [al_save_bitmap_stream].

## API: al_save_tga

Save an ALLEGRO_BITMAP as a TGA file. 

Returns true on success, false on error.

See Also: [al_save_bitmap].

## API: al_save_tga_stream

See [al_save_tga] and [al_save_bitmap_stream].

## API: al_get_allegro_image_version

Returns the (compiled) version of the addon, in the same format as
[al_get_allegro_version].
