libiec61850.NET  1.5.1
IEC 61850 .NET API for libiec61850 protocol library
IEC61850.Client.ReportControlBlock Class Reference

Report control block (RCB) representation. More...

Inheritance diagram for IEC61850.Client.ReportControlBlock:
Collaboration diagram for IEC61850.Client.ReportControlBlock:

Public Member Functions

void Dispose ()
 Releases all resource used by the IEC61850.Client.ReportControlBlock object. More...
 
string GetObjectReference ()
 
void InstallReportHandler (ReportHandler reportHandler, object parameter)
 Installs the report handler. More...
 
void GetRCBValues ()
 Read all RCB values from the server More...
 
UInt32 GetRCBValuesAsync (GetRCBValuesHandler handler, object parameter)
 Read all RCB values from the server - asynchronous version More...
 
void SetRCBValues ()
 Write changed RCB values to the server. More...
 
UInt32 SetRCBValuesAsync (SetRCBValuesHandler handler, object parameter)
 
UInt32 SetRCBValuesAsync (bool singleRequest, SetRCBValuesHandler handler, object parameter)
 
void SetRCBValues (bool singleRequest)
 Write changed RCB values to the server. More...
 
bool IsBuffered ()
 Determines whether this instance is a buffered or unbuffered RCB. More...
 
UInt64 GetEntryTime ()
 Gets the entry time of the RCB as ms time More...
 
DateTimeOffset GetEntryTimeAsDateTimeOffset ()
 Gets the entry time of the RCB as DateTimeOffset More...
 
byte [] GetEntryID ()
 Gets the entryID of RCB More...
 
void SetEntryID (byte[] entryId)
 
string GetDataSetReference ()
 Gets the data set reference of the associated data set More...
 
void SetDataSetReference (string dataSetReference)
 Sets the data set reference. Use this method to select the associated data set for the RCB More...
 
string GetRptId ()
 Gets the report identifier. More...
 
void SetRptId (string rptId)
 Sets the RptId (report ID) of the RCB More...
 
bool GetRptEna ()
 Check if reporting is currently enabled More...
 
void SetRptEna (bool rptEna)
 Sets report enable flag. Use this to enable reporting More...
 
bool GetPurgeBuf ()
 Get the purgeBuf flag of the report control block More...
 
void SetPurgeBuf (bool purgeBuf)
 Set the purgeBuf flag of the report control block More...
 
UInt32 GetBufTm ()
 Gets the buffer time. More...
 
void SetBufTm (UInt32 bufTm)
 Sets the buffer time. More...
 
bool GetGI ()
 Gets the GI flag More...
 
void SetGI (bool GI)
 Sets the GI flag. Use this to trigger a GI (general interrogation) command. More...
 
bool GetResv ()
 Check if RCB is reserved by a client More...
 
UInt32 GetConfRev ()
 Gets the configuration revision of the RCB More...
 
void SetResv (bool resv)
 Sets RESV flag. Use this to reserve (allocate) this RCB. More...
 
TriggerOptions GetTrgOps ()
 Gets the trigger options of the RCB More...
 
void SetTrgOps (TriggerOptions trgOps)
 Sets the trigger options of the RCB. More...
 
UInt32 GetIntgPd ()
 Gets the integrity period More...
 
void SetIntgPd (UInt32 intgPd)
 Sets the integrity period More...
 
ReportOptions GetOptFlds ()
 Gets the option fields. More...
 
void SetOptFlds (ReportOptions optFlds)
 Sets the option field. Used to enable or disable optional report elements More...
 
bool HasResvTms ()
 Check if the report control block has the "ResvTms" attribute. More...
 
Int16 GetResvTms ()
 Gets the ResvTms (reservation time) value More...
 
void SetResvTms (Int16 resvTms)
 Sets the ResvTms (reservation time) value More...
 
byte [] GetOwner ()
 Gets the current owner of the RCB More...
 

Detailed Description

Report control block (RCB) representation.

This class is used as a client side representation (copy) of a report control block (RCB). Values from the server will only be read when the GetRCBValues method is called. Values at the server are only affected when the SetRCBValues method is called.

Member Function Documentation

◆ Dispose()

void IEC61850.Client.ReportControlBlock.Dispose ( )

