libiec61850  1.6.0
Macros | Typedefs | Functions
Client side SV control block handling functions

Macros

#define IEC61850_SV_OPT_REFRESH_TIME   1
 
#define IEC61850_SV_OPT_SAMPLE_SYNC   2
 
#define IEC61850_SV_OPT_SAMPLE_RATE   4
 
#define IEC61850_SV_OPT_DATA_SET   8
 
#define IEC61850_SV_OPT_SECURITY   16
 
#define IEC61850_SV_SMPMOD_SAMPLES_PER_PERIOD   0
 
#define IEC61850_SV_SMPMOD_SAMPLES_PER_SECOND   1
 
#define IEC61850_SV_SMPMOD_SECONDS_PER_SAMPLE   2
 

Typedefs

typedef struct sClientSVControlBlock * ClientSVControlBlock
 

Functions

LIB61850_API ClientSVControlBlock ClientSVControlBlock_create (IedConnection connection, const char *reference)
 Create a new ClientSVControlBlock instance. More...
 
LIB61850_API void ClientSVControlBlock_destroy (ClientSVControlBlock self)
 Free all resources related to the ClientSVControlBlock instance. More...
 
LIB61850_API bool ClientSVControlBlock_isMulticast (ClientSVControlBlock self)
 Test if this SVCB is multicast. More...
 
LIB61850_API IedClientError ClientSVControlBlock_getLastComError (ClientSVControlBlock self)
 Return the error code of the last write or write acccess to the SVCB. More...
 
LIB61850_API bool ClientSVControlBlock_setSvEna (ClientSVControlBlock self, bool value)
 
LIB61850_API bool ClientSVControlBlock_getSvEna (ClientSVControlBlock self)
 
LIB61850_API bool ClientSVControlBlock_setResv (ClientSVControlBlock self, bool value)
 
LIB61850_API bool ClientSVControlBlock_getResv (ClientSVControlBlock self)
 
LIB61850_API char * ClientSVControlBlock_getMsvID (ClientSVControlBlock self)
 
LIB61850_API char * ClientSVControlBlock_getDatSet (ClientSVControlBlock self)
 Get the (MMS) reference to the data set. More...
 
LIB61850_API uint32_t ClientSVControlBlock_getConfRev (ClientSVControlBlock self)
 
LIB61850_API uint16_t ClientSVControlBlock_getSmpRate (ClientSVControlBlock self)
 
LIB61850_API PhyComAddress ClientSVControlBlock_getDstAddress (ClientSVControlBlock self)
 returns the destination address of the SV publisher More...
 
LIB61850_API int ClientSVControlBlock_getOptFlds (ClientSVControlBlock self)
 Gets the OptFlds parameter of the RCB (decides what information to include in a report) More...
 
LIB61850_API uint8_t ClientSVControlBlock_getSmpMod (ClientSVControlBlock self)
 returns number of sample mode of the SV publisher More...
 
LIB61850_API int ClientSVControlBlock_getNoASDU (ClientSVControlBlock self)
 returns number of ASDUs included in the SV message More...
 

Detailed Description

Macro Definition Documentation

◆ IEC61850_SV_OPT_DATA_SET

#define IEC61850_SV_OPT_DATA_SET   8

SV ASDU contains attribute DatSet

◆ IEC61850_SV_OPT_REFRESH_TIME

#define IEC61850_SV_OPT_REFRESH_TIME   1

SV ASDU contains attribute RefrTm

◆ IEC61850_SV_OPT_SAMPLE_RATE

#define IEC61850_SV_OPT_SAMPLE_RATE   4

SV ASDU contains attribute SmpRate

◆ IEC61850_SV_OPT_SAMPLE_SYNC

#define IEC61850_SV_OPT_SAMPLE_SYNC   2

SV ASDU contains attribute SmpSynch

◆ IEC61850_SV_OPT_SECURITY

#define IEC61850_SV_OPT_SECURITY   16

SV ASDU contains attribute Security

◆ IEC61850_SV_SMPMOD_SAMPLES_PER_PERIOD

#define IEC61850_SV_SMPMOD_SAMPLES_PER_PERIOD   0

◆ IEC61850_SV_SMPMOD_SAMPLES_PER_SECOND

#define IEC61850_SV_SMPMOD_SAMPLES_PER_SECOND   1

◆ IEC61850_SV_SMPMOD_SECONDS_PER_SAMPLE

#define IEC61850_SV_SMPMOD_SECONDS_PER_SAMPLE   2

Typedef Documentation

