documentation

vlSDK-C API

General C-Interface for the vlSDK, which works on all devices. More...

Modules

 Global
 Global functions which can be called without a corresponding object which handles the request.
 
 AbstractApplicationWrapper
 Functions for managing AbstractApplicationWrapper objects.
 
 ImageWrapper
 Functions for managing ImageWrapper objects.
 
 ExtrinsicDataWrapper
 Functions for managing ExtrinsicDataWrapper objects.
 
 IntrinsicDataWrapper
 Functions for managing IntrinsicDataWrapper objects.
 
 Worker
 Functions for managing Worker objects.
 
 Utils
 Functions for general purpose and supporting your app.
 

Typedefs

typedef struct vlAbstractApplicationWrapper_s vlAbstractApplicationWrapper_t
 Type which represents an AbstractApplicationWrapper. More...
 
typedef struct vlImageWrapper_s vlImageWrapper_t
 Type which represents an ImageWrapper. More...
 
typedef struct vlExtrinsicDataWrapper_s vlExtrinsicDataWrapper_t
 Type which represents an ExtrinsicDataWrapper. More...
 
typedef struct vlIntrinsicDataWrapper_s vlIntrinsicDataWrapper_t
 Type which represents an IntrinsicDataWrapper. More...
 
typedef struct vlWorker_s vlWorker_t
 Type which represents a Worker. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackBool) (bool data, void *clientData)
 A pointer to a callback function which receives a boolean value as parameter. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackZString) (const char data[], void *clientData)
 A pointer to a callback function which receives a zero terminated string as parameter. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackJsonString) (const char error[], const char data[], void *clientData)
 A pointer to a callback function which receives two zero terminated string which contain JSON data. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackJsonAndBinaryString) (const char description[], const char data[], unsigned int size, void *clientData)
 A pointer to a callback function which receives a zero terminated description string (usually in JSON) and a binary buffer which plain binary data. Please note that the use of this function might change in future and is considered as BETA! More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackImageWrapper) (vlImageWrapper_t *image, void *clientData)
 A pointer to a callback function which receives a pointer to an ImageWrapper object as parameter. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackExtrinsicDataWrapper) (vlExtrinsicDataWrapper_t *extrinsicData, void *clientData)
 A pointer to a callback function which receives a pointer to an ExtrinsicDataWrapper object as parameter. Please notice, that the object is only valid inside the callback and it will automatically get deleted afterwards. More...
 
typedef void(VL_CALLINGCONVENTIONvlCallbackIntrinsicDataWrapper) (vlIntrinsicDataWrapper_t *intrinsicData, void *clientData)
 A pointer to a callback function which receives a pointer to an IntrinsicDataWrapper object as parameter. Please notice, that the object is only valid inside the callback and it will automatically get deleted afterwards. More...
 

Enumerations

enum  vlLogLevel {
  VL_LOG_LOG = 0, VL_LOG_FATAL = 1, VL_LOG_WARNING = 2, VL_LOG_NOTICE = 3,
  VL_LOG_INFO = 4, VL_LOG_DEBUG = 5
}
 
enum  vlRenderRotation { VL_RENDER_ROTATION_CCW_0 = 0, VL_RENDER_ROTATION_CCW_90 = 2, VL_RENDER_ROTATION_CCW_180 = 1, VL_RENDER_ROTATION_CCW_270 = 3 }
 
enum  vlImageFormat { VL_IMAGE_FORMAT_UNDEFINED = 0, VL_IMAGE_FORMAT_GREY = 1, VL_IMAGE_FORMAT_RGB = 2, VL_IMAGE_FORMAT_RGBA = 3 }
 

Functions

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataImageListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackImageWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataImageListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackImageWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataExtrinsicDataListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackExtrinsicDataWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataExtrinsicDataListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackExtrinsicDataWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataIntrinsicDataListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackIntrinsicDataWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataIntrinsicDataListener (vlWorker_t *worker, const char node[], const char key[], vlCallbackIntrinsicDataWrapper listener, void *clientData)
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeTrackingStateListener (vlWorker_t *worker, const char node[], vlCallbackZString listener, void *clientData)
 
