hal_signal_new
NAME
hal_signal_new, hal_signal_delete, hal_link, hal_unlink — Manipulate HAL signals
SYNTAX
int hal_signal_new ( const char *signal_name, hal_type_t type )
int hal_signal_delete ( const char *signal_name )
int hal_link ( const char *pin_name, const char *signal_name )
int hal_unlink ( const char *pin_name )
ARGUMENTS
signal_name
The name of the signal
pin_name
The name of the pin
type
The type of the signal, as specified in hal_type_t.
DESCRIPTION
hal_signal_new creates a new signal object.
Once a signal has been
created, pins can be linked to it with hal_link.
The signal object
contains the actual storage for the signal data.
Pin objects linked to the
signal have pointers that point to the data. 'name' is the name of the new
signal.
It may be no longer than HAL_NAME_LEN characters.
If there is already
a signal with the same name the call will fail.
hal_link links a pin to a signal.
If the pin is already linked to the desired signal, the command succeeds.
If the pin is already linked to some other signal, it is an error.
In either case, the existing connection is not
modified. (Use 'hal_unlink' to break an existing connection.)
If the signal
already has other pins linked to it, they are unaffected - one signal can be
linked to many pins, but a pin can be linked to only one signal.
hal_unlink unlinks any signal from the specified pin.
hal_signal_delete deletes a signal object.
Any pins linked to the object
are unlinked.
RETURN VALUE
Returns a HAL status code.
SEE ALSO
hal_type_t