/// <summary> /// Write changed RCB values to the server. /// </summary> /// <description> /// This function will only write the RCB values that were set by one of the setter methods. /// </description> /// <exception cref="IedConnectionException">This exception is thrown if there is a connection or service error</exception> /// <param name='singleRequest'> /// If true the values are sent by single MMS write request. Otherwise the values are all sent by their own MMS write requests. /// </param> public void SetRCBValues(bool singleRequest) { UInt32 parametersMask = CreateParametersMask(); bool flagRptId = this.flagRptId; int error; iedConnection.SetRCBValues(out error, self, parametersMask, singleRequest); resetSendFlags(); if (error != 0) { throw new IedConnectionException("setRCBValues service failed", error); } if (flagRptId) { if (reportHandlerInstalled) { reportHandlerInstalled = false; InstallReportHandler(this.reportHandler, this.reportHandlerParameter); } } }
/// <summary> /// Write changed RCB values to the server. /// </summary> /// <description> /// This function will only write the RCB values that were set by one of the setter methods. /// </description> /// <exception cref="IedConnectionException">This exception is thrown if there is a connection or service error</exception> /// <param name='singleRequest'> /// If true the values are sent by single MMS write request. Otherwise the values are all sent by their own MMS write requests. /// </param> public void SetRCBValues(bool singleRequest) { UInt32 parametersMask = 0; if (flagRptId) { parametersMask += 1; } if (flagRptEna) { parametersMask += 2; } if (flagResv) { parametersMask += 4; } if (flagDataSetReference) { parametersMask += 8; } if (flagConfRev) { parametersMask += 16; } if (flagOptFlds) { parametersMask += 32; } if (flagBufTm) { parametersMask += 64; } if (flagSqNum) { parametersMask += 128; } if (flagTrgOps) { parametersMask += 256; } if (flagIntgPd) { parametersMask += 512; } if (flagGI) { parametersMask += 1024; } if (flagPurgeBuf) { parametersMask += 2048; } if (flagEntryId) { parametersMask += 4096; } if (flagResvTms) { parametersMask += 16384; } int error; iedConnection.SetRCBValues(out error, self, parametersMask, singleRequest); resetSendFlags(); if (error != 0) { throw new IedConnectionException("setRCBValues service failed", error); } if (flagRptId) { if (reportHandlerInstalled) { reportHandlerInstalled = false; InstallReportHandler(this.reportHandler, this.reportHandlerParameter); } } }