Skip to main content

Crate haply

Crate haply 

Source
Expand description

Haply Robotics Client Library

This crate provides a Rust interface for interacting with Haply haptic devices through the Haply Inverse Service. It supports both HTTP and WebSocket communications for device control and state management.

Re-exports§

pub use physics as physics_model;
pub use interfaces::http;
pub use interfaces::websocket;
pub use interfaces::events;
pub use interfaces::events as events_model;
pub use device::HaplyDevice;
pub use physics::compute_total_force;
pub use physics_model::Cube;
pub use physics_model::Sphere;
pub use device_model::ForceInput;
pub use device_model::PositionInput;
pub use device_model::ExtensionDataInput;
pub use device_model::AngularTorqueInput;
pub use device_model::AngularPositionInput;
pub use device_model::Command;
pub use device_model::ServiceMsg;
pub use device_model::SessionMsg;
pub use device_model::ForceRenderFullStateMsg;
pub use device_model::Inverse3OutMsg;
pub use device_model::VerseGripOutMsg;
pub use device_model::Inverse3Commands;
pub use device_model::VerseGripCommands;
pub use device_model::SetCursorForceCmd;
pub use device_model::SetCursorPositionCmd;
pub use device_model::SetAngularTorquesCmd;
pub use device_model::SetAngularPositionCmd;
pub use device_model::SetTransformCmd;
pub use device_model::SetExtensionDataCmd;
pub use device_model::ProbeCmd;
pub use device_model::TransformPatch;
pub use device_model::Inverse3Configure;
pub use device_model::VerseGripConfigure;
pub use device_model::SessionConfigure;
pub use device_model::SessionSerializationConfigure;
pub use device_model::SessionWvgSerializationConfigure;
pub use device_model::SessionWvgExtendedDataConfigure;
pub use device_model::PresetConfig;
pub use device_model::MountConfig;
pub use device_model::DampingConfig;
pub use device_model::ForceGateConfig;
pub use device_model::NavigationConfigure;
pub use device_model::NavigationConfigSnapshot;
pub use device_model::BubbleNavigationSettings;
pub use device_model::BubbleCenterSettings;
pub use device_model::CollisionDetectionSettings;
pub use device_model::ProfileConfig;
pub use device_model::DeviceFilters;
pub use device_model::ForceGateFilter;
pub use device_model::DampingFilter;
pub use device_model::NavigationState;
pub use device_model::BubbleNavigationState;
pub use device_model::NavigationStatusInfo;
pub use device_model::NavigationFullResponse;
pub use device_model::SessionInfo;
pub use device_model::SessionInfoConfig;
pub use device_model::SessionInfoState;
pub use device_model::SessionInfoStatus;
pub use device_model::ProfileInfo;
pub use device_model::HomeReturn;
pub use device_model::SdfPrimitive;
pub use device_model::EasingType;
pub use device_model::SymmetryMode;
pub use device_model::CenterMode;
pub use device_model::VerseGripDuplicateMode;
pub use device_model::SdfHfxObject;
pub use device_model::SdfHfxData;
pub use device_model::SdfCommand;
pub use device_model::SdfCommandMode;
pub use device_model::SdfOutputConfigure;
pub use device_model::SdfObjectList;
pub use device_model::SdfSessionState;
pub use device_model::SdfSessionStatus;
pub use device_model::SdfSessionConfig;
pub use interfaces::http::ApiResponse;
pub use interfaces::http::DevicesResponse;
pub use interfaces::http::ExpertStatusResponse;
pub use interfaces::http::SessionListData;
pub use interfaces::http::PairingResponse;

Modules§

device
Device module provides the core functionality for interacting with Haply haptic devices. It handles device communication, state management, and command processing through both HTTP and WebSocket protocols.
device_model
Data structures and models for the Haply Inverse Service API.
interfaces
physics
Physics computation module for haptic interactions. Provides utilities for calculating forces and interactions with virtual objects.
state
State management and command building — pure functions used by HaplyDevice and the WebSocket listener for processing incoming/outgoing messages.