libiec61850
1.6.0
|
Typedefs | |
typedef void(* | IedConnection_GetNameListHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList nameList, bool moreFollows) |
typedef void(* | IedConnection_GetVariableSpecificationHandler) (uint32_t invokeId, void *parameter, IedClientError err, MmsVariableSpecification *spec) |
Functions | |
LIB61850_API void | IedConnection_getDeviceModelFromServer (IedConnection self, IedClientError *error) |
Retrieve the device model from the server. More... | |
LIB61850_API LinkedList | IedConnection_getLogicalDeviceList (IedConnection self, IedClientError *error) |
Get the list of logical devices available at the server (DEPRECATED) More... | |
LIB61850_API LinkedList | IedConnection_getServerDirectory (IedConnection self, IedClientError *error, bool getFileNames) |
Get the list of logical devices or files available at the server. More... | |
LIB61850_API LinkedList | IedConnection_getLogicalDeviceDirectory (IedConnection self, IedClientError *error, const char *logicalDeviceName) |
Get the list of logical nodes (LN) of a logical device. More... | |
LIB61850_API LinkedList | IedConnection_getLogicalNodeVariables (IedConnection self, IedClientError *error, const char *logicalNodeReference) |
returns a list of all MMS variables that are children of the given logical node More... | |
LIB61850_API LinkedList | IedConnection_getLogicalNodeDirectory (IedConnection self, IedClientError *error, const char *logicalNodeReference, ACSIClass acsiClass) |
returns the directory of the given logical node (LN) containing elements of the specified ACSI class More... | |
LIB61850_API LinkedList | IedConnection_getDataDirectory (IedConnection self, IedClientError *error, const char *dataReference) |
returns the directory of the given data object (DO) More... | |
LIB61850_API LinkedList | IedConnection_getDataDirectoryFC (IedConnection self, IedClientError *error, const char *dataReference) |
returns the directory of the given data object (DO) More... | |
LIB61850_API LinkedList | IedConnection_getDataDirectoryByFC (IedConnection self, IedClientError *error, const char *dataReference, FunctionalConstraint fc) |
returns the directory of the given data object/data attribute with the given FC More... | |
LIB61850_API MmsVariableSpecification * | IedConnection_getVariableSpecification (IedConnection self, IedClientError *error, const char *dataAttributeReference, FunctionalConstraint fc) |
return the MMS variable type specification of the data attribute referenced by dataAttributeReference and function constraint fc. More... | |
LIB61850_API LinkedList | IedConnection_getLogicalDeviceVariables (IedConnection self, IedClientError *error, const char *ldName) |
Get all variables of the logical device. More... | |
LIB61850_API LinkedList | IedConnection_getLogicalDeviceDataSets (IedConnection self, IedClientError *error, const char *ldName) |
Get the data set names of the logical device. More... | |
LIB61850_API uint32_t | IedConnection_getServerDirectoryAsync (IedConnection self, IedClientError *error, const char *continueAfter, LinkedList result, IedConnection_GetNameListHandler handler, void *parameter) |
Get the server directory (logical devices name) - asynchronous version. More... | |
LIB61850_API uint32_t | IedConnection_getLogicalDeviceVariablesAsync (IedConnection self, IedClientError *error, const char *ldName, const char *continueAfter, LinkedList result, IedConnection_GetNameListHandler handler, void *parameter) |
Get the variables in the logical device - asynchronous version. More... | |
LIB61850_API uint32_t | IedConnection_getLogicalDeviceDataSetsAsync (IedConnection self, IedClientError *error, const char *ldName, const char *continueAfter, LinkedList result, IedConnection_GetNameListHandler handler, void *parameter) |
Get the data set names in the logical device - asynchronous version. More... | |
LIB61850_API uint32_t | IedConnection_getVariableSpecificationAsync (IedConnection self, IedClientError *error, const char *dataAttributeReference, FunctionalConstraint fc, IedConnection_GetVariableSpecificationHandler handler, void *parameter) |
Get the specification of a variable (data attribute or functional constraint data object) - asynchronous version. More... | |
typedef void(* IedConnection_GetNameListHandler) (uint32_t invokeId, void *parameter, IedClientError err, LinkedList nameList, bool moreFollows) |
typedef void(* IedConnection_GetVariableSpecificationHandler) (uint32_t invokeId, void *parameter, IedClientError err, MmsVariableSpecification *spec) |
LIB61850_API LinkedList IedConnection_getDataDirectory | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataReference | ||
) |
returns the directory of the given data object (DO)
Implementation of the GetDataDirectory ACSI service. This will return the list of all data attributes or sub data objects.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
dataReference | string that represents the DO reference |
LIB61850_API LinkedList IedConnection_getDataDirectoryByFC | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataReference, | ||
FunctionalConstraint | fc | ||
) |
returns the directory of the given data object/data attribute with the given FC
Implementation of the GetDataDirectory ACSI service. This will return the list of C strings with all data attributes or sub data objects as elements.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
WARNING: Starting with version 1.0.3 the functional constraint will no longer be appended to the name string.
self | the connection object |
error | the error code if an error occurs |
dataReference | string that represents the DO reference |
fc | the functional constraint |
LIB61850_API LinkedList IedConnection_getDataDirectoryFC | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataReference | ||
) |
returns the directory of the given data object (DO)
Implementation of the GetDataDirectory ACSI service. This will return the list of C strings with all data attributes or sub data objects as elements. The returned strings will contain the functional constraint appended in square brackets when appropriate.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
dataReference | string that represents the DO reference |
LIB61850_API void IedConnection_getDeviceModelFromServer | ( | IedConnection | self, |
IedClientError * | error | ||
) |
Retrieve the device model from the server.
This function retrieves the complete device model from the server. The model is buffered an can be browsed by subsequent API calls. This API call is mapped to multiple ACSI services.
self | the connection object |
error | the error code if an error occurs |
LIB61850_API LinkedList IedConnection_getLogicalDeviceDataSets | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | ldName | ||
) |
Get the data set names of the logical device.
NOTE: This function will return all data set names (MMS named variable lists) of the logical device (MMS domain). The result will be in the MMS notation (like "LLN0$dataset1").
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | ldName | the logical device name |
LIB61850_API uint32_t IedConnection_getLogicalDeviceDataSetsAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | ldName, | ||
const char * | continueAfter, | ||
LinkedList | result, | ||
IedConnection_GetNameListHandler | handler, | ||
void * | parameter | ||
) |
Get the data set names in the logical device - asynchronous version.
NOTE: This function will return all data set names (MMS named variable lists) of the logical device (MMS domain). The result will be in the MMS notation (like "LLN0$dataset1").
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | ldName | the logical device name |
[in] | continueAfter | the name of the last received element when the call is a continuation, or NULL for the first call |
[in] | result | list to store (append) the response names, or NULL to create a new list for the response names |
[in] | handler | will be called when response is received or timed out. |
[in] | parameter |
LIB61850_API LinkedList IedConnection_getLogicalDeviceDirectory | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | logicalDeviceName | ||
) |
Get the list of logical nodes (LN) of a logical device.
GetLogicalDeviceDirectory ACSI service implementation. Returns the list of logical nodes names present in a logical device. The list is returned as a linked list of type LinkedList with c style string elements.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
logicalDeviceName | the name of the logical device (LD) of interest |
LIB61850_API LinkedList IedConnection_getLogicalDeviceList | ( | IedConnection | self, |
IedClientError * | error | ||
) |
Get the list of logical devices available at the server (DEPRECATED)
This function is mapped to the GetServerDirectory(LD) ACSI service.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
LIB61850_API LinkedList IedConnection_getLogicalDeviceVariables | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | ldName | ||
) |
Get all variables of the logical device.
NOTE: This function will return all MMS variables of the logical device (MMS domain). The result will be in the MMS notation (like "GGIO1$ST$Ind1$stVal") and also contain the variables of control blocks.
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | ldName | the logical device name |
LIB61850_API uint32_t IedConnection_getLogicalDeviceVariablesAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | ldName, | ||
const char * | continueAfter, | ||
LinkedList | result, | ||
IedConnection_GetNameListHandler | handler, | ||
void * | parameter | ||
) |
Get the variables in the logical device - asynchronous version.
NOTE: This function will return all MMS variables of the logical device (MMS domain). The result will be in the MMS notation (like "GGIO1$ST$Ind1$stVal") and also contain the variables of control blocks.
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | ldName | the logical device name |
[in] | continueAfter | the name of the last received element when the call is a continuation, or NULL for the first call |
[in] | result | list to store (append) the response names, or NULL to create a new list for the response names |
[in] | handler | will be called when response is received or timed out. |
[in] | parameter |
LIB61850_API LinkedList IedConnection_getLogicalNodeDirectory | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | logicalNodeReference, | ||
ACSIClass | acsiClass | ||
) |
returns the directory of the given logical node (LN) containing elements of the specified ACSI class
Implementation of the GetLogicalNodeDirectory ACSI service. In contrast to the ACSI description this function does not always creates a request to the server. For most ACSI classes it simply accesses the data model that was retrieved before or calls IedConnection_getDeviceModelFromServer if no buffered data model information is available. An exception to this rule are the ACSI classes ACSI_CLASS_DATASET and ACSI_CLASS_LOG. Both always perform a request to the server.
self | the connection object |
error | the error code if an error occurs |
logicalNodeReference | string that represents the LN reference |
acsiClass | specifies the ACSI class |
LIB61850_API LinkedList IedConnection_getLogicalNodeVariables | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | logicalNodeReference | ||
) |
returns a list of all MMS variables that are children of the given logical node
This function cannot be mapped to any ACSI service. It is a convenience function for generic clients that wants to show a list of all available children of the MMS named variable representing the logical node.
NOTE: This function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
logicalNodeReference | string that represents the LN reference |
LIB61850_API LinkedList IedConnection_getServerDirectory | ( | IedConnection | self, |
IedClientError * | error, | ||
bool | getFileNames | ||
) |
Get the list of logical devices or files available at the server.
GetServerDirectory ACSI service implementation. This function will either return the list of logical devices (LD) present at the server or the list of available files.
NOTE: When getFIleNames is false zhis function will call IedConnection_getDeviceModelFromServer if no buffered data model information is available. Otherwise it will use the buffered information.
self | the connection object |
error | the error code if an error occurs |
getFileNames | get list of files instead of logical device names (TO BE IMPLEMENTED) |
LIB61850_API uint32_t IedConnection_getServerDirectoryAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | continueAfter, | ||
LinkedList | result, | ||
IedConnection_GetNameListHandler | handler, | ||
void * | parameter | ||
) |
Get the server directory (logical devices name) - asynchronous version.
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | continueAfter | the name of the last received element when the call is a continuation, or NULL for the first call |
[in] | result | list to store (append) the response names, or NULL to create a new list for the response names |
[in] | handler | will be called when response is received or timed out. |
[in] | parameter |
LIB61850_API MmsVariableSpecification* IedConnection_getVariableSpecification | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataAttributeReference, | ||
FunctionalConstraint | fc | ||
) |
return the MMS variable type specification of the data attribute referenced by dataAttributeReference and function constraint fc.
This function can be used to get the MMS variable type specification for an IEC 61850 data attribute. It is an extension of the ACSI that may be required by generic client applications.
NOTE: API user is responsible to free the resources (see MmsVariableSpecification_destroy)
self | the connection object |
error | the error code if an error occurs |
dataAttributeReference | string that represents the DA reference |
fc | functional constraint of the DA |
LIB61850_API uint32_t IedConnection_getVariableSpecificationAsync | ( | IedConnection | self, |
IedClientError * | error, | ||
const char * | dataAttributeReference, | ||
FunctionalConstraint | fc, | ||
IedConnection_GetVariableSpecificationHandler | handler, | ||
void * | parameter | ||
) |
Get the specification of a variable (data attribute or functional constraint data object) - asynchronous version.
[in] | self | the connection object |
[out] | error | the error code if an error occurs |
[in] | dataAttributeReference | the data attribute reference (FCDA or FCDO) |
[in] | handler | will be called when response is received or timed out. |
[in] | parameter |