◆ ClientSVControlBlock

typedef struct sClientSVControlBlock* ClientSVControlBlock

an opaque handle to the instance data of a ClientSVControlBlock object

Function Documentation

◆ ClientSVControlBlock_create()

LIB61850_API ClientSVControlBlock ClientSVControlBlock_create ( IedConnection  connection,
const char *  reference 
)

Create a new ClientSVControlBlock instance.

This function simplifies client side access to server MSV/USV control blocks NOTE: Do not use the functions after the IedConnection object is invalidated!

The access functions cause synchronous read/write calls to the server. For asynchronous access use the IedConnection_readObjectAsync and IedConnection_writeObjectAsync functions.

Parameters
connectionthe IedConnection object with a valid connection to the server.
referencethe object reference of the control block
Returns
the new instance

◆ ClientSVControlBlock_destroy()

LIB61850_API void ClientSVControlBlock_destroy ( ClientSVControlBlock  self)

Free all resources related to the ClientSVControlBlock instance.

Parameters
selfthe ClientSVControlBlock instance to operate on

◆ ClientSVControlBlock_getConfRev()

LIB61850_API uint32_t ClientSVControlBlock_getConfRev ( ClientSVControlBlock  self)

◆ ClientSVControlBlock_getDatSet()

LIB61850_API char* ClientSVControlBlock_getDatSet ( ClientSVControlBlock  self)

Get the (MMS) reference to the data set.

NOTE: the returned string is dynamically allocated with the GLOBAL_MALLOC macro. The application is responsible to release the memory when the string is no longer needed.

Parameters
selfthe ClientSVControlBlock instance to operate on
Returns
the data set reference as a NULL terminated string

◆ ClientSVControlBlock_getDstAddress()

LIB61850_API PhyComAddress ClientSVControlBlock_getDstAddress ( ClientSVControlBlock  self)

returns the destination address of the SV publisher

Parameters
selfthe ClientSVControlBlock instance to operate on

◆ ClientSVControlBlock_getLastComError()

LIB61850_API IedClientError ClientSVControlBlock_getLastComError ( ClientSVControlBlock  self)

Return the error code of the last write or write acccess to the SVCB.

Parameters
selfthe ClientSVControlBlock instance to operate on
Returns
the error code of the last read or write access

◆ ClientSVControlBlock_getMsvID()

LIB61850_API char* ClientSVControlBlock_getMsvID ( ClientSVControlBlock  self)

◆ ClientSVControlBlock_getNoASDU()

LIB61850_API int ClientSVControlBlock_getNoASDU ( ClientSVControlBlock  self)

returns number of ASDUs included in the SV message

Parameters
selfthe ClientSVControlBlock instance to operate on
Returns
the number of ASDU included in a single SV message

◆ ClientSVControlBlock_getOptFlds()

LIB61850_API int ClientSVControlBlock_getOptFlds ( ClientSVControlBlock  self)

Gets the OptFlds parameter of the RCB (decides what information to include in a report)

Parameters
selfthe RCB instance
Returns
bit field representing the optional fields of a report (uses flags from Report options (bit values combinable))

◆ ClientSVControlBlock_getResv()

LIB61850_API bool ClientSVControlBlock_getResv ( ClientSVControlBlock  self)

◆ ClientSVControlBlock_getSmpMod()

LIB61850_API uint8_t ClientSVControlBlock_getSmpMod ( ClientSVControlBlock  self)

returns number of sample mode of the SV publisher

Parameters
selfthe ClientSVControlBlock instance to operate on

◆ ClientSVControlBlock_getSmpRate()

LIB61850_API uint16_t ClientSVControlBlock_getSmpRate ( ClientSVControlBlock  self)

◆ ClientSVControlBlock_getSvEna()

LIB61850_API bool ClientSVControlBlock_getSvEna ( ClientSVControlBlock  self)

◆ ClientSVControlBlock_isMulticast()

LIB61850_API bool ClientSVControlBlock_isMulticast ( ClientSVControlBlock  self)

Test if this SVCB is multicast.

Parameters
selfthe ClientSVControlBlock instance to operate on
Returns
true if multicast SCVB, false otherwise (unicast)

◆ ClientSVControlBlock_setResv()

LIB61850_API bool ClientSVControlBlock_setResv ( ClientSVControlBlock  self,
bool  value 
)

◆ ClientSVControlBlock_setSvEna()

LIB61850_API bool ClientSVControlBlock_setSvEna ( ClientSVControlBlock  self,
bool  value 
)