Skip to main content

Crate instrument_core

Crate instrument_core 

Source
Expand description

VISA-agnostic instrument control: transport, SCPI, discovery, and mock fixtures.

This crate has no VISA dependency. Use Transport for byte I/O, ScpiSession for SCPI framing, and ScriptedFixture for CI mocks.

Enable the async feature for AsyncTransport and AsyncScpiSession with the same framing and retry semantics as the sync path.

For the full discovery and typed-class API, use the instrument-components facade.

Re-exports§

pub use address::AddressParts;
pub use address::InterfaceKind;
pub use address::ResourceAddress;
pub use classifier::classify_deep;
pub use classifier::classify_from_address;
pub use classifier::classify_from_identity;
pub use classifier::classify_with_policy;
pub use classifier::ClassifiedKind;
pub use classifier::ClassifySource;
pub use classifier::DiscoveredDevice;
pub use connect::AccessMode;
pub use connect::ConnectOptions;
pub use diagnostics::CommsEvent;
pub use diagnostics::CommsEventKind;
pub use diagnostics::CommsObserver;
pub use diagnostics::DeviceHealth;
pub use diagnostics::Diagnostics;
pub use dialect::resolve_dialect;
pub use dialect::DialectProfile;
pub use dialect::DIALECT_PROFILES;
pub use enumerator::RawResource;
pub use enumerator::ResourceEnumerator;
pub use enumerator::StaticEnumerator;
pub use error::Error;
pub use error::Result;
pub use error::TransportError;
pub use identity::DeviceId;
pub use identity::DeviceIdentity;
pub use identity::Idn;
pub use ieee4882::Ieee4882;
pub use kind::InstrumentKind;
pub use mock::MockTransport;
pub use mock::ScriptStep;
pub use mock::ScriptedFixture;
pub use mock::Transcript;
pub use probe_policy::ProbePolicy;
pub use registry::ModelRegistry;
pub use scpi::is_opc_supported_reply;
pub use scpi::is_syst_err_supported_reply;
pub use scpi::parse_f64;
pub use scpi::parse_f64_csv;
pub use scpi::ScpiSession;
pub use session::InstrumentSession;
pub use session::SessionOpener;
pub use session::SessionPool;
pub use transport::Transport;
pub use transport::TransportIdentity;

Modules§

address
classifier
connect
diagnostics
dialect
enumerator
error
identity
ieee4882
kind
mock
probe_policy
registry
scpi
scpi_commands
session
transport