Releases all resource used by the IEC61850.Client.ReportControlBlock object.

Call Dispose when you are finished using the IEC61850.Client.ReportControlBlock. The Dispose method leaves the IEC61850.Client.ReportControlBlock in an unusable state. After calling Dispose, you must release all references to the IEC61850.Client.ReportControlBlock so the garbage collector can reclaim the memory that the IEC61850.Client.ReportControlBlock was occupying.

◆ GetBufTm()

UInt32 IEC61850.Client.ReportControlBlock.GetBufTm ( )

Gets the buffer time.

Returns
The buffer time in ms.

◆ GetConfRev()

UInt32 IEC61850.Client.ReportControlBlock.GetConfRev ( )

Gets the configuration revision of the RCB

Returns
The conf rev.

◆ GetDataSetReference()

string IEC61850.Client.ReportControlBlock.GetDataSetReference ( )

Gets the data set reference of the associated data set

Returns
The data set reference.

◆ GetEntryID()

byte [] IEC61850.Client.ReportControlBlock.GetEntryID ( )

Gets the entryID of RCB

Returns the EntryID of the last received GetRCBValues service response. The EntryID is only present in buffered RCBs (BRCBs).

Returns
The entry ID

◆ GetEntryTime()

UInt64 IEC61850.Client.ReportControlBlock.GetEntryTime ( )

Gets the entry time of the RCB as ms time

The entry time is the timestamp of the last report sent.

Returns
The entry time as ms timestamp

◆ GetEntryTimeAsDateTimeOffset()

DateTimeOffset IEC61850.Client.ReportControlBlock.GetEntryTimeAsDateTimeOffset ( )

Gets the entry time of the RCB as DateTimeOffset

The entry time is the timestamp of the last report sent.

Returns
The entry time as DataTimeOffset

◆ GetGI()

bool IEC61850.Client.ReportControlBlock.GetGI ( )

Gets the GI flag

Returns
true, if GI flag is set

◆ GetIntgPd()

UInt32 IEC61850.Client.ReportControlBlock.GetIntgPd ( )

Gets the integrity period

Returns
integrity period in ms

◆ GetOptFlds()

ReportOptions IEC61850.Client.ReportControlBlock.GetOptFlds ( )

Gets the option fields.

Returns
The option fields

◆ GetOwner()

byte [] IEC61850.Client.ReportControlBlock.GetOwner ( )

Gets the current owner of the RCB

Returns
The owner information, or null when no owner information is available.

◆ GetPurgeBuf()

bool IEC61850.Client.ReportControlBlock.GetPurgeBuf ( )

Get the purgeBuf flag of the report control block

Returns
the prugeBuf value

◆ GetRCBValues()

void IEC61850.Client.ReportControlBlock.GetRCBValues ( )

Read all RCB values from the server

Exceptions
IedConnectionExceptionThis exception is thrown if there is a connection or service error

◆ GetRCBValuesAsync()

UInt32 IEC61850.Client.ReportControlBlock.GetRCBValuesAsync ( GetRCBValuesHandler  handler,
object  parameter 
)

Read all RCB values from the server - asynchronous version

Returns
the invoke ID of the request
Parameters
handleruser provided callback function
parameteruser provided callback parameter
Exceptions
IedConnectionExceptionThis exception is thrown if there is a connection or service error

◆ GetResv()

bool IEC61850.Client.ReportControlBlock.GetResv ( )

Check if RCB is reserved by a client

Returns
true, the RCB is reserver by a client

◆ GetResvTms()

Int16 IEC61850.Client.ReportControlBlock.GetResvTms ( )

Gets the ResvTms (reservation time) value

Only for BRCB. Value of -1 indicate the BRCB is exclusively reserved for a set of client based upon configuration. Value of 0 means that the BRCB is not reserved. Positive value indicates that the BRCB is reserved dynamically and the value is the number of seconds for reservation after association loss.

Returns
The reservation time

◆ GetRptEna()

bool IEC61850.Client.ReportControlBlock.GetRptEna ( )

Check if reporting is currently enabled

Returns
true, if reporting is enabled, false otherwise

◆ GetRptId()

string IEC61850.Client.ReportControlBlock.GetRptId ( )

Gets the report identifier.

Returns
The report identifier.

◆ GetTrgOps()

