Previous | Table of Contents | Next |
//File: DAISDASimpleIO.idl#ifndef _DAIS_DA_SIMPLE_IO_IDL#define _DAIS_DA_SIMPLE_IO_IDL#include <DAISCommon.idl>
module DAIS {module DataAccess {module SimpleIO {
enum DataSource { DS_CACHE, DS_DEVICE
};
struct ItemError {
}; typ | Error ServerItemIdentification string edef sequence<ItemError> | err; id; reason; ItemErrors; | |||
{ str | uct ItemState | ||||
SimpleValue DateTime Quality ServerItemIdentification | value; time_stamp; dais_quality; id; | ||||
}; |
typedef sequence<ItemState>ItemStates;
struct ItemUpdate
{ ServerItemIdentification id; SimpleValue value;
};typedef sequence<ItemUpdate> ItemUpdates;
interface IHome {
ItemStates read ( in DataSource data_source, in ServerItemIdentifications ids, out ItemErrors errors
);
ItemErrors write_with_qt ( in ItemStates updates );
ItemErrors write ( in ItemUpdates updates
); };};};}; #endif // _DAIS_DA_SIMPLE_IO_IDL DataSource
Find all public groups defined in the server.
Member | Description | ||||
DS_CACHE | Data cached in the server is requested. | ||||
DS_DEVICE | Data from the device is requested. This will force a read from the device or RTU. A read from device will be made regardless of the group or item active status and no group NotActive exception will be forced. |
ItemError
A struct for reporting of item related errors. The struct is different from the DAIS::ItemError because no handles are used
to identify the item in SimpleIO.
Member |
Description |
||||
err | An error code as described for DAIS::ItemError. | ||||
id | The identification of the item. | ||||
reason | An additional text explaining the error. |
ItemState
The struct is the carrier of data conveyed over the interface. It is the “message? holding the payload. This is basically
the same struct as DataAccess::IO::ItemState with the difference that instead of a handle for identification the full server
identification is used.
Member | Description | ||||
value | The value itself. | ||||
time_stamp | The time stamp when the value was last updated. | ||||
quality | The quality for the value. | ||||
id | The identification of the value in the server. |
ItemUpdate
The struct carries an update for an item.
Member |
Description |
||||
id | The identification of the value in the server. | ||||
value | The value that shall be used in the update. |
IHome
The interface for simple IO operations.
read
Synchronous read of items. Inactive items will be reported with OPCQuality set to OPC_QUALITY_OUT_OF_SERVICE.
Parameter | Description | ||||
data_source | The source from where to read the data, see DataSource above. | ||||
ids | A sequence specifying the server identifications to read. | ||||
errors | A sequence reporting items for which the read failed. An empty sequence indicates all read operations succeeded. Reported errors are: • ERROR_BAD_RIGHTS (item is write only) • ERROR_UNKNOWN_PATHNAME • ERROR_UNKNOWN_ITEMID | ||||
return | A sequence of ItemStates for the items. |
write_with_qt
Synchronous write of item values including quality and time stamp. The active state of the group or the items is ignored.
Parameter | Description | ||||
updates | A sequence of ItemStates specifying the updates including time stamp and quality. | ||||
return | A sequence reporting items for which the write failed. An empty sequence indicates write operations for all items succeeded. Reported errors are: • ERROR_BAD_RIGHTS (item is read only) • ERROR_UNKNOWN_PATHNAME • ERROR_UNKNOWN_ITEMID • ERROR_CLAMPED • ERROR_OUT_OF_RANGE • ERROR_BAD_TYPE |
write
Synchronous write of item values only. The active state of the group or the items is ignored.
Parameter | Description | ||||
updates | A sequence of ItemUpdates specifying the update values. | ||||
return | A sequence reporting items for which the write failed. An empty sequence indicates write operations for all items succeeded. Reported errors are: • ERROR_BAD_RIGHTS (item is read only) • ERROR_UNKNOWN_PATHNAME • ERROR_UNKNOWN_ITEMID • ERROR_CLAMPED • ERROR_OUT_OF_RANGE • ERROR_BAD_TYPE. |