void IGXDLMSBase.Load(GXXmlReader reader) { Time = reader.ReadElementContentAsDateTime("Time"); TimeZone = reader.ReadElementContentAsInt("TimeZone"); Status = (ClockStatus)reader.ReadElementContentAsInt("Status"); Begin = reader.ReadElementContentAsDateTime("Begin"); End = reader.ReadElementContentAsDateTime("End"); Deviation = reader.ReadElementContentAsInt("Deviation"); Enabled = reader.ReadElementContentAsInt("Enabled") != 0; ClockBase = (ClockBase)reader.ReadElementContentAsInt("ClockBase"); }
void IGXDLMSBase.Load(GXXmlReader reader) { Operator = reader.ReadElementContentAsString("Operator"); Status = (GsmStatus)reader.ReadElementContentAsInt("Status"); CircuitSwitchStatus = (GsmCircuitSwitchStatus)reader.ReadElementContentAsInt("CircuitSwitchStatus"); PacketSwitchStatus = (GsmPacketSwitchStatus)reader.ReadElementContentAsInt("PacketSwitchStatus"); if (reader.IsStartElement("CellInfo", true)) { CellInfo.CellId = (UInt16)reader.ReadElementContentAsInt("CellId"); CellInfo.LocationId = (UInt16)reader.ReadElementContentAsInt("LocationId"); CellInfo.SignalQuality = (byte)reader.ReadElementContentAsInt("SignalQuality"); CellInfo.Ber = (byte)reader.ReadElementContentAsInt("Ber"); reader.ReadEndElement("CellInfo"); } AdjacentCells.Clear(); if (reader.IsStartElement("AdjacentCells", true)) { while (reader.IsStartElement("Item", true)) { AdjacentCell it = new Objects.AdjacentCell(); it.CellId = (UInt32)reader.ReadElementContentAsInt("CellId"); it.SignalQuality = (byte)reader.ReadElementContentAsInt("SignalQuality"); AdjacentCells.Add(it); } reader.ReadEndElement("AdjacentCells"); } CaptureTime = reader.ReadElementContentAsDateTime("CaptureTime"); }
void IGXDLMSBase.Load(GXXmlReader reader) { if (reader.IsStartElement("MonitoredValue", true)) { ObjectType ot = (ObjectType)reader.ReadElementContentAsInt("ObjectType"); string ln = reader.ReadElementContentAsString("LN"); if (ot != ObjectType.None && ln != null) { MonitoredValue = reader.Objects.FindByLN(ot, ln); //If item is not serialized yet. if (MonitoredValue == null) { MonitoredValue = GXDLMSClient.CreateObject(ot); MonitoredValue.LogicalName = ln; } } reader.ReadEndElement("MonitoredValue"); } ThresholdActive = reader.ReadElementContentAsObject("ThresholdActive", null, this, 3); ThresholdNormal = reader.ReadElementContentAsObject("ThresholdNormal", null, this, 4); ThresholdEmergency = reader.ReadElementContentAsObject("ThresholdEmergency", null, this, 5); MinOverThresholdDuration = (UInt16)reader.ReadElementContentAsInt("MinOverThresholdDuration"); MinUnderThresholdDuration = (UInt16)reader.ReadElementContentAsInt("MinUnderThresholdDuration"); if (reader.IsStartElement("EmergencyProfile", true)) { EmergencyProfile.ID = (UInt16)reader.ReadElementContentAsInt("ID"); EmergencyProfile.ActivationTime = reader.ReadElementContentAsDateTime("Time"); EmergencyProfile.Duration = (UInt16)reader.ReadElementContentAsInt("Duration"); reader.ReadEndElement("EmergencyProfile"); } List <UInt16> list = new List <ushort>(); if (reader.IsStartElement("EmergencyProfileGroupIDs", true)) { while (reader.IsStartElement("Value", false)) { list.Add((UInt16)reader.ReadElementContentAsInt("Value")); } reader.ReadEndElement("EmergencyProfileGroupIDs"); } EmergencyProfileGroupIDs = list.ToArray(); EmergencyProfileActive = reader.ReadElementContentAsInt("Active") != 0; if (reader.IsStartElement("ActionOverThreshold", true)) { ActionOverThreshold.LogicalName = reader.ReadElementContentAsString("LN"); ActionOverThreshold.ScriptSelector = (UInt16)reader.ReadElementContentAsInt("ScriptSelector"); reader.ReadEndElement("ActionOverThreshold"); } if (reader.IsStartElement("ActionUnderThreshold", true)) { ActionUnderThreshold.LogicalName = reader.ReadElementContentAsString("LN"); ActionUnderThreshold.ScriptSelector = (UInt16)reader.ReadElementContentAsInt("ScriptSelector"); reader.ReadEndElement("ActionUnderThreshold"); } }
void IGXDLMSBase.Load(GXXmlReader reader) { PaymentMode = (PaymentMode)reader.ReadElementContentAsInt("PaymentMode"); AccountStatus = (AccountStatus)reader.ReadElementContentAsInt("AccountStatus"); CurrentCreditInUse = (byte)reader.ReadElementContentAsInt("CurrentCreditInUse"); CurrentCreditStatus = (AccountCreditStatus)reader.ReadElementContentAsInt("CurrentCreditStatus"); AvailableCredit = reader.ReadElementContentAsInt("AvailableCredit"); AmountToClear = reader.ReadElementContentAsInt("AmountToClear"); ClearanceThreshold = reader.ReadElementContentAsInt("ClearanceThreshold"); AggregatedDebt = reader.ReadElementContentAsInt("AggregatedDebt"); LoadReferences(reader, "CreditReferences", CreditReferences); LoadReferences(reader, "ChargeReferences", ChargeReferences); LoadCreditChargeConfigurations(reader, CreditChargeConfigurations); LoadTokenGatewayConfigurations(reader, TokenGatewayConfigurations); AccountActivationTime = reader.ReadElementContentAsDateTime("AccountActivationTime"); AccountClosureTime = reader.ReadElementContentAsDateTime("AccountClosureTime"); Currency.Name = reader.ReadElementContentAsString("CurrencyName"); Currency.Scale = (sbyte)reader.ReadElementContentAsInt("CurrencyScale"); Currency.Unit = (Currency)reader.ReadElementContentAsInt("CurrencyUnit"); LowCreditThreshold = reader.ReadElementContentAsInt("LowCreditThreshold"); NextCreditAvailableThreshold = reader.ReadElementContentAsInt("NextCreditAvailableThreshold"); MaxProvision = (UInt16)reader.ReadElementContentAsInt("MaxProvision"); MaxProvisionPeriod = reader.ReadElementContentAsInt("MaxProvisionPeriod"); }
void IGXDLMSBase.Load(GXXmlReader reader) { Unit = (Unit)reader.ReadElementContentAsInt("Unit", 0); Scaler = reader.ReadElementContentAsDouble("Scaler", 1); Value = reader.ReadElementContentAsObject("Value", null, this, 2); Status = reader.ReadElementContentAsObject("Status", null, this, 4); GXDateTime dt = reader.ReadElementContentAsDateTime("CaptureTime"); if (dt == null) { CaptureTime = DateTime.MinValue; } else { CaptureTime = dt.Value.ToLocalTime().LocalDateTime; } }