yaq/daemons/continuous-hardware


Idealized simulated hardware which immediately reports as the requested position upon setting.

external links

documentation
source
bugtracker

installation

The continuous-hardware daemon can be installed using the following package managers:

PyPI

traits

The continuous-hardware daemon is composed of the following traits:

has-limits
has-position (from has-limits)
is-daemon

configuration

limits ([number, number]) default: [-inf, +inf]
Configuration limits are strictly optional.
from has-limits

out_of_limits (string) default: closest
Control behavior of daemon when set_position is given a value outside of limits.
from has-limits

port (integer)
TCP port for daemon to occupy.
from is-daemon

serial (string) default: NULL
Serial number for the particular device represented by the daemon
from is-daemon

make (String) default: NULL
from is-daemon

model (String) default: NULL
from is-daemon

state

The continuous-hardware daemon will provide the following state information:

hw_limits
type: [number, number]
from has-limits

position
type: number
from has-limitshas-position

destination
type: number
from has-limitshas-position

methods

Daemons with the continuous-hardware trait expose the following public methods:

get_limits ➜ [number, number]
Get daemon limits. Limits will be the intersection of config limits and driver limits (when appliciable).
from has-limits

in_limits ➜ boolean
Check if a given position is within daemon limits.
from has-limits
Arguments:

position, {'type': 'number'}

get_destination ➜ number
Get current daemon destination.
from has-limitshas-position

get_units ➜ string
Get units of daemon. These units apply to the position and destination fields.
from has-limitshas-position

get_position ➜ number
Get current daemon position.
from has-limitshas-position

set_position
Give the daemon a new destination, and begin motion towards that destination.
from has-limitshas-position
Arguments:

position, {'type': 'number'}

set_relative ➜ number
Give the daemon a new destination relative to its current position. Daemon will immediately begin motion towards new destination. Returns new destination.
from has-limitshas-position
Arguments:

distance, {'type': 'number'}

busy ➜ boolean
Returns true if daemon is currently busy.
from is-daemon

id ➜ dictionary
JSON object with information to identify the daemon, including name, kind, make, model, serial.
from is-daemon

get_config_filepath ➜ string
String representing the absolute filepath of the configuration file on the host machine.
from is-daemon

get_config ➜ dictionary
Full configuration for the individual daemon as defined in the TOML file. This includes defaults and shared settings not directly specified in the daemon-specific TOML table.
from is-daemon

get_traits ➜ [string]
Get a full list of the daemon traits.
from is-daemon

get_state ➜ dictionary
Get daemon state, as saved in the state.toml file.
from is-daemon

set_state
Set daemon state. Accepts any subset of the state dictionary, dynamically.
from is-daemon

list_methods ➜ [string]
Get an array of all known public method names.
from is-daemon

shutdown
Cleanly shutdown daemon.
from is-daemon

help ➜ string
If method not given, return a human-readable string with information about the daemon as a whole. If method is given, return a human-readable string with the signature of the method on the first line and a description of the method on subsequent lines. The signature is not specified to be in any particular language. It is intended for usage by humans ONLY.
from is-daemon
Arguments:

method, {'type': 'string'}