Crate hinoko

source
Expand description

§hinoko crate

Rust API bindings and wrappers for hinoko library to operate 1394 OHCI hardware via Linux FireWire character device for isochronous communication in IEEE 1394 bus.

The hinoko library version 1.0 is the minimum supported version for underlying library.

The hinoko crate is automatically generated by gir tool provided by gtk-rs project. Hinoko-1.0 file from hinoko library is used for the generation. But some functions are implemented manually.

§Usage

Add the following line to your Cargo.toml file:

[dependencies]
hinoko = "0.7"

The API documentation is available in https://docs.rs/hinoko/.

§License

The hinoko crate is released under MIT license.

§Dependency

The hinoko crate depends on API crates provided by gtk-rs project for type/object system, event loop, and dispacher.

§Repository

The hinoko crate is maintained by Takashi Sakamoto for upstream of Linux FireWire subsystem. The remote repository locates in https://git.kernel.org/pub/scm/libs/ieee1394/hinoko-rs.git/.

§Support

If finding issue, please file it in https://github.com/takaswie/hinoko-rs/ which is the mirror of upstream for user support and continuous integration.

§Sample programs

Some programs are available under examples directory.

  • fw-iso-resource

    • demonstration to allocate and deallocate isochronous resources
  • fw-iso-resource-async

    • demonstration of the above example with async runtime
  • fw-iso-rx-single

    • demonstration to receive isochronous packets at single channel
  • fw-iso-rx-multiple

    • demonstration to receive isochronous packets at multiple channels
  • fw-iso-tx

    • demonstration to transmit isochronous packets at single channel

Re-exports§

Modules§

  • For convenience to provide auto-generated/manual traits, and their blanket implementations.
  • For subclass implementations derived from provided class.

Structs§

  • A set of basic interfaces to operate isochronous context on 1394 OHCI hardware.
  • A set of tag field of isochronous packet on IEEE 1394 bus.
  • An object to receive isochronous packet for several channels.
  • An object to receive isochronous packet for single channel.
  • An object to transmit isochronous packet for single channel.
  • A set of basic interfaces to listen to events about isochronous resource.
  • An object to maintain allocated isochronous resource.
  • An object to initiate requests and listen events of isochronous resource allocation/deallocation by one shot.

Enums§