VL_SDK_API char *VL_CALLINGCONVENTION vlWorker_GetNodeTrackingStateJsonSync (vlWorker_t *worker, const char node[])
 
VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeTrackingStateListener (vlWorker_t *worker, const char node[], vlCallbackZString listener, void *clientData)
 

Detailed Description

General C-Interface for the vlSDK, which works on all devices.

Typedef Documentation

◆ vlAbstractApplicationWrapper_t

typedef struct vlAbstractApplicationWrapper_s vlAbstractApplicationWrapper_t

Type which represents an AbstractApplicationWrapper.

Please use the vlAbstractApplication_... functions to manipulate instances of it.

◆ vlCallbackBool

typedef void(VL_CALLINGCONVENTION * vlCallbackBool) (bool data, void *clientData)

A pointer to a callback function which receives a boolean value as parameter.

Parameters
dataBoolean parameter. The meaning depends on the context.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackExtrinsicDataWrapper

typedef void(VL_CALLINGCONVENTION * vlCallbackExtrinsicDataWrapper) (vlExtrinsicDataWrapper_t *extrinsicData, void *clientData)

A pointer to a callback function which receives a pointer to an ExtrinsicDataWrapper object as parameter. Please notice, that the object is only valid inside the callback and it will automatically get deleted afterwards.

Parameters
extrinsicDataPointer to an ExtrinsicDataWrapper object. You can use the vlExtrinsicDataWrapper_..." functions to work with it.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackImageWrapper

typedef void(VL_CALLINGCONVENTION * vlCallbackImageWrapper) (vlImageWrapper_t *image, void *clientData)

A pointer to a callback function which receives a pointer to an ImageWrapper object as parameter.

Parameters
imagePointer to an ImageWrapper object. You can use the vlImageWrapper_..." functions to work with it. Please notice, that the object is only valid inside the callback and it will automatically get deleted afterwards.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackIntrinsicDataWrapper

typedef void(VL_CALLINGCONVENTION * vlCallbackIntrinsicDataWrapper) (vlIntrinsicDataWrapper_t *intrinsicData, void *clientData)

A pointer to a callback function which receives a pointer to an IntrinsicDataWrapper object as parameter. Please notice, that the object is only valid inside the callback and it will automatically get deleted afterwards.

Parameters
intrinsicDataPointer to an IntrinsicDataWrapper object. You can use the vlIntrinsicDataWrapper_..." functions to work with it.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackJsonAndBinaryString

typedef void(VL_CALLINGCONVENTION * vlCallbackJsonAndBinaryString) (const char description[], const char data[], unsigned int size, void *clientData)

A pointer to a callback function which receives a zero terminated description string (usually in JSON) and a binary buffer which plain binary data. Please note that the use of this function might change in future and is considered as BETA!

NOTE: The passed data pointer should be released using the vlReleaseBinaryBuffer function.

Parameters
descriptionZero terminated string with JSON data. The JSON format of the object depends on the context.
dataBinary data pointer (might be Zero). The context specific description might point to offsets within the binary data pointer.
sizeSize of the binary data.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackJsonString

typedef void(VL_CALLINGCONVENTION * vlCallbackJsonString) (const char error[], const char data[], void *clientData)

A pointer to a callback function which receives two zero terminated string which contain JSON data.

Parameters
errorZero terminated string with JSON data. This will be NULL, if no error occurred. The JSON format of the error object depends on the context.
dataZero terminated string with JSON data. This could be NULL, if an error occurred. The JSON format of the data object depends on the context.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlCallbackZString

typedef void(VL_CALLINGCONVENTION * vlCallbackZString) (const char data[], void *clientData)

A pointer to a callback function which receives a zero terminated string as parameter.

