
fr.esrf.TangoApi.IDeviceProxyDAO Maven / Gradle / Ivy
//+======================================================================
// $Source$
//
// Project: Tango
//
// Description: java source code for the TANGO client/server API.
//
// $Author: pascal_verdier $
//
// Copyright (C) : 2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,
// European Synchrotron Radiation Facility
// BP 220, Grenoble 38043
// FRANCE
//
// This file is part of Tango.
//
// Tango is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Tango is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with Tango. If not, see .
//
// $Revision: 29386 $
//
//-======================================================================
package fr.esrf.TangoApi;
import org.omg.CORBA.Request;
import fr.esrf.Tango.AttributeValue;
import fr.esrf.Tango.DevFailed;
import fr.esrf.Tango.DevState;
import java.util.List;
public interface IDeviceProxyDAO extends IConnectionDAO{
//===================================================================
/**
* Default DeviceProxy constructor. It will do nothing
*/
//===================================================================
public abstract void init(DeviceProxy deviceProxy) throws DevFailed;
//===================================================================
/**
* DeviceProxy constructor. It will import the device.
*
* @param devname name of the device to be imported.
*/
//===================================================================
public abstract void init(DeviceProxy deviceProxy, String devname) throws DevFailed;
//===================================================================
/**
* DeviceProxy constructor. It will import the device.
*
* @param devname name of the device to be imported.
* @param check_access set check_access value
*/
//===================================================================
public abstract void init(DeviceProxy deviceProxy, String devname, boolean check_access) throws DevFailed;
//===================================================================
/**
* TangoDevice constructor. It will import the device.
*
* @param devname name of the device to be imported.
* @param ior ior string used to import device
*/
//===================================================================
public abstract void init(DeviceProxy deviceProxy, String devname, String ior) throws DevFailed;
//===================================================================
/**
* TangoDevice constructor. It will import the device.
*
* @param devname name of the device to be imported.
* @param host host where database is running.
* @param port port for database connection.
*/
//===================================================================
public abstract void init(DeviceProxy deviceProxy, String devname, String host, String port) throws DevFailed;
public abstract boolean use_db(DeviceProxy deviceProxy);
//==========================================================================
//==========================================================================
public abstract Database get_db_obj(DeviceProxy deviceProxy) throws DevFailed;
//===================================================================
/**
* Get connection on administration device.
*/
//===================================================================
public abstract void import_admin_device(DeviceProxy deviceProxy, DbDevImportInfo info) throws DevFailed;
//===================================================================
/**
* Get connection on administration device.
*/
//===================================================================
public abstract void import_admin_device(DeviceProxy deviceProxy, String origin) throws DevFailed;
//===========================================================
/**
* return the device name.
*/
//===========================================================
public abstract String name(DeviceProxy deviceProxy);
//===========================================================
/**
* return the device status read from CORBA attribute.
*/
//===========================================================
public abstract String status(DeviceProxy deviceProxy) throws DevFailed;
//===========================================================
/**
* return the device status.
* @param src Source to read status.
* It could be ApiDefs.FROM_CMD to read it from a command_inout or
* ApiDefs.FROM_ATTR to read it from CORBA attribute.
*/
//===========================================================
public abstract String status(DeviceProxy deviceProxy, boolean src) throws DevFailed;
//===========================================================
/**
* return the device state read from CORBA attribute.
*/
//===========================================================
public abstract DevState state(DeviceProxy deviceProxy) throws DevFailed;
//===========================================================
/**
* return the device state.
*
* @param src Source to read state.
* It could be ApiDefs.FROM_CMD to read it from a command_inout or
* ApiDefs.FROM_ATTR to read it from CORBA attribute.
*/
//===========================================================
public abstract DevState state(DeviceProxy deviceProxy, boolean src) throws DevFailed;
//===========================================================
/**
* return the IDL device command_query for the specified command.
*
* @param cmdname command name to be used for the command_query
* @return the command information..
*/
//===========================================================
public abstract CommandInfo command_query(DeviceProxy deviceProxy, String cmdname) throws DevFailed;
//===========================================================
// The following methods are an agrega of DbDevice
//===========================================================
//==========================================================================
/**
* Returns the class for the device
*/
//==========================================================================
public abstract String get_class(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Returns the class inheritance for the device
*
* - [0] Device Class
*
- [1] Class from the device class is inherited.
*
- .....And so on
*
*/
//==========================================================================
public abstract String[] get_class_inheritance(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Set an alias for a device name
* @param aliasname alias name.
*/
//==========================================================================
public abstract void put_alias(DeviceProxy deviceProxy, String aliasname) throws DevFailed;
//==========================================================================
/**
* Get alias for the device
* @return the alias name if found.
*/
//==========================================================================
public abstract String get_alias(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Query the database for the info of this device.
* @return the information in a DeviceInfo.
*/
//==========================================================================
public abstract DeviceInfo get_info(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Query the database for the export info of this device.
* @return the information in a DbDevImportInfo.
*/
//==========================================================================
public abstract DbDevImportInfo import_device(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Update the export info for this device in the database.
* @param devinfo Device information to export.
*/
//==========================================================================
public abstract void export_device(DeviceProxy deviceProxy, DbDevExportInfo devinfo) throws DevFailed;
//==========================================================================
/**
* Unexport the device in database.
*/
//==========================================================================
public abstract void unexport_device(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Add/update this device to the database
* @param devinfo The device name, class and server specified in object.
*/
//==========================================================================
public abstract void add_device(DeviceProxy deviceProxy, DbDevInfo devinfo) throws DevFailed;
//==========================================================================
/**
* Delete this device from the database
*/
//==========================================================================
public abstract void delete_device(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Query the database for a list of device
* properties for the pecified object.
* @param wildcard propertie's wildcard (* matches any charactere).
* @return properties in DbDatum objects.
*/
//==========================================================================
public abstract String[] get_property_list(DeviceProxy deviceProxy, String wildcard) throws DevFailed;
//==========================================================================
/**
* Query the database for a list of device properties for this device.
* @param propnames list of property names.
* @return properties in DbDatum objects.
*/
//==========================================================================
public abstract DbDatum[] get_property(DeviceProxy deviceProxy, String[] propnames) throws DevFailed;
//==========================================================================
/**
* Query the database for a device property for this device.
* @param propname property name.
* @return property in DbDatum objects.
*/
//==========================================================================
public abstract DbDatum get_property(DeviceProxy deviceProxy, String propname) throws DevFailed;
//==========================================================================
/**
* Query the database for a list of device properties for this device.
* The property names are specified by the DbDatum array objects.
* @param properties list of property DbDatum objects.
* @return properties in DbDatum objects.
*/
//==========================================================================
public abstract DbDatum[] get_property(DeviceProxy deviceProxy, DbDatum[] properties) throws DevFailed;
//==========================================================================
/**
* Insert or update a property for this device
* The property name and its value are specified by the DbDatum
*
* @param prop Property name and value
*/
//==========================================================================
public abstract void put_property(DeviceProxy deviceProxy, DbDatum prop) throws DevFailed;
//==========================================================================
/**
* Insert or update a list of properties for this device
* The property names and their values are specified by the DbDatum array.
*
* @param properties Properties names and values array.
*/
//==========================================================================
public abstract void put_property(DeviceProxy deviceProxy, DbDatum[] properties) throws DevFailed;
//==========================================================================
/**
* Delete a list of properties for this device.
* @param propnames Property names.
*/
//==========================================================================
public abstract void delete_property(DeviceProxy deviceProxy, String[] propnames) throws DevFailed;
//==========================================================================
/**
* Delete a property for this device.
* @param propname Property name.
*/
//==========================================================================
public abstract void delete_property(DeviceProxy deviceProxy, String propname) throws DevFailed;
//==========================================================================
/**
* Delete a list of properties for this device.
* @param properties Property DbDatum objects.
*/
//==========================================================================
public abstract void delete_property(DeviceProxy deviceProxy, DbDatum[] properties) throws DevFailed;
//==========================================================================
/**
* Query the device for attribute config and returns names only.
*
* @return attributes list for specified device
*/
//==========================================================================
public abstract String[] get_attribute_list(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Insert or update a list of attribute properties for this device.
* The property names and their values are specified by the DbAttribute array.
*
* @param attr attribute names and properties (names and values) array.
*/
//==========================================================================
public abstract void put_attribute_property(DeviceProxy deviceProxy, DbAttribute[] attr) throws DevFailed;
//==========================================================================
/**
* Insert or update an attribute properties for this device.
* The property names and their values are specified by the DbAttribute array.
*
* @param attr attribute name and properties (names and values).
*/
//==========================================================================
public abstract void put_attribute_property(DeviceProxy deviceProxy, DbAttribute attr) throws DevFailed;
//==========================================================================
/**
* Delete a list of properties for this object.
* @param attname attribute name.
* @param propnames Property names.
*/
//==========================================================================
public abstract void delete_attribute_property(DeviceProxy deviceProxy, String attname, String[] propnames) throws DevFailed;
//==========================================================================
/**
* Delete a property for this object.
* @param attname attribute name.
* @param propname Property name.
*/
//==========================================================================
public abstract void delete_attribute_property(DeviceProxy deviceProxy, String attname, String propname) throws DevFailed;
//==========================================================================
/**
* Delete a list of properties for this object.
*/
//==========================================================================
public abstract void delete_attribute_property(DeviceProxy deviceProxy, DbAttribute attr) throws DevFailed;
//==========================================================================
/**
* Delete a list of properties for this object.
*/
//==========================================================================
public abstract void delete_attribute_property(DeviceProxy deviceProxy, DbAttribute[] attr) throws DevFailed;
//==========================================================================
/**
* Query the database for a list of device attribute
* properties for this device.
* @param attnames list of attribute names.
* @return properties in DbAttribute objects array.
*/
//==========================================================================
public abstract DbAttribute[] get_attribute_property(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Query the database for a device attribute
* property for this device.
* @param attname attribute name.
* @return property in DbAttribute object.
*/
//==========================================================================
public abstract DbAttribute get_attribute_property(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Delete an attribute for this object.
* @param attname attribute name.
*/
//==========================================================================
public abstract void delete_attribute(DeviceProxy deviceProxy, String attname) throws DevFailed;
//===========================================================
// Attribute Methods
//===========================================================
//==========================================================================
/**
* Get the attributes configuration for the specified device.
*
* @param attnames attribute names to request config.
* @return the attributes configuration.
*/
//==========================================================================
public abstract AttributeInfo[] get_attribute_info(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Get the extended attributes configuration for the specified device.
*
* @param attnames attribute names to request config.
* @return the attributes configuration.
*/
//==========================================================================
public abstract AttributeInfoEx[] get_attribute_info_ex(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Get the attributes configuration for the specified device.
*
* @param attnames attribute names to request config.
* @return the attributes configuration.
* @deprecated use get_attribute_info(String[] attnames)
*/
//==========================================================================
@Deprecated
public abstract AttributeInfo[] get_attribute_config(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Get the attribute info for the specified device.
*
* @param attname attribute name to request config.
* @return the attribute info.
*/
//==========================================================================
public abstract AttributeInfo get_attribute_info(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Get the attribute info for the specified device.
*
* @param attname attribute name to request config.
* @return the attribute info.
*/
//==========================================================================
public abstract AttributeInfoEx get_attribute_info_ex(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Get the attribute configuration for the specified device.
*
* @param attname attribute name to request config.
* @return the attribute configuration.
* @deprecated use get_attribute_info(String attname)
*/
//==========================================================================
@Deprecated
public abstract AttributeInfo get_attribute_config(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Get all attributes info for the specified device.
*
* @return all attributes info.
*/
//==========================================================================
public abstract AttributeInfo[] get_attribute_info(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Get all attributes info for the specified device.
*
* @return all attributes info.
*/
//==========================================================================
public abstract AttributeInfoEx[] get_attribute_info_ex(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Get all attributes configuration for the specified device.
*
* @return all attributes configuration.
* @deprecated use get_attribute_info()
*/
//==========================================================================
@Deprecated
public abstract AttributeInfo[] get_attribute_config(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Update the attributes info for the specified device.
*
* @param attr the attributes info.
*/
//==========================================================================
public abstract void set_attribute_info(DeviceProxy deviceProxy, AttributeInfo[] attr) throws DevFailed;
//==========================================================================
/**
* Update the attributes extended info for the specified device.
*
* @param attr the attributes info.
*/
//==========================================================================
public abstract void set_attribute_info(DeviceProxy deviceProxy, AttributeInfoEx[] attr) throws DevFailed;
//==========================================================================
/**
* Update the attributes configuration for the specified device.
*
* @param attr the attributes configuration.
* @deprecated use set_attribute_info(AttributeInfo[] attr)
*/
//==========================================================================
@Deprecated
public abstract void set_attribute_config(DeviceProxy deviceProxy, AttributeInfo[] attr) throws DevFailed;
//==========================================================================
/**
* Read the attribute value for the specified device.
*
* @param attname attribute name to request value.
* @return the attribute value.
*/
//==========================================================================
public abstract DeviceAttribute read_attribute(DeviceProxy deviceProxy, String attname) throws DevFailed;
public abstract AttributeValue read_attribute_value(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Read the attribute values for the specified device.
*
* @param attnames attribute names to request values.
* @return the attribute values.
*/
//==========================================================================
public abstract DeviceAttribute[] read_attribute(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Write the attribute value for the specified device.
*
* @param devattr attribute name and value.
*/
//==========================================================================
public abstract void write_attribute(DeviceProxy deviceProxy, DeviceAttribute devattr) throws DevFailed;
//==========================================================================
/**
* Write the attribute values for the specified device.
*
* @param devattr attribute names and values.
*/
//==========================================================================
public abstract void write_attribute(DeviceProxy deviceProxy, DeviceAttribute[] devattr) throws DevFailed;
// ==========================================================================
/**
* Write and then read the attribute values, for the specified device.
*
* @param devattr attribute names and values.
*/
// ==========================================================================
public DeviceAttribute[] write_read_attribute(DeviceProxy deviceProxy, DeviceAttribute[] devattr) throws DevFailed;
// ==========================================================================
/**
* Write and then read the attribute values, for the specified device.
*
* @param deviceAttributes attribute names and values to be written.
* @param readNames attribute names to read.
*/
// ==========================================================================
public DeviceAttribute[] write_read_attribute(DeviceProxy deviceProxy,
DeviceAttribute[] deviceAttributes, String[] readNames) throws DevFailed;
//==========================================================================
//==========================================================================
public abstract DeviceProxy get_adm_dev(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Polling commands.
*/
//==========================================================================
//==========================================================================
/**
* Add a command to be polled for the device.
* If already polled, update its polling period.
*
* @param cmdname command name to be polled.
* @param period polling period.
*/
//==========================================================================
public abstract void poll_command(DeviceProxy deviceProxy, String cmdname, int period) throws DevFailed;
//==========================================================================
/**
* Add a attribute to be polled for the device.
* If already polled, update its polling period.
*
* @param attname attribute name to be polled.
* @param period polling period.
*/
//==========================================================================
public abstract void poll_attribute(DeviceProxy deviceProxy, String attname, int period) throws DevFailed;
//==========================================================================
/**
* Remove command of polled object list
*
* @param cmdname command name to be removed of polled object list.
*/
//==========================================================================
public abstract void stop_poll_command(DeviceProxy deviceProxy, String cmdname) throws DevFailed;
//==========================================================================
/**
* Remove attribute of polled object list
*
* @param attname attribute name to be removed of polled object list.
*/
//==========================================================================
public abstract void stop_poll_attribute(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Returns the polling status for the device.
*/
//==========================================================================
public abstract String[] polling_status(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Return the history for command polled.
*
* @param cmdname command name to read polled history.
* @param nb nb data to read.
*/
//==========================================================================
public abstract DeviceDataHistory[] command_history(DeviceProxy deviceProxy, String cmdname, int nb) throws DevFailed;
//==========================================================================
/**
* Return the history for attribute polled.
*
* @param attname attribute name to read polled history.
* @param nb nb data to read.
*/
//==========================================================================
public abstract DeviceDataHistory[] attribute_history(DeviceProxy deviceProxy, String attname, int nb) throws DevFailed;
//==========================================================================
/**
* Return the full history for command polled.
*
* @param cmdname command name to read polled history.
*/
//==========================================================================
public abstract DeviceDataHistory[] command_history(DeviceProxy deviceProxy, String cmdname) throws DevFailed;
//==========================================================================
/**
* Return the full history for attribute polled.
*
* @param attname attribute name to read polled history.
*/
//==========================================================================
public abstract DeviceDataHistory[] attribute_history(DeviceProxy deviceProxy, String attname) throws DevFailed;
// ==========================================================================
/**
* Returns the polling period (in ms) for specified attribute.
*
* @param attname specified attribute name.
*/
// ==========================================================================
public abstract int get_attribute_polling_period(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Returns the polling period (in ms) for specified command.
*
* @param cmdname specified attribute name.
*/
//==========================================================================
public int get_command_polling_period(DeviceProxy deviceProxy, String cmdname) throws DevFailed;
//==========================================================================
/**
* Asynchronous calls
*/
//==========================================================================
//==========================================================================
/**
* Asynchronous command_inout.
*
* @param cmdname command name.
* @param data_in input argument command.
*/
//==========================================================================
public abstract int command_inout_asynch(DeviceProxy deviceProxy, String cmdname, DeviceData data_in) throws DevFailed;
//==========================================================================
/**
* Asynchronous command_inout.
*
* @param cmdname command name.
*/
//==========================================================================
public abstract int command_inout_asynch(DeviceProxy deviceProxy, String cmdname) throws DevFailed;
//==========================================================================
/**
* Asynchronous command_inout.
*
* @param cmdname command name.
* @param forget forget the response if true
*/
//==========================================================================
public abstract int command_inout_asynch(DeviceProxy deviceProxy, String cmdname, boolean forget) throws DevFailed;
//==========================================================================
/**
* Asynchronous command_inout.
*
* @param cmdname command name.
* @param data_in input argument command.
* @param forget forget the response if true
*/
//==========================================================================
public abstract int command_inout_asynch(DeviceProxy deviceProxy, String cmdname, DeviceData data_in, boolean forget) throws DevFailed;
//==========================================================================
/**
* Asynchronous command_inout using callback for reply.
*
* @param cmdname Command name.
* @param argin Input argument command.
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void command_inout_asynch(DeviceProxy deviceProxy, String cmdname, DeviceData argin, CallBack cb) throws DevFailed;
//==========================================================================
/**
* Asynchronous command_inout using callback for reply.
*
* @param cmdname Command name.
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void command_inout_asynch(DeviceProxy deviceProxy, String cmdname, CallBack cb) throws DevFailed;
//==========================================================================
/**
* Read Asynchronous command_inout reply.
*
* @param id asynchronous call id (returned by command_inout_asynch).
* @param timeout number of millisonds to wait reply before throw an excption.
*/
//==========================================================================
public abstract DeviceData command_inout_reply(DeviceProxy deviceProxy, int id, int timeout) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Read Asynchronous command_inout reply.
*
* @param aco asynchronous call Request instance
* @param timeout number of millisonds to wait reply before throw an excption.
*/
//==========================================================================
public abstract DeviceData command_inout_reply(DeviceProxy deviceProxy, AsyncCallObject aco, int timeout) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Read Asynchronous command_inout reply.
*
* @param id asynchronous call id (returned by command_inout_asynch).
*/
//==========================================================================
public abstract DeviceData command_inout_reply(DeviceProxy deviceProxy, int id) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Read Asynchronous command_inout reply.
*
* @param aco asynchronous call Request instance
*/
//==========================================================================
public abstract DeviceData command_inout_reply(DeviceProxy deviceProxy, AsyncCallObject aco) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Asynchronous read_attribute.
*
* @param attname Attribute name.
*/
//==========================================================================
public abstract int read_attribute_asynch(DeviceProxy deviceProxy, String attname) throws DevFailed;
//==========================================================================
/**
* Asynchronous read_attribute.
*
* @param attnames Attribute names.
*/
//==========================================================================
public abstract int read_attribute_asynch(DeviceProxy deviceProxy, String[] attnames) throws DevFailed;
//==========================================================================
/**
* Retrieve the command/attribute arguments to build exception description.
*/
//==========================================================================
public abstract String get_asynch_idl_cmd(DeviceProxy deviceProxy, Request request, String idl_cmd);
//==========================================================================
/**
* Check Asynchronous call reply.
*
* @param id asynchronous call id (returned by read_attribute_asynch).
*/
//==========================================================================
public abstract void check_asynch_reply(DeviceProxy deviceProxy, Request request, int id, String idl_cmd) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Read Asynchronous read_attribute reply.
*
* @param id asynchronous call id (returned by read_attribute_asynch).
* @param timeout number of millisonds to wait reply before throw an excption.
*/
//==========================================================================
public abstract DeviceAttribute[] read_attribute_reply(DeviceProxy deviceProxy, int id, int timeout) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Read Asynchronous read_attribute reply.
*
* @param id asynchronous call id (returned by read_attribute_asynch).
*/
//==========================================================================
public abstract DeviceAttribute[] read_attribute_reply(DeviceProxy deviceProxy, int id) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Asynchronous read_attribute using callback for reply.
*
* @param attname attribute name.
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void read_attribute_asynch(DeviceProxy deviceProxy, String attname, CallBack cb) throws DevFailed;
//==========================================================================
/**
* Asynchronous read_attribute using callback for reply.
*
* @param attnames attribute names.
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void read_attribute_asynch(DeviceProxy deviceProxy, String[] attnames, CallBack cb) throws DevFailed;
//==========================================================================
/**
* Asynchronous write_attribute.
*
* @param attr Attribute value (name, writing value...)
* @return The ID of the asynchronous write operation
*/
//==========================================================================
public abstract int write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute attr) throws DevFailed;
//==========================================================================
/**
* Asynchronous write_attribute.
*
* @param attr Attribute value (name, writing value...)
* @param forget forget the response if true
* @return The ID of the asynchronous write operation
*/
//==========================================================================
public abstract int write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute attr, boolean forget) throws DevFailed;
//==========================================================================
/**
* Asynchronous write_attribute.
*
* @param attribs Attribute values (name, writing value...)
* @return The ID of the asynchronous write operation
*/
//==========================================================================
public abstract int write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute[] attribs) throws DevFailed;
//==========================================================================
/**
* Asynchronous write_attribute.
*
* @param attribs Attribute values (name, writing value...)
* @param forget forget the response if true
* @return The ID of the asynchronous write operation
*/
//==========================================================================
public abstract int write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute[] attribs, boolean forget) throws DevFailed;
//==========================================================================
/**
* check for Asynchronous write_attribute reply.
*
* @param id asynchronous call id (returned by read_attribute_asynch).
*/
//==========================================================================
public abstract void write_attribute_reply(DeviceProxy deviceProxy, int id) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* check for Asynchronous write_attribute reply.
*
* @param id asynchronous call id (returned by write_attribute_asynch).
* @param timeout number of millisonds to wait reply before throw an excption.
*/
//==========================================================================
public abstract void write_attribute_reply(DeviceProxy deviceProxy, int id, int timeout) throws DevFailed, AsynReplyNotArrived;
//==========================================================================
/**
* Asynchronous write_attribute using callback for reply.
*
* @param attr Attribute values (name, writing value...)
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute attr, CallBack cb) throws DevFailed;
//==========================================================================
/**
* Asynchronous write_attribute using callback for reply.
*
* @param attribs Attribute values (name, writing value...)
* @param cb a CallBack object instance.
*/
//==========================================================================
public abstract void write_attribute_asynch(DeviceProxy deviceProxy, DeviceAttribute[] attribs, CallBack cb) throws DevFailed;
//==========================================================================
/**
* return the still pending asynchronous call for a reply model.
*
* @param reply_model ApiDefs.ALL_ASYNCH, POLLING or CALLBACK.
*/
//==========================================================================
public abstract int pending_asynch_call(DeviceProxy deviceProxy, int reply_model);
//==========================================================================
/**
* Fire callback methods for all
* asynchronous requests(cmd and attr) with already arrived replies.
*/
//==========================================================================
public abstract void get_asynch_replies(DeviceProxy deviceProxy);
//==========================================================================
/**
* Fire callback methods for all
* asynchronous requests(cmd and attr) with already arrived replies.
*/
//==========================================================================
public abstract void get_asynch_replies(DeviceProxy deviceProxy, int timeout);
//==========================================================================
/**
* Logging related methods
*/
//==========================================================================
//==========================================================================
/**
* Adds a new logging target to the device.
*
* @param target The target for logging (e.g. file::/tmp/logging_device).
*/
//==========================================================================
public abstract void add_logging_target(DeviceProxy deviceProxy, String target) throws DevFailed;
//==========================================================================
/**
* Removes a new logging target to the device.
*/
//==========================================================================
public abstract void remove_logging_target(DeviceProxy deviceProxy, String target_type, String target_name) throws DevFailed;
//==========================================================================
/**
* get logging target from the device.
*/
//==========================================================================
public abstract String[] get_logging_target(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* get logging level from the device.
* @return device's logging level:
* (ApiDefs.LOGGING_OFF, ApiDefs.LOGGING_FATAL, ApiDefs.LOGGING_ERROR,
* ApiDefs.LOGGING_INFO, ApiDefs.LOGGING_DEBUG)
*/
//==========================================================================
public abstract int get_logging_level(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Set logging level from the device.
* @param level device's logging level:
* (ApiDefs.LOGGING_OFF, ApiDefs.LOGGING_FATAL, ApiDefs.LOGGING_ERROR,
* ApiDefs.LOGGING_INFO, ApiDefs.LOGGING_DEBUG)
*/
//==========================================================================
public abstract void set_logging_level(DeviceProxy deviceProxy, int level) throws DevFailed;
// ==========================================================================
// Locking Device 4 commands
// ==========================================================================
// ==========================================================================
/**
* Lock the device
*
* @param validity Lock validity (in seconds)
*/
// ==========================================================================
public abstract void lock(DeviceProxy deviceProxy, int validity) throws DevFailed;
// ==========================================================================
/**
* Unlock the device
*
* @return the device lock counter
*/
// ==========================================================================
public abstract int unlock(DeviceProxy deviceProxy) throws DevFailed;
// ==========================================================================
/**
* Returns true if the device is locked
*/
// ==========================================================================
public boolean isLocked(DeviceProxy deviceProxy) throws DevFailed;
// ==========================================================================
/**
* Returns true if the device is locked by this process
*/
// ==========================================================================
public boolean isLockedByMe(DeviceProxy deviceProxy) throws DevFailed;
// ==========================================================================
/**
* Returns the device lock status
*/
// ==========================================================================
public String getLockerStatus(DeviceProxy deviceProxy) throws DevFailed;
// ==========================================================================
/**
* Returns the device lock info
*/
// ==========================================================================
public LockerInfo getLockerInfo(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* TACO commands
*/
//==========================================================================
//==========================================================================
/**
* Returns TACO device information.
*
* @return TACO device information as String array.
* Device name.
* Class name
* Device type
* Device server name
* Host name
*/
//==========================================================================
public abstract String[] dev_inform(DeviceProxy deviceProxy) throws DevFailed;
//==========================================================================
/**
* Execute the dev_rpc_protocol TACO command to change RPC protocol mode.
* @param mode RPC protocol mode to be seted
* (TangoApi.TacoDevice.D_TCP or TangoApi.TacoDevice.D_UDP).
*/
//==========================================================================
public abstract void set_rpc_protocol(DeviceProxy deviceProxy, int mode) throws DevFailed;
//==========================================================================
/**
* @return mode RPC protocol mode used
* (TangoApi.TacoDevice.D_TCP or TangoApi.TacoDevice.D_UDP).
*/
//==========================================================================
public abstract int get_rpc_protocol(DeviceProxy deviceProxy) throws DevFailed;
// ===================================================================
/*
* Pipe related methods
*/
// ===================================================================
// ===================================================================
/**
* Query device for pipe configuration list
* @param deviceProxy device proxy object
* @return pipe configuration list
* @throws DevFailed if device connection failed
*/
// ===================================================================
public List getPipeConfig(DeviceProxy deviceProxy) throws DevFailed;
// ===================================================================
/**
* Query device for pipe configuration list
* @param deviceProxy device proxy object
* @param pipeNames pipe names.
* @return pipe configuration list
* @throws DevFailed if device connection failed
*/
// ===================================================================
public List getPipeConfig(DeviceProxy deviceProxy, List pipeNames) throws DevFailed;
// ===================================================================
/**
* Set device pipe configuration
* @param deviceProxy device proxy object
* @param pipeInfoList info list containing pipe name, description, label,....
* @throws DevFailed if device connection failed
*/
// ===================================================================
public void setPipeConfig(DeviceProxy deviceProxy, List pipeInfoList) throws DevFailed;
// ===================================================================
/**
* Read specified pipe and returns read data
* @param deviceProxy device proxy object
* @param pipeName pipe name
* @return data read from specified pipe.
* @throws DevFailed in case of device connection failed or pipe not found.
*/
// ===================================================================
public DevicePipe readPipe(DeviceProxy deviceProxy, String pipeName) throws DevFailed;
// ===================================================================
/**
* Write data in specified pipe
* @param deviceProxy device proxy object
* @param devicePipe data to be written
* @throws DevFailed in case of device connection failed or pipe not found.
*/
// ===================================================================
public void writePipe(DeviceProxy deviceProxy, DevicePipe devicePipe) throws DevFailed;
// ===================================================================
/**
* Write data in specified pipe
* @param deviceProxy device proxy object
* @param devicePipe data to be written
* @return data read from specified pipe.
* @throws DevFailed in case of device connection failed or pipe not found.
*/
// ===================================================================
public DevicePipe writeReadPipe(DeviceProxy deviceProxy, DevicePipe devicePipe) throws DevFailed;
//===============================================================
/*
* Event related methods
*/
//===============================================================
//==========================================================================
/**
* Subscribe to an event.
*
* @param attr_name attribute name.
* @param event event name.
* @param callback event callback.
* @param stateless If true, do not throw exception if connection failed.
*/
//==========================================================================
public abstract int subscribe_event(DeviceProxy deviceProxy, String attr_name, int event, CallBack callback, String[] filters, boolean stateless) throws DevFailed;
//==========================================================================
/**
* Subscribe to event to be stored in an event queue.
*
* @param attr_name attribute name.
* @param event event name.
* @param max_size event queue maximum size.
* @param stateless If true, do not throw exception if connection failed.
*/
//==========================================================================
public abstract int subscribe_event(DeviceProxy deviceProxy, String attr_name, int event, int max_size, String[] filters, boolean stateless) throws DevFailed;
//==========================================================================
/**
* Unsubscribe to an event.
*
* @param event_id event identifier.
*/
//==========================================================================
public abstract void unsubscribe_event(DeviceProxy deviceProxy, int event_id) throws DevFailed;
//==========================================================================
/**
* Subscribe to an event.
*
* @param event event name.
* @param callback event callback.
* @param stateless If true, do not throw exception if connection failed.
*/
//==========================================================================
public abstract int subscribe_event(DeviceProxy deviceProxy,
int event, CallBack callback, boolean stateless) throws DevFailed;
//==========================================================================
/**
* Subscribe to event to be stored in an event queue.
*
* @param event event name.
* @param max_size event queue maximum size.
* @param stateless If true, do not throw exception if connection failed.
*/
//==========================================================================
public abstract int subscribe_event(DeviceProxy deviceProxy,
int event, int max_size, boolean stateless) throws DevFailed;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy