Home | Previous Page | Next Page   DataBlade API Overview > Using the DataBlade API > DataBlade API Components >

Header Files

The following categories of header files are provided for use in a DataBlade API module:

DataBlade API Header Files

The DataBlade API header files begin with the mi prefix. The DataBlade API provides the following public header files for use in DataBlade API modules.

Header File Description
mi.h Is the main DataBlade API header file

It includes other DataBlade API public header files: milib.h, milo.h, and mitrace.h.

The mi.h header file does not automatically include mistrmtype.h. To use the stream I/O functions of the DataBlade API, you must explicitly include mistrmtype.h.

milib.h Defines function prototypes for the public entry points and public declarations of required data type structures and related macros

The mi.h header file automatically includes milib.h.

mitypes.h Defines all DataBlade API simple data types, accessor macros for these data types, and directly related value macros

The mitypes.h header file automatically includes the ESQL/C header files: datetime.h, decimal.h, and int8.h.

The milib.h header file automatically includes mitypes.h.

milo.h Defines the data type structures, values, and function prototypes for the smart-large-object interface (functions that have names starting with mi_lo_)

The mi.h header file automatically includes milo.h.

mistream.h Contains definitions for stream data structures, error constants, and generic stream I/O functions

The mistrmtype.h and mistrmutil.h header files automatically include mistream.h.

mistrmtype.h Contains definitions for the type-specific stream-open functions that the DataBlade API provides

The mistrmtype.h header file automatically includes mistream.h; however, the mi.h header file does not include mistrmtype.h. You must explicitly include mistrmtype.h to use the stream I/O functions of the DataBlade API.

mistrmutil.h Contains definitions for the stream-conversion functions that the DataBlade API provides for use in streamwrite( ) and streamread( ) opaque-type support functions

The mistrmutil.h header file automatically includes mistream.h; however, the mi.h header file does not include mistrmutil.h. You must explicitly include mistrmutil.h to use the stream-conversion functions of the DataBlade API.

mitrace.h Defines the data type structures, values, and function prototypes for the DataBlade API trace facility

The mi.h header file automatically includes mitrace.h.

miconv.h Contains convention definitions, including on/off switches based on architecture, compiler type, and so on

Other parts of the code use these switches to define data types correctly.

The mitypes.h header file automatically includes miconv.h.

memdur.h Contains the definition of the MI_MEMORY_DURATION data type, which enumerates valid public memory durations

The milib.h header file automatically includes memdur.h.

The mi.h header file provides access to most of the DataBlade API header files in the preceding table. Include this header file in your DataBlade API module to obtain declarations of most DataBlade API functions and data types.

The DataBlade API provides the following advanced header files for the use of advanced features in C UDRs.

Header File Description
minmmem.h Includes the minmdur.h and minmprot.h header files, which are necessary for access to advanced memory durations and memory-management functions

Neither the mi.h nor milib.h header file automatically includes minmmem.h. You must explicitly include minmmem.h to use advanced memory durations or memory-management functions.

minmdur.h Contains definitions for the advanced memory durations

The minmmem.h header file automatically includes minmdur.h. You must explicitly include minmmem.h to use advanced memory durations.

minmprot.h Contains definitions for the advanced DataBlade API functions

The minmmem.h header file automatically includes minmdur.h. You must explicitly include minmmem.h to use advanced functions.

Neither mi.h nor milib.h provides access to the advanced header files. To use the advanced features, include the minmmem.h header file in your DataBlade API module to obtain declarations of DataBlade API functions and data types.

Tip:
For a complete list of header files, check the incl/public subdirectory of the INFORMIXDIR directory.

ESQL/C Header Files

The following header files are provided to support some of the functions and data types of the IBM Informix ESQL/C library.

Header File Contents
datetime.h Structure and macro definitions for DATETIME and INTERVAL data types
decimal.h Structure and macro definitions for DECIMAL and MONEY data types
int8.h Declarations for structure and ESQL/C library functions for the INT8 data type
sqlca.h Structure definition that ESQL/C uses to store error-status codes

This structure enables you to check for the success or failure of SQL statements.

sqlda.h Structure definition for value pointers and descriptions of dynamically defined variables
sqlhdr.h Function prototypes of all ESQL/C library functions
sqlstype.h Definitions of strings that correspond to SQL statements

ESQL/C uses these strings when your program contains a DESCRIBE statement.

sqltypes.h Integer constants that correspond to ESQL/C language and SQL data types

ESQL/C uses these constants when your program contains a DESCRIBE statement.

sqlxtype.h Integer constants that correspond to C language and SQL data types that ESQL/C uses in X/Open mode, when your program contains a DESCRIBE statement
varchar.h Macros that you can use with the VARCHAR data type

Important:
The mitypes.h header file automatically includes the datetime.h, decimal.h, and int8.h header files. In turn, the milib.h header file automatically includes mitypes.h, and mi.h automatically includes milib.h. Therefore, you automatically have access to the information in these ESQL/C header files when you include mi.h in your DataBlade API module.

For additional information about the use of these ESQL/C header files, see the following sections of this manual.

Header File More Information
datetime.h The datetime.h Header File
decimal.h The decimal.h Header File
int8.h The int8.h Header File

IBM Informix GLS Header File

A header file is provided to support the IBM Informix GLS library. If you use the IBM Informix GLS library in your DataBlade API module, include its header file, ifxgls.h, in your source code. For more information on the IBM Informix GLS library and how to use it in a DataBlade API module, see Internationalization of DataBlade API Modules (GLS).

Private Header Files

If you define any opaque data types, you must include their header file in your DataBlade API source code. An opaque-type header file usually contains the declaration of the internal format for the opaque data type. For more information, see Creating an Opaque Data Type.

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]