Programming Languages

To ensure proper functionality of the program, it is crucial to follow several small yet important steps illustrated in our landing page.

OpenZen supports a wide range of programming languages by having different language bindings built on top of the C++ library. We currently supports:

Programming Language

Example Project

Header file / Bindings

Programming Language

Example Project

Header file / Bindings

1

C 1

https://bitbucket.org/lpresearch/openzen/src/master/examples/ExampleCAPI.c

https://bitbucket.org/lpresearch/openzen/src/master/include/OpenZenCAPI.h

2

C++ 1

https://bitbucket.org/lpresearch/openzen/src/master/examples/ExampleCpp17.cpp

https://bitbucket.org/lpresearch/openzen/src/master/include/OpenZen.h

3

Python 1, 2, 3

https://bitbucket.org/lpresearch/openzen/src/master/examples/ExamplePython.py

https://bitbucket.org/lpresearch/openzen/src/master/src/bindings/OpenZenPython.cpp

The name of data field is defined as string in the above file.

For example, you should access .a_raw instead of aRaw.

4

C# 1, 2

https://bitbucket.org/lpresearch/openzen/src/master/examples/ExampleCSharp/

https://bitbucket.org/lpresearch/openzen/src/master/bindings/OpenZen.i

Manual generation required when build a 64 bit binding.

5

Unity Plugin 1

https://bitbucket.org/lpresearch/openzenunity/src/master/

6

ROS Package 1

https://bitbucket.org/lpresearch/openzenros/src/master/
https://bitbucket.org/lpresearch/openzenros2/src/master/

7

WPF Project 1

Contact us at support@lp-research.com

For a complete APIs of a specific language, please check its respective header file / bindings. If you have further questions, please do not hesitate to reach out to us at support@lp-research.com.

Notes

1 Python, C# bindings are not built by default. Please specify in CMake when building, cmake -DZEN_PYTHON=ON -DZEN_CSHARP=ON ..

Windows

2 Please copy the SiUSBXp.dll to the example directory for detection of sensors in ExpressUSB mode. If the SiUSBXp.dll is missing from the example directory, only sensors connected through the COM port will be detected.

3 Please copy openzen.pyd to the example directory in order to use OpenZen python binding. Under Linux, please rename the libOpenZen.so to openzen.so, and copy it to the example directory for use.

4 When using Python bindings and you get ImportError: DLL load failed while importing openzen: The specified module could not be found. , please use Dependency Walker to check which DLL is missing. Get all the missing DLLs and have them ready in the same directory as openzen.pyd.

 

Â