Standard C Language Types

The following tables list the data types defined in ESBAPI.H for use in C language programs:

Table 9. Simple Data Types

Data TypeEssbase Type
typedef charESB_CHAR_T
typedef shortESB_SHORT_T
typedef longESB_LONG_T
typedef unsigned charESB_UCHAR_T
typedef unsigned shortESB_USHORT_T
typedef unsigned longESB_ULONG_T
typedef floatESB_FLOAT_T
typedef doubleESB_DOUBLE_T

Table 10. Other Data Types

Data TypeEssbase TypeDescription
typedef unsigned charESB_BOOL_Tboolean
typedef char*ESB_STR_Tstring (array of char)
typedef void*ESB_HINST_TAPI instance handle
typedef void*ESB_HCTX_TAPI context handle
typedef voidESB_VOID_Tvoid
typedef size_tESB_SIZE_Tsize of a memory block
typedef unsigned shortESB_ACCESS_TEssbase access level
typedef unsigned longESB_LOGINID_TEssbase login id

Table 11. Pointer Types

Data TypeEssbase TypeDescription
typedef char*ESB_PCHAR_Tpointer to char
typedef short*ESB_PSHORT_Tpointer to short
typedef long*ESB_PLONG_Tpointer to long
typedef unsigned char*ESB_PUCHAR_Tpointer to unsigned char
typedef unsigned short*ESB_PUSHORT_Tpointer to unsigned short
typedef unsigned long*ESB_PULONG_Tpointer to unsigned long
typedef float*ESB_PFLOAT_Tpointer to float
typedef double*ESB_PDOUBLE_Tpointer to double
typedef ESB_BOOL_T*ESB_PBOOL_Tpointer to boolean
typedef ESB_STR_T*ESB_PSTR_Tpointer to string
typedef ESB_VOID_T*ESB_PVOID_Tpointer to void
typedef ESB_SIZE_T*ESB_PSIZE_Tpointer to size of a memory block
typedef ESB_HINST_T*ESB_PHINST_Tpointer to VB API instance handle
typedef ESB_HCTX_T*ESB_PHCTX_Tpointer to VB API context handle
typedef ESB_ACCESS_T*ESB_PACCESS_Tpointer to security access level
typedef ESB_LOGINID_T*ESB_PLOGINID_Tpointer to login id

Table 12. Miscellaneous Types

Data TypeEssbase TypeDescription
typedef longESB_STS_Treturn value from API functions
typedef ESB_STS_T(*ESB_FUNC_T)()pointer to function

Table 13. API Definitions

ConstantValue
#define ESB_TRUE1
#define ESB_FALSE0
#define ESB_NULLNULL