libiec61850
1.6.0
|
Typedefs | |
typedef void(* | IedConnection_ReadDataSetHandler) (uint32_t invokeId, void *parameter, IedClientError err, ClientDataSet dataSet) |
typedef void(* | IedConnection_GetDataSetDirectoryHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList dataSetDirectory, bool isDeletable) |
GetDataSetDirectory response or timeout callback. More... | |
typedef void(* | IedConnection_WriteDataSetHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList accessResults) |
Callback handler for asynchronous write data set values services (set data set) More... | |
Functions | |
LIB61850_API ClientDataSet | IedConnection_readDataSetValues (IedConnection self, IedClientError *error, const char *dataSetReference, ClientDataSet dataSet) |
get data set values from the server More... | |
LIB61850_API uint32_t | IedConnection_readDataSetValuesAsync (IedConnection self, IedClientError *error, const char *dataSetReference, ClientDataSet dataSet, IedConnection_ReadDataSetHandler handler, void *parameter) |
get data set values from the server - async version More... | |
LIB61850_API void | IedConnection_createDataSet (IedConnection self, IedClientError *error, const char *dataSetReference, LinkedList dataSetElements) |
create a new data set at the connected server device More... | |
LIB61850_API uint32_t | IedConnection_createDataSetAsync (IedConnection self, IedClientError *error, const char *dataSetReference, LinkedList dataSetElements, IedConnection_GenericServiceHandler handler, void *parameter) |
create a new data set at the connected server device More... | |
LIB61850_API bool | IedConnection_deleteDataSet (IedConnection self, IedClientError *error, const char *dataSetReference) |
delete a deletable data set at the connected server device More... | |
LIB61850_API uint32_t | IedConnection_deleteDataSetAsync (IedConnection self, IedClientError *error, const char *dataSetReference, IedConnection_GenericServiceHandler handler, void *parameter) |
delete a deletable data set at the connected server device - asynchronous version More... | |
LIB61850_API LinkedList | IedConnection_getDataSetDirectory (IedConnection self, IedClientError *error, const char *dataSetReference, bool *isDeletable) |
read the data set directory More... | |
LIB61850_API uint32_t | IedConnection_getDataSetDirectoryAsync (IedConnection self, IedClientError *error, const char *dataSetReference, IedConnection_GetDataSetDirectoryHandler handler, void *parameter) |
read the data set directory - asynchronous version More... | |
LIB61850_API void | IedConnection_writeDataSetValues (IedConnection self, IedClientError *error, const char *dataSetReference, LinkedList values, LinkedList *accessResults) |
Write the data set values to the server. More... | |
LIB61850_API uint32_t | IedConnection_writeDataSetValuesAsync (IedConnection self, IedClientError *error, const char *dataSetReference, LinkedList values, IedConnection_WriteDataSetHandler handler, void *parameter) |
Write the data set values to the server - async version. More... | |
LIB61850_API void | ClientDataSet_destroy (ClientDataSet self) |
destroy an ClientDataSet instance. Has to be called by the application. More... | |
LIB61850_API MmsValue * | ClientDataSet_getValues (ClientDataSet self) |
get the data set values locally stored in the ClientDataSet instance. More... | |
LIB61850_API char * | ClientDataSet_getReference (ClientDataSet self) |
Get the object reference of the data set. More... | |
LIB61850_API int | ClientDataSet_getDataSetSize (ClientDataSet self) |
get the size of the data set (number of members) More... | |
typedef void(* IedConnection_GetDataSetDirectoryHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList dataSetDirectory, bool isDeletable) |
GetDataSetDirectory response or timeout callback.
dataSetDirectory | a linked list containing the object references of FCDs or FCDAs. The format of this object references is LDName/LNodeName.item(arrayIndex)component[FC]. |
isDeletable | this is an output parameter indicating that the requested data set is deletable by clients. |
typedef void(* IedConnection_ReadDataSetHandler) (uint32_t invokeId, void *parameter, IedClientError err, ClientDataSet dataSet) |
typedef void(* IedConnection_WriteDataSetHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList accessResults) |
Callback handler for asynchronous write data set values services (set data set)
invokeId | the invoke ID of the service request |
parameter | used provided parameter |
err | the error code if an error occurs |
accessResults | the list of access results for the data set entries. |
LIB61850_API void ClientDataSet_destroy | ( | ClientDataSet | self | ) |
destroy an ClientDataSet instance. Has to be called by the application.
Note: A ClientDataSet cannot be created directly by the application but only by the IedConnection_readDataSetValues function. Therefore there is no public ClientDataSet_create function.
self | the ClientDataSet instance |
LIB61850_API int ClientDataSet_getDataSetSize | ( | ClientDataSet | self | ) |
get the size of the data set (number of members)
self | the ClientDataSet instance |
LIB61850_API char* ClientDataSet_getReference | ( | ClientDataSet | self | ) |
Get the object reference of the data set.
self | the ClientDataSet instance |
LIB61850_API MmsValue* ClientDataSet_getValues | ( | ClientDataSet | self | ) |
get the data set values locally stored in the ClientDataSet instance.
This function returns a pointer to the locally stored MmsValue instance of this ClientDataSet instance. The MmsValue instance is of type MMS_ARRAY and contains one array element for each data set member. Note: This call does not invoke any interaction with the associated server. It will only provide access to already stored value. To update the values with the current values of the server the IecConnection_readDataSetValues function has to be called!
self | the ClientDataSet instance |
LIB61850_API void IedConnection_createDataSet | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
LinkedList | dataSetElements | ||
) |
create a new data set at the connected server device
This function creates a new data set at the server. The parameter dataSetReference is the name of the new data set to create. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope.
The dataSetElements parameter contains a linked list containing the object references of FCDs or FCDAs. The format of this object references is LDName/LNodeName.item(arrayIndex)component[FC].
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
dataSetElements | a list of object references defining the members of the new data set |
LIB61850_API uint32_t IedConnection_createDataSetAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
LinkedList | dataSetElements, | ||
IedConnection_GenericServiceHandler | handler, | ||
void * | parameter | ||
) |
create a new data set at the connected server device
This function creates a new data set at the server. The parameter dataSetReference is the name of the new data set to create. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope.
The dataSetElements parameter contains a linked list containing the object references of FCDs or FCDAs. The format of this object references is LDName/LNodeName.item(arrayIndex)component[FC].
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
dataSetElements | a list of object references defining the members of the new data set |
handler | the callback handler that is called when the response is received or timeout |
parameter | user provided parameter that is passed to the callback handler |
LIB61850_API bool IedConnection_deleteDataSet | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference | ||
) |
delete a deletable data set at the connected server device
This function deletes a data set at the server. The parameter dataSetReference is the name of the data set to delete. It is either in the form LDName/LNodeName.dataSetName or @dataSetName for an association specific data set.
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
LIB61850_API uint32_t IedConnection_deleteDataSetAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
IedConnection_GenericServiceHandler | handler, | ||
void * | parameter | ||
) |
delete a deletable data set at the connected server device - asynchronous version
This function deletes a data set at the server. The parameter dataSetReference is the name of the data set to delete. It is either in the form LDName/LNodeName.dataSetName or @dataSetName for an association specific data set.
The data set was deleted successfully when the callback parameter "error" is IED_ERROR_OK. Otherwise the "error" parameter contains a particular error code.
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
handler | the callback handler that is called when the response is received or timeout |
parameter | user provided parameter that is passed to the callback handler |
LIB61850_API LinkedList IedConnection_getDataSetDirectory | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
bool * | isDeletable | ||
) |
read the data set directory
The return value contains a linked list containing the object references of FCDs or FCDAs. The format of this object references is LDName/LNodeName.item(arrayIndex)component[FC].
connection | the connection object | |
[out] | error | the error code if an error occurs |
dataSetReference | object reference of the data set | |
[out] | isDeletable | this is an output parameter indicating that the requested data set is deletable by clients. If this information is not required a NULL pointer can be used. |
LIB61850_API uint32_t IedConnection_getDataSetDirectoryAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
IedConnection_GetDataSetDirectoryHandler | handler, | ||
void * | parameter | ||
) |
read the data set directory - asynchronous version
The result data is a linked list containing the object references of FCDs or FCDAs. The format of this object references is LDName/LNodeName.item(arrayIndex)component[FC].
connection | the connection object | |
[out] | error | the error code if an error occurs |
dataSetReference | object reference of the data set | |
handler | the callback handler that is called when the response is received or timeout | |
parameter | user provided parameter that is passed to the callback handler |
LIB61850_API ClientDataSet IedConnection_readDataSetValues | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
ClientDataSet | dataSet | ||
) |
get data set values from the server
The parameter dataSetReference is the name of the data set to read. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope. The received data set values are stored in a container object of type ClientDataSet that can be reused in a further read request.
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
dataSet | a data set instance where to store the retrieved values or NULL if a new instance shall be created. |
LIB61850_API uint32_t IedConnection_readDataSetValuesAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
ClientDataSet | dataSet, | ||
IedConnection_ReadDataSetHandler | handler, | ||
void * | parameter | ||
) |
get data set values from the server - async version
The parameter dataSetReference is the name of the data set to read. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope. The received data set values are stored in a container object of type ClientDataSet that can be reused in a further service request.
connection | the connection object |
error | the error code if an error occurs |
dataSetReference | object reference of the data set |
dataSet | a data set instance where to store the retrieved values or NULL if a new instance shall be created. |
handler | the user provided callback handler |
parameter | user provided parameter that is passed to the callback handler |
LIB61850_API void IedConnection_writeDataSetValues | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
LinkedList | values, | ||
LinkedList * | accessResults | ||
) |
Write the data set values to the server.
The parameter dataSetReference is the name of the data set to write. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope. The values parameter has to be the same number of elements as are members in the data set. The accessResult return parameter contains a value for each data set member.
connection | the connection object | |
[out] | error | the error code if an error occurs |
dataSetReference | object reference of the data set | |
values | the new data set values | |
[out] | accessResults | the access results for each data set member |
LIB61850_API uint32_t IedConnection_writeDataSetValuesAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataSetReference, | ||
LinkedList | values, | ||
IedConnection_WriteDataSetHandler | handler, | ||
void * | parameter | ||
) |
Write the data set values to the server - async version.
The parameter dataSetReference is the name of the data set to write. It is either in the form LDName/LNodeName.dataSetName for permanent domain or VMD scope data sets or @dataSetName for an association specific data set. If the LDName part of the reference is missing the resulting data set will be of VMD scope. The values parameter has to be the same number of elements as are members in the data set.
When the service call had been successful the IedConnection_WriteDataSetHandler is called with an error value of IED_ERROR_OK and a list of MmsValue instances of type data access error. These describe the access results of the individual data set entries.
connection | the connection object | |
[out] | error | the error code if an error occurs |
dataSetReference | object reference of the data set | |
values | the new data set values | |
handler | the user provided callback handler | |
parameter | user provided parameter that is passed to the callback handler |