img_load_file()

Decode a frame from a file on the filesystem

Synopsis:

#include <img.h>

int img_load_file( img_lib_t                    ilib,
                   const char*                  path,
                   const img_decode_callouts_t* callouts,
                   img_t*                       img );

Arguments:

ilib
A handle for the image library, returned by img_lib_attach().
path
The full path to the file from which the data can be read.
callouts
A pointer to an img_decode_callouts_t structure that provides system callouts for the decoder. If you specify NULL for this value, a set of default callouts is supplied.
img
The address of an img_t structure the function fills in with information about the decoded frame.

You can override elements, such as the format, before the call to img_load_file():

img.format = IMG_FMT_G8;
img.flags |= IMG_FORMAT;

img_load_file(...);

In the above example, because the format is set before the load occurs, the libimg will force the loaded image into IMG_FMT_G8 format, regardless of the actual source image format.

Library:

img

Description:

This function decodes a frame from a file on the filesystem. This function decodes only the first frame encountered.

If you want to resize a file when it's loaded, use img_load_resize_file().

Returns:

IMG_ERR_OK
Success
IMG_ERR_CORRUPT
Invalid data encountered in the file, preventing the decode from proceeding. Some of the frame may be intact.
IMG_ERR_DLL
An error occurred processing the DLL that handles the file type. Check to make sure that the DLL is not missing or corrupt.
IMG_ERR_FILE
Error accessing path (errno is set).
IMG_ERR_FORMAT
No appopriate codec could be found. The codec you require could be missing or corrupt, or the file could be corrupt.
IMG_ERR_INTR
Decode was interrupted by application.
IMG_ERR_MEM
Memory-allocation failure.
IMG_ERR_NODATA
No frame data was present. This error is highly unlikely, as files generally contain at least one frame.
IMG_ERR_NOSUPPORT
Output data not supported; the codec and application could not agree on an output format.
IMG_ERR_TRUNC
Premature end of file encountered. Some of the frame may be intact.

Classification:

Image library

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

img_decode_callouts_t, img_load(), img_load_resize_file(), img_t, img_lib_attach()