Natural Data Types

#### Search Results

Search

# Natural Data Types

Some of the parameter access functions (like `nni_get_parm`, `nni_put_parm`) use a buffer that contains a parameter value in the correct representation. The length of the buffer depends on the Natural data type. The data format of the buffer is defined according to the following table:

Natural Data Type | Buffer Format
--- | ---
A | char[ ]
B | byte[ ]
C | short
F4 | float
F8 | double
I1 | signed char
I2 | short
I4 | int
L | `NNI_L_TRUE` or `NNI_L_FALSE`, see natni.h
HANDLE OF OBJECT | byte[8]
P, N, D, T | The buffer content should be created from a string representation with the function `nni_from_string`. It can be transformed to a string representation with the function `nni_to_string`.
U | An array of UTF-16 characters. On Windows and on those Linux platforms where a wchar corresponds to a UTF-16 character, this is a wchar[].

Some of the parameter access functions (like `nni_get_parm`, and `nni_put_parm`) require a Natural data type to be specified. In these cases the following constants should be used. The constants are defined in the header file natni.h. This file is contained in the directory <install-dir>\natural\samples\sysexnni.

Natural Data Type | Constant
--- | ---
A | `NNI_TYPE_ALPHA`
B | `NNI_TYPE_BIN`
C | `NNI_TYPE_CV`
D | `NNI_TYPE_DATE`
F | `NNI_TYPE_FLOAT`
I | `NNI_TYPE_INT`
L | `NNI_TYPE_LOG`
N | `NNI_TYPE_NUM`
HANDLE OF OBJECT | `NNI_TYPE_OBJECT`
P | `NNI_TYPE_PACK`
T | `NNI_TYPE_TIME`
U | `NNI_TYPE_UNICODE`