Parameter Mapping to C Data Types

The primitive types that can be used as parameters to external functions are a restricted subset of the JADE primitive types. External functions do not support mapping to Decimal, Date, Time, TimeStamp, TimeStampInterval, or TimeStampOffset primitive types.

The external function mapping of standard C types to simple JADE primitive types is listed in the following table.

C Data Type Recommended JADE Primitive Type
int Integer
int64 Integer64
void* MemoryAddress
long Integer
short Integer
char (ANSI) Character
wchar_t (Unicode) Character
bool Boolean
float Real[4]
double Real or Real[8]

The external function mapping of standard C types to structured JADE primitive types is listed in the following table.

C Data Type Recommended JADE Primitive Type
char* containing null-terminated string String
char* containing binary data Binary

You can substitute other JADE primitive types to clarify the interface. For example, you can map a JADE Boolean primitive type to any of int, long, short, char, or unsigned char C data types, and so on.

The handling and interpretation of signed or unsigned values is left to the external function protocol and your use of the function.