using System;
using System.ComponentModel;
using System.Reflection;
using System.Runtime.Serialization;
using System.Windows.Input;
using Aitex.Core.UI.MVVM;
using MECF.Framework.Common.CommonData;
namespace Aitex.Core.Common.DeviceData
{
[Serializable]
public enum EnumRfPowerRegulationMode
{
[EnumMember]
Undefined = 0,
[EnumMember]
Forward = 1,
[EnumMember]
Load = 2,
[EnumMember]
DcBias = 3,
[EnumMember]
VALimit = 4,
}
[Serializable]
public enum EnumRfPowerWorkMode
{
[EnumMember]
ContinuousWaveMode = 0,
[EnumMember]
PulsingMode = 1,
}
[Serializable]
public enum EnumRfPowerControlMode
{
[EnumMember]
ManualMode = 0,
[EnumMember]
AnalogMode = 1,
[EnumMember]
RS232Mode = 2,
}
[DataContract]
[Serializable]
public class AITRfPowerData : NotifiableItem, IDeviceData
{
[DataMember]
public string Module { get; set; }
[DataMember]
public string DeviceName { get; set; }
///
/// 显示在界面上的名称
///
[DataMember]
public string DisplayName { get; set; }
///
/// IO 表中定义的物理编号,物理追溯使用 比如: M122
///
[DataMember]
public string DeviceSchematicId { get; set; }
[DataMember]
public string Description { get; set; }
[DataMember]
public string UnitPower { get; set; }
[DataMember]
public string UnitFrequency { get; set; }
[DataMember]
public string UnitDuty { get; set; }
[DataMember]
public double ScalePower { get; set; }
[DataMember]
public double ScaleFrequency { get; set; }
[DataMember]
public double ScaleDuty { get; set; }
[DataMember]
public float PowerSetPoint { get; set; }
[DataMember]
public float FrequencySetPoint { get; set; }
[DataMember]
public float DutySetPoint { get; set; }
[DataMember]
public bool IsInterlockOk { get; set; }
[DataMember]
public bool IsRfOn { get; set; }
[DataMember]
public bool IsRfAlarm { get; set; }
[DataMember]
public float ForwardPower { get; set; }
[DataMember]
public float ReflectPower { get; set; }
[DataMember]
public float Frequency { get; set; }
[DataMember]
public float PulsingFrequency { get; set; }
[DataMember]
public float PulsingDutyCycle { get; set; }
public string TextOnOff
{
get
{
return IsRfOn ? "On" : "Off";
}
}
[DataMember]
public EnumRfPowerRegulationMode RegulationMode { get; set; }
public AITRfPowerData()
{
DisplayName = "Undefined";
}
public void Update(IDeviceData data)
{
}
}
public enum AITRfPowerOperation
{
SetPowerOnOff,
SetMode,
SetContinuousPower,
SetPulsingPower,
SetPower,
SetPulsingFrequency,
SetPulsingDuty,
SetMatchMode,
SetMatchProcessMode,
SetMatchPosition, //同时设置2个
SetMatchPositionC1,
SetMatchPositionC2,
}
public class AITRfPowerProperty
{
public const string RFEnable = "RFEnable";
public const string RFSetPoint = "RFSetPoint";
public const string RFForwardPower = "RFForwardPower";
public const string RFReflectPower = "RFReflectPower";
public const string RFRatio = "RFRatio";
public const string RFInterlock = "RFInterlock";
public const string RFDuty = "RFDuty";
public const string RFFrequency = "RFFrequency";
public const string RFMode = "RFMode";
public const string RFMatchPositionC1Feedback = "RFMatchPositionC1Feedback";
public const string RFMatchPositionC2Feedback = "RFMatchPositionC2Feedback";
public const string RFMatchPositionC1SetPoint = "RFMatchPositionC1SetPoint";
public const string RFMatchPositionC2SetPoint = "RFMatchPositionC2SetPoint";
public const string RFAlarm = "RFAlarm";
public const string Voltage = "Voltage";
public const string Current = "Current";
public const string IsOverTemp = "IsOverTemp";
}
}