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.
139 lines
4.1 KiB
C#
139 lines
4.1 KiB
C#
using Mesnac.Compressor.Entity;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Configuration;
|
|
using System.Linq;
|
|
using System.Text;
|
|
|
|
namespace Mesnac.Controls.Compressor
|
|
{
|
|
public class AlarmControl
|
|
{
|
|
TXmlConfigHandler xml = new TXmlConfigHandler(@".\Config.xml");
|
|
public List<byte> AlarmUnit1 = new List<byte>();
|
|
public List<byte> AlarmUnit2 = new List<byte>();
|
|
public List<byte> AlarmUnit3 = new List<byte>();
|
|
public List<byte> AlarmUnit4 = new List<byte>();
|
|
public List<byte> AlarmUnit5 = new List<byte>();
|
|
public List<byte> AlarmUnit6 = new List<byte>();
|
|
|
|
public Dictionary<int, string> AlarmString1 = new Dictionary<int, string>();
|
|
public Dictionary<int, string> AlarmString2 = new Dictionary<int, string>();
|
|
public Dictionary<int, string> AlarmString3 = new Dictionary<int, string>();
|
|
public Dictionary<int, string> AlarmString4 = new Dictionary<int, string>();
|
|
public Dictionary<int, string> AlarmString5 = new Dictionary<int, string>();
|
|
public Dictionary<int, string> AlarmString6 = new Dictionary<int, string>();
|
|
|
|
private static readonly object sysnc = new object();
|
|
public AlarmControl()
|
|
{
|
|
InitAlarmString();
|
|
UpdateFinish=false;
|
|
AlarmChange = false;
|
|
}
|
|
|
|
static AlarmControl _instance;
|
|
public static AlarmControl Instance
|
|
{
|
|
get
|
|
{
|
|
if (_instance == null)
|
|
{
|
|
lock (sysnc)
|
|
{
|
|
_instance = new AlarmControl();
|
|
}
|
|
}
|
|
return _instance;
|
|
}
|
|
}
|
|
|
|
void InitAlarmString()
|
|
{
|
|
|
|
string configSection1 = "Setting/Unit1";
|
|
ConfigAlarm(configSection1, AlarmString1);
|
|
|
|
string configSection2 = "Setting/Unit2";
|
|
ConfigAlarm(configSection2, AlarmString2);
|
|
|
|
string configSection3 = "Setting/Unit3";
|
|
ConfigAlarm(configSection3, AlarmString3);
|
|
|
|
string configSection4 = "Setting/Unit4";
|
|
ConfigAlarm(configSection4, AlarmString4);
|
|
|
|
string configSection5 = "Setting/Unit5";
|
|
ConfigAlarm(configSection5, AlarmString5);
|
|
|
|
string configSection6 = "Setting/Unit6";
|
|
ConfigAlarm(configSection6, AlarmString6);
|
|
|
|
}
|
|
|
|
public List<AlarmInfo> AlarmLIst = new List<AlarmInfo>();
|
|
|
|
public bool AlarmChange {get;set;}
|
|
public bool UpdateFinish {get;set;}
|
|
|
|
private void ConfigAlarm(string ConSection,Dictionary<int, string> armlist)
|
|
{
|
|
try
|
|
{
|
|
//TXmlConfigHandler Confg = new TXmlConfigHandler(@".\Config.xml");
|
|
//ConfigurationSection conSection = (ConfigurationSection)ConfigurationManager.GetSection(ConSection);
|
|
//if (conSection != null)
|
|
//{
|
|
int KeyCount = Convert.ToInt32(xml.ReadValue(ConSection, "count"));
|
|
for (int i = 1; i <= KeyCount; i++)
|
|
{
|
|
string sectionName="alarm"+i.ToString();
|
|
string AlarmValue= xml.ReadValue(ConSection, sectionName).ToString();
|
|
armlist.Add(i-1, AlarmValue);
|
|
}
|
|
//}
|
|
}
|
|
catch(Exception ex)
|
|
{
|
|
//ICSharpCode.Core.LoggingService.Debug("报警信息加载错误:" + ex.ToString());
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
//public class AlarmInfo
|
|
//{
|
|
// public string AlarmString
|
|
// {
|
|
// get;
|
|
// set;
|
|
// }
|
|
|
|
// public DateTime AlarmTime
|
|
// {
|
|
// get;
|
|
// set;
|
|
// }
|
|
// public int EquipNo
|
|
// {
|
|
// get;
|
|
// set;
|
|
// }
|
|
|
|
// //报警单元
|
|
// public int AlarmUnit
|
|
// {
|
|
// get;
|
|
// set;
|
|
// }
|
|
|
|
// public int AlarmIndex;
|
|
//}
|
|
|
|
|
|
}
|