Expand description
This crate contains (mostly) safe bindings to the Aravis library.
The bindings are mostly auto-generated with the gir
tool from the gtk-rs project.
This crate currently targets version 0.8.14 of the Aravis library.
The autogenerated API uses extension traits to implement methods for many structs.
This is done by the gir
tool to emulate class inheritance.
Practically, this means that you should also look the CameraExt
trait if you want to know what you can do with a Camera
.
You can import the prelude to bring all available extension traits in scope:
use aravis::prelude::*;
Migrating from 0.6
The API was regenerated with a new version of the gir
tool.
As a result, the public API has changed a bit:
- Getters no-longer have a
get_
prefix, so a function that was calledget_foo()
is now simply calledfoo()
. - Methods for classes without subclasses no-longer live in
*Ext
traits. For example, this means that all methods forBuffer
objects are now directly implemented on theBuffer
struct. This mostly means you can just remove the import of traits that no longer exist.
Documentation copyright
This documentation constist mainly of original documentation of the Aravis project. The copyright and license of the Aravis project apply to those parts. The full original documentation is also available online and might help if the translation to Rust made things unclear.
Re-exports
pub extern crate glib;
Modules
Structs
- Error returned when
Aravis::initialize
is called more than once. - Token representing access to the global state of the Aravis library.
- Information identifying a GenICam camera.
Enums
- AccessCheckPolicy
v0_8_6
- Specifies access mode for feature nodes and registers.
- Specifies caching mode for register values.
- Number display notations for showing numbers in user interfaces.
- Describes relationship between TO and FROM variables in Converter feature nodes.
- Specifies feature node or register name space type. Standard name space features are listed in Genicam materials. Any other vendor-specific features should use custom name space type.
- Number representation formats.
- Specifies signedness of integer registers. Per standard Genicam internally uses signed 64-bit signed integers for representing all integer registers. Therefore unsigned 64-bit integers are not available.
- GcStreamable
v0_8_8
Denotes that the corresponding feature is prepared to be stored to and loaded from a file via the node tree. The idea is to persist the state of a camera by storing the features marked as Streamable and restore the state by writing those features back to the node tree. - Specifies feature node recommended visibility in user interfaces.
- RangeCheckPolicy
v0_8_6
- Describes when the stream callback is called.
Constants
Traits
- Trait containing all
Camera
methods. - Trait containing additional
Camera
methods. - Trait containing all
Device
methods. - Trait containing additional
Device
methods. - Trait containing all
DomCharacterData
methods. - Trait containing all
DomDocument
methods. - Trait containing all
DomElement
methods. - Trait containing all
DomNamedNodeMap
methods. - Trait containing all
DomNode
methods. - Trait containing all
DomNodeList
methods. - Trait containing all
GcFeatureNode
methods. - Trait containing all
GcFloat
methods. - Trait containing all
GcInteger
methods. - Trait containing all
GcNode
methods. - Trait containing all
GcPropertyNode
methods. - Trait containing all
GcRegister
methods. - Trait containing additional [
GcRegister
] methods. - Trait containing all
GcSelector
methods. - Trait containing all
GcString
methods. - Trait containing all
Interface
methods. - Trait containing all
Stream
methods.
Functions
- Calculate the bits per pixel of a given format.
- Calculated the size in bytes for a pixel format and count.
- Calculate the size in bytes for a image with a pixel format, width and height.
- Enumerate all available GenICam devices without mutual exclusion.