Skip to content

ENH: Haply Integration

Andrew Wilson requested to merge andrew.wilson/iMSTK:HaplyDevice into master
  • This adds HaplyDeviceManager and HaplyDeviceClient
  • This also adds a DeviceManagerObjectFactory. This factory has two calls. One to create the DeviceManager by string. And another to create the default. The default being Haply > OpenHaptics > VRPN. Depending on what is available/built with. All examples now use this call instead so examples can use different haptic devices depending on what is available.
  • Modules were given type names.
  • BoneShaving example removed. This was a remnant of older imstk with FEM, the example hasn't worked for sometime now.
  • iMSTK_USE_HAPTICS preprocessor flag is available now and used in examples for haptics. It indicates whether any haptic API is available. Whereas the existing iMSTK_USE_OpenHaptics, iMSTK_USE_HAPLY, and iMSTK_USE_VRPN only indicate if one API is available.
  • iMSTK_DATA_ROOT now uses a relative path not an absolute. Meaning you can move the install directory and still run it.


  • Every mouse control was switched to use DummyClient. Some where manually apply virtual coupling which was pointless since we have API for that. Resolves #407 (closed)
  • All imstkNew instances in these examples were removed.

I manually tested every haptic example. With OpenHaptics, then Haply, then mouse.

Edited by Andrew Wilson

Merge request reports