The functions described here are provided by the libintlize library, version 0 of the interface.
This class is a C++ wrapper for the intlize C runtime interface. Since it provides an additional amount of safety, using the C interface from within C++ is not supported.
The constructor attempts to create a catalog on the heap. It allways completes successfully, even if the creation of the catalog fails.
The destructor closes the catalog, if neccessary and frees all memory associated with the class.
The file containing the requested translation is opened and copied into the catalog. If charset is not NULL, the messages will be converted to charset when accessed.
0 on successful completion, error code otherwise.
The language code of the translation.
The colon separated search path to the message catalogs. A placeholder "%L" is replaced with lang, then the first 5 characters of lang, then the first 2 characters of lang.
The target charset of the catalog, or NULL if no conversion should be performed. If libintlize was built without iconv support, charset must be NULL.
Closes the catalog and frees the memory associated with it.
Use this function to retrieve a descriptive message for errnum.
A descriptive message for errnum.
The error code returned by open
This is an access function for the ID of the catalog.
The ID of the catalog.
This function retrieves the translated messages for msgnum.
The translated message.
The message number of the message as assigned by intlize.
No error occurred.
Allocating a chunk of memory failed.
The arguments given to open failed a logical check
due to one or more of the following:
The constructor failed to allocate the memory for the
catalog.
Lang or path is NULL or an empty string.
The file requested by lang and path does not exist or is not accessible.
The file is not accessible.
The file exists and is accessible, but it is not an intlize file.
The file ended prematurely.
The encoding of the catalog is not known to intlize.
Libiconv cannot convert to the charset requested by charset.
A conversion to charset is requested, but libintlize was built without libiconv support.