OS/2 API Data Types

Arrays
Arrays are shown in C Syntax, for example: CHAR szName[4]

Which means an array of char with 4 chars in length with inexes started from zero (0). Equla declaration in Pascal-style languages is: szName:Array[0..3] of CHAR

Pointer to Data Type
A data type name beginning with "P" (for example, PERRORCODE) is likely to be a pointer to another data type (in this instance, ERRORCODE). The implicit type definition needed for such a pointer "Pxxxxxx" is: typedef xxxxxx *Pxxxxxx;

Such definitions are provided in the header files.

List of Data Types
The following are the data types used by the OS/2 API. They are listed in alphabetical order: APIRET AVAILDATA BANKINFO BIOSPARAMETERBLOCK BOOL BOOL32 BYTE CHAR COLOR CONTEXTRECORD CPUUTIL COUNTRYCODE COUNTRYINFO CPID cvkcmd_s DATETIME DCBINFO DENA2 DEVICEPARAMETERBLOCK DosDebug Buffer EAOP2 EASIZEBUF ERRINFO ERRORID EXCEPTIONREGISTRATIONRECORD EXCEPTIONREPORTRECORD FATTRS FDATE FEA2 FEA2LIST FHLOCK FILEFINDBUF FILEFINDBUF3 FILEFINDBUF3L FILEFINDBUF4 FILEFINDBUF4L FILELOCK FILELOCKL FILESTATUS FILESTATUS3 FILESTATUS3L FILESTATUS4 FILESTATUS4L FNEXITLIST FNTHREAD FONTMETRICS FPREG FRAME FSALLOCATE FSINFO FSQBUFFER2 FTIME GEA2 GEA2LIST HAB HAPP HDC HDIR HEV HFILE HKBD HMODULE HMQ HMTX HMUX HOTKEY HPIPE HPROGRAM HQUEUE HRGN HSEM HSPINLOCK HTIMER HVDD HVIO KBDHWID KBDINFO KBDKEYINFO LDTADDRINFO LINECONTROL ListIOL LONG LONGLONG MODEMSTATUS MONITORPOSITION MOUEVENTINFO MOUQUEINFO MPAffinity NOPTRRECT NPCH NPCHAR NPFN NPSZ OEMINFO OEMSVGAINFO PCH PCSZ PFHLOCK PFN PFNSIGHANDLER PIB PID PIPEINFO PIPESEMSTATE PSZ PTRDRAWDATA PTRDRAWFUNCTION PTRLOC PTRSHAPE PVOID QWORD RATEDELAY REQUESTDATA RESULTCODES RXQUEUE SCALEFACT SEL SEMRECORD SGID SHIFTSTATE SHORT STARTDATA STATUSDATA STRINGINBUF SWCNTRL THRESHOLD TIB TIB2 TID TRACKLAYOUT UCHAR ULONG ULONGLONG USHORT VIOCOLORREG VIOCONFIGINFO VIOCURSORINFO VIOINTENSITY VIOMODEINFO VIOOVERSCAN VIOPALSTATE VIOSETTARGET VIOSETULINELOC VOID VOLUMELABEL

ULS Data Types
AttrObject conv_endian_t KBDNAME KEYBOARDINFO KHAND LocaleItem LocaleObject LocaleToken uconv_attribute_t UconvObject udcrange_t ulsBool UniChar UNICTYPE UniLconv USHIFTSTATE VDKEY VSCAN XformObject