TriggerOptions IEC61850.Client.ReportControlBlock.GetTrgOps ( )

Gets the trigger options of the RCB

Returns
trigger options

◆ HasResvTms()

bool IEC61850.Client.ReportControlBlock.HasResvTms ( )

Check if the report control block has the "ResvTms" attribute.

Returns
true, if ResvTms is available, false otherwise.

◆ InstallReportHandler()

void IEC61850.Client.ReportControlBlock.InstallReportHandler ( ReportHandler  reportHandler,
object  parameter 
)

Installs the report handler.

This will install a callback handler (delegate) that is invoked whenever a report related to this RCB is received. Any call of this method will replace an previously registered handler!

Parameters
reportHandlerreport handler
parameterparameter is passed to the handler when the handler is invoked.

◆ IsBuffered()

bool IEC61850.Client.ReportControlBlock.IsBuffered ( )

Determines whether this instance is a buffered or unbuffered RCB.

Returns
true if this instance is a buffered RCB; otherwise, false.

◆ SetBufTm()

void IEC61850.Client.ReportControlBlock.SetBufTm ( UInt32  bufTm)

Sets the buffer time.

Parameters
bufTmBuffer time is ms.

◆ SetDataSetReference()

void IEC61850.Client.ReportControlBlock.SetDataSetReference ( string  dataSetReference)

Sets the data set reference. Use this method to select the associated data set for the RCB

Returns
The data set reference.

◆ SetGI()

void IEC61850.Client.ReportControlBlock.SetGI ( bool  GI)

Sets the GI flag. Use this to trigger a GI (general interrogation) command.

Parameters
GIrequest general interrogation of true

◆ SetIntgPd()

void IEC61850.Client.ReportControlBlock.SetIntgPd ( UInt32  intgPd)

Sets the integrity period

Parameters
intgPdintegrity period in ms

◆ SetOptFlds()

void IEC61850.Client.ReportControlBlock.SetOptFlds ( ReportOptions  optFlds)

Sets the option field. Used to enable or disable optional report elements

Parameters
optFldsOption field.

◆ SetPurgeBuf()

void IEC61850.Client.ReportControlBlock.SetPurgeBuf ( bool  purgeBuf)

Set the purgeBuf flag of the report control block

This is only for buffered RCBs. If set to true the report buffer of a buffered RCB will be cleaned.

Parameters
purgeBufset to true to flush report buffer

◆ SetRCBValues() [1/2]

void IEC61850.Client.ReportControlBlock.SetRCBValues ( )

Write changed RCB values to the server.

This function will only write the RCB values that were set by one of the setter methods. The RCB values are sent by a single MMS write request.

Exceptions
IedConnectionExceptionThis exception is thrown if there is a connection or service error

◆ SetRCBValues() [2/2]

void IEC61850.Client.ReportControlBlock.SetRCBValues ( bool  singleRequest)

Write changed RCB values to the server.

This function will only write the RCB values that were set by one of the setter methods.

Exceptions
IedConnectionExceptionThis exception is thrown if there is a connection or service error
Parameters
singleRequestIf true the values are sent by single MMS write request. Otherwise the values are all sent by their own MMS write requests.

◆ SetResv()

void IEC61850.Client.ReportControlBlock.SetResv ( bool  resv)

Sets RESV flag. Use this to reserve (allocate) this RCB.

Parameters
resvtrue: reserver this RCB for exclusive use

◆ SetResvTms()

void IEC61850.Client.ReportControlBlock.SetResvTms ( Int16  resvTms)

Sets the ResvTms (reservation time) value

Parameters
resvTmsthe reservation time value

◆ SetRptEna()

void IEC61850.Client.ReportControlBlock.SetRptEna ( bool  rptEna)

Sets report enable flag. Use this to enable reporting

Parameters
rptEnatrue to enable reporting, false to disable

◆ SetRptId()

void IEC61850.Client.ReportControlBlock.SetRptId ( string  rptId)

Sets the RptId (report ID) of the RCB

Parameters
rptIdThe new RptId

◆ SetTrgOps()

void IEC61850.Client.ReportControlBlock.SetTrgOps ( TriggerOptions  trgOps)

Sets the trigger options of the RCB.

Parameters
trgOpstrigger options

The documentation for this class was generated from the following file: