Crate tango_client[][src]

Expand description

A Rust binding to the Tango control system.

This crate provides a client API for Tango control system servers. It uses the preexisting C bindings (included) and wraps the API functions provided by it in a Rustic interface.

Example usage:

use tango_client::{DeviceProxy, CommandData};

let mut dev = DeviceProxy::new("sys/tg_test/1")?;
let argin = CommandData::from_str("Test");
let argout = dev.command_inout("DevString", arg)?;
assert_eq!(argout.into_bytes().unwrap(), "Test".as_bytes());

At present, only the most used subset of Database and Device APIs are wrapped. Only synchronous calls are implemented.

Re-exports

pub use proxy::DeviceProxy;
pub use dbase::DatabaseProxy;
pub use error::TangoError;
pub use error::TangoResult;
pub use types::TangoDataType;
pub use types::TangoDevState;
pub use types::DispLevel;
pub use types::DevSource;
pub use types::CommandInfo;
pub use types::CommandData;
pub use types::DevEncoded;
pub use types::AttributeInfo;
pub use types::AttrQuality;
pub use types::AttrWriteType;
pub use types::AttrDataFormat;
pub use types::AttributeData;
pub use types::AttrValue;
pub use types::DbDatum;
pub use types::PropertyValue;
pub use types::ErrSeverity;

Modules

Binding to the Tango Database API.

Error types used with Tango.

Binding to the Tango Device proxy API.

This module implements the serde Serialize and Deserialize traits for the Tango data types CommandData, AttrValue and PropertyValue.

Data types used with the Tango API.