API Reference

Welcome to the HORUS API reference documentation. This section provides detailed documentation for all public types, traits, and functions in the HORUS framework.

Crates

CrateDescription
horusUmbrella crate - the one your project depends on; re-exports the crates below through horus::prelude
horus_coreCore runtime - nodes, communication, scheduling, zero-copy memory types
horus_typesUniversal IPC message types - math, diagnostics, time, generic
horus_roboticsStandard robotics messages - sensor, control, navigation, vision (re-exported through horus::prelude; no separate dependency needed)
horus_macrosProcedural macros (node!, derive(LogSummary))

Quick Reference

Core Types

TypeDescriptionModule
NodeBase trait for all computation unitshorus_core
Topic<T>Unified pub/sub channel with auto-detected backendshorus_core
SchedulerNode execution orchestratorhorus_core

Error Handling

TypeDescriptionModule
ErrorUnified error typehorus_core
Result<T>Result aliashorus_core

Message Types

TypeDescriptionModule
ImageCamera image datahorus_core::memory
LaserScanLiDAR scan datahorus_robotics
ImuIMU sensor datahorus_robotics
TwistVelocity commandshorus_types
Pose2D2D position and orientationhorus_types

Import Patterns

Minimal Import

use horus::prelude::*;

Explicit Import (Alternative)

The prelude re-exports all commonly needed types. If you prefer explicit imports:

use horus::prelude::{
    // Core traits and types
    Node, NodeState, HealthStatus, LogSummary,
    // Communication
    Topic,
    // Scheduling
    Scheduler,
    // Errors
    Error, Result,
    // Messages (geometry, sensor, control, etc.)
    Pose2D, LaserScan, Imu, CmdVel, MotorCommand,
};

Version Compatibility

HORUS VersionRust EditionMSRV
0.4.x20211.90

See Also