LIBNUTCLIENT_VARIABLES(3)
=========================

NAME
----

libnutclient_variables, nutclient_get_device_variables,
nutclient_get_device_rw_variables, nutclient_has_device_variable,
nutclient_get_device_variable_description,
nutclient_get_device_variable_values,
nutclient_set_device_variable_value, nutclient_set_device_variable_values -
Variable related functions in Network UPS Tools high-level client access
library

SYNOPSIS
--------

	#include <nutclient.h>

	typedef void* NUTCLIENT_t;

	typedef char** strarr;

	strarr nutclient_get_device_variables(NUTCLIENT_t client,
		const char* dev);

	strarr nutclient_get_device_rw_variables(NUTCLIENT_t client,
		const char* dev);

	int nutclient_has_device_variable(NUTCLIENT_t client,
		const char* dev, const char* var);

	char* nutclient_get_device_variable_description(NUTCLIENT_t client,
		const char* dev, const char* var);

	strarr nutclient_get_device_variable_values(NUTCLIENT_t client,
		const char* dev, const char* var);

	void nutclient_set_device_variable_value(NUTCLIENT_t client,
		const char* dev, const char* var, const char* value);

	void nutclient_set_device_variable_values(NUTCLIENT_t client,
		const char* dev, const char* var, const strarr values);

DESCRIPTION
-----------

These functions allow to manage variables of devices.

The *nutclient_get_device_variables()* function retrieves the list
of variables names for a device.
The returned strarr must be freed by 'strarr_free'.

The *nutclient_get_device_rw_variables* function retrieves the list
of read-write variables names for a device.
The returned strarr must be freed by 'strarr_free'.

The *nutclient_has_device_variable* function tests if the specified
variable is supported by the device.
Return 1 is supported and 0 if not.

The *nutclient_get_device_variable_description* function retrieves
the variable description, if any.
The returned string must be freed.

The *nutclient_get_device_variable_values* returns variable values
(generally only one).
The returned strarr must be freed by 'strarr_free'.

The *nutclient_set_device_variable_value* intends to set the value
of the specified variable.

The *nutclient_set_device_variable_values* intends to set multiple
values of the specified variable.

Common arguments:

* 'dev' is the device name.

* 'var' is the variable name.

* 'value' is the variable value.

* 'values' is the variable array of values.

SEE ALSO
--------

linkman:libnutclient[3]
linkman:libnutclient_devices[3]
linkman:libnutclient_general[3]
