Skip to main content

Crate phoxal_model

Crate phoxal_model 

Source
Expand description

Canonical immutable runtime robot model.

The model is constructed by source/build tooling and decoded from the bundle’s manifest.json. manifest owns that document: its schema tag and the envelope around the Robot body. phoxal-bundle owns where the file sits and how it is read.

§Paths

Concepts live in the module that owns them: asset, builder, component, identity, manifest, robot, simulation, structure.

The crate root is a deliberate facade over the handful of names a consumer meets first, so that loading, reading or composing a robot does not require learning the module layout. Those names - and the error vocabulary, whose module is private precisely so the root is its only path - are the canonical ones; write phoxal_model::Robot, not phoxal_model::robot::Robot. Everything else is named through its owning module.

Modules inside this crate import from the owning module, never through this facade.

Re-exports§

pub use asset::AssetId;
pub use builder::RobotBuilder;
pub use component::capability::CapabilityRole;
pub use footprint::FootprintEnvelope;
pub use manifest::ManifestDocument;
pub use robot::Robot;

Modules§

asset
Canonical logical asset identities.
builder
Compose a canonical Robot programmatically.
component
Canonical component facts used after authored documents are loaded.
footprint
The stock safety footprint compiled from canonical collision geometry.
identity
Validated canonical identifiers and the token grammar they share.
manifest
The one document a compiled robot is persisted as.
robot
Canonical immutable robot model.
simulation
Canonical simulation facts used after authored documents are loaded.
structure
Canonical normalized structure facts.

Enums§

IdentifierKind
What a rejected identifier was being used to name.
JointOwner
Which structure a rejected joint belongs to.
KinematicScalarField
Which kinematic dimension was rejected.
LinkRole
Which end of a joint named a missing link.
ModelError
A canonical robot model that violates the runtime model’s invariants.
MotionLimitField
Which motion limit was rejected.
PoseOwner
Which pose in the structure was rejected.
StructureError
A canonical structure that violates the structural invariants.