The fundamental interface for all TANGO objects.
Each Device is a network object which can be accessed locally or via
network.
The network protocol on the wire will be IIOP.
The Device interface implements all the basic functions needed for doing
generic synchronous and asynchronous I/O on a device.
A Device object has data and actions.
Data are represented in the form of Attributes.
Actions are represented in the form of Commands.
The CORBA Device interface offers attributes and methods to access
the attributes and commands.
A client will either use these methods directly from C++ or Java or access
them via a wrapper class.
The Device interface describes only the remote network interface.
Implementation features like threads, command security, priority
etc. are dealt with in server side of the device server model.
readonly attribute DevSecurity access;
access (readonly) - client permission on device
readonly attribute string adm_name;
adm_name (readonly) - administrator device unique ascii identifier
readonly attribute string description;
description (readonly) - general description of device
readonly attribute string name;
name (readonly) - unique ascii identifier
attribute DevProtocol protocol;
protocol - protocol to use between client and device
attribute DevSource source;
source (readwrite) - source of device data (locality constrained)
readonly attribute DevState state;
state (readonly) - device state
readonly attribute string status;
status (readonly) - device state as ascii string
attribute TimeVal timeout;
timeout (readwrite) - maximum time to wait for a request to be executed before attributeling an error
DevVarStringArray black_box(in long n)
raises(DevFailed);
read list of last N commands executed by clients
number -of commands to return
any command_inout(in string command,
in any argin)
raises(DevFailed);
execute a command on a device synchronously with no input parameter and one output parameter
command -ascii string e.g. "On"
argin -command input parameter e.g. float
oneway void command_inout_async(in string command,
in any argin,
in any user_data,
in CallBack cb);
execute a command on a device asynchronously with one input parameter and one output parameter, callback is triggered on completion
command -ascii string e.g. "On"
argin -command parameter
user_data -passed to callback e.g. short
callback -to be called on completion
DevCmdInfoList command_list_query()
raises(DevFailed);
query device to see what commands it supports
DevCmdInfo command_query(in string command)
raises(DevFailed);
query device to see command argument
command -name
AttributeConfigList get_attribute_config(in DevVarStringArray names)
raises(DevFailed);
read the configuration for a variable list of attributes from a device
name -list of attribute names to read
DevInfo info()
raises(DevFailed);
return general information about object e.g. class, type, ...
TimeVal ping()
raises(DevFailed);
ping a device to see if it alive
long priority(in long priority)
raises(DevFailed);
change the client's priority on a device
priority -new priority
AttributeValueList read_attributes(in DevVarStringArray names)
raises(DevFailed);
read a variable list of attributes from a device
name -list of attribute names to read
DevSecurity set_access(in DevSecurity key)
raises(DevFailed);
change the client's security key on a device
key -new security key
void set_attribute_config(in AttributeConfigList new_conf)
raises(DevFailed);
set the configuration for a variable list of attributes from the device
new_conf -list of attribute configuration to be set
void write_attributes(in AttributeValueList values)
raises(DevFailed);
write a variable list of attributes to a device
values -list of attribute values to write
Generated by the ORBacus IDL-to-HTML translator