#data #system #motion #capture #data-stream #reading #vicon

sys vicon-sys

APIs for reading data from a Vicon motion capture system

2 unstable releases

0.2.0 Apr 12, 2024
0.1.0 Apr 11, 2024

#1178 in Hardware support

31 downloads per month

AGPL-3.0-only

1.5MB
300 lines

Contains (ELF lib, 1.5MB) libViconDataStreamSDK_CPP.so, (ELF lib, 140KB) libboost_thread-mt-x64.so.1.75.0, (ELF lib, 125KB) libViconDataStreamSDK_C.so, (ELF lib, 48KB) libboost_chrono-mt-x64.so.1.75.0

Low-level hardware abstraction layer for reading data from a Vicon motion capture system.

Special Thanks to the Novel Engineering of Swarm Technology (NEST) lab at Worcester Polytechnic Institute for providing a reference usage of the Vicon APIs, and providing us with access to their Vicon systems for testing this crate.

Using this Crate

The documentation for this crate can be generated by running cargo doc; the generated docs will be written to release/.

Although the actual Vicon data stream SDK can only be used with an actual Vicon data stream, this crate exposes a single HasViconHardware trait which can be compiled on any host.

This trait can be used to create mock implementations of the Vicon data stream, which systems can use for integration testing or simulation when an actual Vicon is unavailable.

Compiling on a Linux Host

Before building this crate, or a Crate depending on this crate, you need to:

  1. Install Rust.
  2. Install Clang.

Once these tools are installed, you can build this crate by running:

  1. cargo build --release

To run this crate (or crates depending on it), you will need to ensure all the .so files in vendor/libvicon are available on your LD_LIBRARY_PATH.

License and Contributions

Copyright 2024 Alicorn Systems, Inc.

Licensed under the GNU Affero General Public License version 3, as published by the Free Software Foundation. Refer to the license file for more information.

The files within vendor/ retain their original copyrights and licenses, and are included in this repository to simplify the build process for downstream users.

Dependencies

~1.4–3.5MB
~74K SLoC