Parameters
dataZero terminated string. The meaning depends on the context.
clientDataPointer value which was initially received from the user. This can be used to invoke a member function.

◆ vlExtrinsicDataWrapper_t

typedef struct vlExtrinsicDataWrapper_s vlExtrinsicDataWrapper_t

Type which represents an ExtrinsicDataWrapper.

Please use the vlExtrinsicDataWrapper_... functions to manipulate instances of it.

◆ vlImageWrapper_t

typedef struct vlImageWrapper_s vlImageWrapper_t

Type which represents an ImageWrapper.

Please use the vlImageWrapper_... functions to manipulate instances of it.

◆ vlIntrinsicDataWrapper_t

typedef struct vlIntrinsicDataWrapper_s vlIntrinsicDataWrapper_t

Type which represents an IntrinsicDataWrapper.

Please use the vlIntrinsicDataWrapper_... functions to manipulate instances of it.

◆ vlWorker_t

typedef struct vlWorker_s vlWorker_t

Type which represents a Worker.

Please use the vlWorker_... functions to manipulate instances of it.

Enumeration Type Documentation

◆ vlImageFormat

Internal image formats.

Enumerator
VL_IMAGE_FORMAT_UNDEFINED 

Unsupported image format.

VL_IMAGE_FORMAT_GREY 

Grey value image.

VL_IMAGE_FORMAT_RGB 

Image with a red, green and blue channel.

VL_IMAGE_FORMAT_RGBA 

Image with a red, green, blue and alpha channel.

◆ vlLogLevel

enum vlLogLevel

Log levels.

Enumerator
VL_LOG_LOG 

Log level.

VL_LOG_FATAL 

Fatal level.

VL_LOG_WARNING 

Warning level.

VL_LOG_NOTICE 

Notice level.

VL_LOG_INFO 

Info level.

VL_LOG_DEBUG 

Debug level.

◆ vlRenderRotation

Screen orientations.

Enumerator
VL_RENDER_ROTATION_CCW_0 
VL_RENDER_ROTATION_CCW_90 
VL_RENDER_ROTATION_CCW_180 
VL_RENDER_ROTATION_CCW_270 

Function Documentation

◆ vlWorker_AddNodeDataExtrinsicDataListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataExtrinsicDataListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackExtrinsicDataWrapper  listener,
void *  clientData 
)

◆ vlWorker_AddNodeDataImageListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataImageListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackImageWrapper  listener,
void *  clientData 
)

◆ vlWorker_AddNodeDataIntrinsicDataListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeDataIntrinsicDataListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackIntrinsicDataWrapper  listener,
void *  clientData 
)

◆ vlWorker_AddNodeTrackingStateListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_AddNodeTrackingStateListener ( vlWorker_t worker,
const char  node[],
vlCallbackZString  listener,
void *  clientData 
)

◆ vlWorker_GetNodeTrackingStateJsonSync()

VL_SDK_API char* VL_CALLINGCONVENTION vlWorker_GetNodeTrackingStateJsonSync ( vlWorker_t worker,
const char  node[] 
)

◆ vlWorker_RemoveNodeDataExtrinsicDataListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataExtrinsicDataListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackExtrinsicDataWrapper  listener,
void *  clientData 
)

◆ vlWorker_RemoveNodeDataImageListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataImageListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackImageWrapper  listener,
void *  clientData 
)

◆ vlWorker_RemoveNodeDataIntrinsicDataListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeDataIntrinsicDataListener ( vlWorker_t worker,
const char  node[],
const char  key[],
vlCallbackIntrinsicDataWrapper  listener,
void *  clientData 
)

◆ vlWorker_RemoveNodeTrackingStateListener()

VL_SDK_API bool VL_CALLINGCONVENTION vlWorker_RemoveNodeTrackingStateListener ( vlWorker_t worker,
const char  node[],
vlCallbackZString  listener,
void *  clientData 
)