void IGXDLMSBase.Load(GXXmlReader reader) { ImageBlockSize = (UInt32)reader.ReadElementContentAsInt("ImageBlockSize"); ImageTransferredBlocksStatus = reader.ReadElementContentAsString("ImageTransferredBlocksStatus"); ImageFirstNotTransferredBlockNumber = reader.ReadElementContentAsLong("ImageFirstNotTransferredBlockNumber"); ImageTransferEnabled = reader.ReadElementContentAsInt("ImageTransferEnabled") != 0; ImageTransferStatus = (ImageTransferStatus)reader.ReadElementContentAsInt("ImageTransferStatus"); List <GXDLMSImageActivateInfo> list = new List <GXDLMSImageActivateInfo>(); if (reader.IsStartElement("ImageActivateInfo", true)) { while (reader.IsStartElement("Item", true)) { GXDLMSImageActivateInfo it = new GXDLMSImageActivateInfo(); it.Size = reader.ReadElementContentAsULong("Size"); it.Identification = GXCommon.HexToBytes(reader.ReadElementContentAsString("Identification")); it.Signature = GXCommon.HexToBytes(reader.ReadElementContentAsString("Signature")); list.Add(it); } reader.ReadEndElement("ImageActivateInfo"); } ImageActivateInfo = list.ToArray(); }
void IGXDLMSBase.Load(GXXmlReader reader) { TxDataPktCount = (UInt32)reader.ReadElementContentAsLong("TxDataPktCount"); RxDataPktCount = (UInt32)reader.ReadElementContentAsLong("RxDataPktCount"); TxCtrlPktCount = (UInt32)reader.ReadElementContentAsLong("TxCtrlPktCount"); RxCtrlPktCount = (UInt32)reader.ReadElementContentAsLong("RxCtrlPktCount"); CsmaFailCount = (UInt32)reader.ReadElementContentAsLong("CsmaFailCount"); CsmaChBusyCount = (UInt32)reader.ReadElementContentAsLong("CsmaChBusyCount"); }
void IGXDLMSBase.Load(GXXmlReader reader) { Buffer.Clear(); if (reader.IsStartElement("Buffer", true)) { while (reader.IsStartElement("Row", true)) { List <object> row = new List <object>(); while (reader.IsStartElement("Cell", false)) { row.Add(reader.ReadElementContentAsObject("Cell", null)); } Buffer.Add(row.ToArray()); } reader.ReadEndElement("Buffer"); } CaptureObjects.Clear(); if (reader.IsStartElement("CaptureObjects", true)) { while (reader.IsStartElement("Item", true)) { ObjectType ot = (ObjectType)reader.ReadElementContentAsInt("ObjectType"); string ln = reader.ReadElementContentAsString("LN"); int ai = reader.ReadElementContentAsInt("Attribute"); int di = reader.ReadElementContentAsInt("Data"); GXDLMSCaptureObject co = new GXDLMSCaptureObject(ai, di); GXDLMSObject obj = reader.Objects.FindByLN(ot, ln); if (obj == null) { obj = GXDLMSClient.CreateObject(ot); obj.LogicalName = ln; } CaptureObjects.Add(new GXKeyValuePair <GXDLMSObject, GXDLMSCaptureObject>(obj, co)); } reader.ReadEndElement("CaptureObjects"); } CapturePeriod = reader.ReadElementContentAsInt("CapturePeriod"); SortMethod = (SortMethod)reader.ReadElementContentAsInt("SortMethod"); if (reader.IsStartElement("SortObject", true)) { CapturePeriod = reader.ReadElementContentAsInt("CapturePeriod"); ObjectType ot = (ObjectType)reader.ReadElementContentAsInt("ObjectType"); string ln = reader.ReadElementContentAsString("LN"); SortObject = reader.Objects.FindByLN(ot, ln); reader.ReadEndElement("SortObject"); } EntriesInUse = reader.ReadElementContentAsInt("EntriesInUse"); ProfileEntries = (UInt32)reader.ReadElementContentAsLong("ProfileEntries"); }