You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libiec61850/tools/SCLParser/src/SclSettingControl.cs

126 lines
3.2 KiB
C#

/*
* Copyright 2013-2025 Michael Zillgith, MZ Automation GmbH
*
* This file is part of MZ Automation IEC 61850 SDK
*
* All rights reserved.
*/
using IEC61850.SCL.DataModel;
using System;
using System.Xml;
namespace IEC61850.SCL
{
public class SclSettingControl
{
public XmlNode xmlNode;
private XmlDocument xmlDocument;
public IEDModelNode Parent;
public SclSettingControl(SclDocument SclxmlDocument, XmlNode xmlNode)
{
this.xmlNode = xmlNode;
xmlDocument = SclxmlDocument.XmlDocument;
XmlAttribute nameAttr = xmlNode.Attributes["numOfSGs"];
if (nameAttr == null)
SclxmlDocument.AddIssue(xmlNode, "ERROR", "Model integrity", "SettingControl has no numOfSGs attribute", this, "numOfSGs");
}
public SclSettingControl(XmlDocument xmlDoc, string numOfSGs)
{
xmlDocument = xmlDoc;
xmlNode = xmlDoc.CreateElement("SettingControl", SclDocument.SCL_XMLNS);
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "numOfSGs", numOfSGs);
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "actSG", "1");
}
public string Desc
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "desc");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "desc", value);
}
}
public int NumOfSGs
{
get
{
string valStr = XmlHelper.GetAttributeValue(xmlNode, "numOfSGs");
if (valStr != null)
{
int retVal = -1;
Int32.TryParse(valStr, out retVal);
return (retVal);
}
else
return (-1);
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "numOfSGs", value.ToString());
}
}
public int ActSG
{
get
{
string valStr = XmlHelper.GetAttributeValue(xmlNode, "actSG");
if (valStr != null)
{
int retVal = -1;
Int32.TryParse(valStr, out retVal);
return (retVal);
}
else
return (-1);
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "actSG", value.ToString());
}
}
public int ResvTms
{
get
{
string valStr = XmlHelper.GetAttributeValue(xmlNode, "resvTms");
if (valStr != null)
{
int retVal = -1;
Int32.TryParse(valStr, out retVal);
return (retVal);
}
else
return (-1);
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "resvTms", value.ToString());
}
}
}
}