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/model_generator_dotnet/SCLParser/src/SclGSEControl.cs

153 lines
4.0 KiB
C#

/*
* Copyright 2013-2025 Michael Zillgith, MZ Automation GmbH
*
* This file is part of MZ Automation IEC 61850 SDK
*
* All rights reserved.
*/
using System;
using System.Xml;
namespace IEC61850.SCL
{
public class SclGSEControl
{
public XmlNode xmlNode;
private XmlDocument xmlDocument;
public SclGSEControl(SclDocument SclxmlDocument, XmlNode xmlNode)
{
this.xmlNode = xmlNode;
xmlDocument = SclxmlDocument.XmlDocument;
XmlAttribute nameAttr = xmlNode.Attributes["name"];
if (nameAttr == null)
SclxmlDocument.AddIssue(xmlNode, "ERROR", "Model integrity", "GSEControl has no name attribute", this, "MissingName");
}
public SclGSEControl(XmlDocument xmlDoc, string name)
{
xmlDocument = xmlDoc;
xmlNode = xmlDoc.CreateElement("GSEControl", SclDocument.SCL_XMLNS);
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "name", name);
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "appID", name);
}
public SclGSEControl(XmlDocument xmlDocument)
{
this.xmlDocument = xmlDocument;
xmlNode = xmlDocument.CreateElement("scl:GSEControl");
}
public string Name
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "name");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "name", value);
}
}
public string Desc
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "desc");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "desc", value);
}
}
public string DatSet
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "datSet");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "datSet", value);
}
}
public string AppID
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "appID");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "appID", value);
}
}
public int ConfRev
{
get
{
string valStr = XmlHelper.GetAttributeValue(xmlNode, "confRev");
if (valStr != null)
{
int retVal = -1;
Int32.TryParse(valStr, out retVal);
return (retVal);
}
else
return (-1);
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "confRev", value.ToString());
}
}
public bool FixedOffs
{
get
{
return XmlHelper.ParseBooleanAttribute(xmlNode, "fixedOffs", false);
}
set
{
XmlHelper.SetBooleanAttributeCreateIfNotExists(xmlDocument, xmlNode, "fixedOffs", value);
}
}
public string Type
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "type");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "type", value);
}
}
public string SecurityEnabled
{
get
{
return XmlHelper.GetAttributeValue(xmlNode, "securityEnabled");
}
set
{
XmlHelper.SetAttributeCreateIfNotExists(xmlDocument, xmlNode, "securityEnabled", value);
}
}
}
}