namespace IStation.Model
|
{
|
/// <summary>
|
/// 调度配置
|
/// </summary>
|
public class ScheduleConfig : System.ICloneable
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public ScheduleConfig() { }
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="rhs"></param>
|
public ScheduleConfig(ScheduleConfig rhs)
|
{
|
this.MustOpenFlagList = rhs.MustOpenFlagList?.ToList();
|
this.MustCloseFlagList = rhs.MustCloseFlagList?.ToList();
|
this.ForbiddenFlagCombineList = rhs.ForbiddenFlagCombineList?.ToList();
|
this.AssociativeFlagCombineList = rhs.AssociativeFlagCombineList?.ToList();
|
this.SameSectionFlagCombineList = rhs.SameSectionFlagCombineList?.ToList();
|
this.WaterSupplyLimitList = rhs.WaterSupplyLimitList?.ToList();
|
this.FrequencyLimitList = rhs.FrequencyLimitList?.ToList();
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="rhs"></param>
|
public void Reset(ScheduleConfig rhs)
|
{
|
this.MustOpenFlagList = rhs.MustOpenFlagList?.ToList();
|
this.MustCloseFlagList = rhs.MustCloseFlagList?.ToList();
|
this.ForbiddenFlagCombineList = rhs.ForbiddenFlagCombineList?.ToList();
|
this.AssociativeFlagCombineList = rhs.AssociativeFlagCombineList?.ToList();
|
this.SameSectionFlagCombineList = rhs.SameSectionFlagCombineList?.ToList();
|
this.WaterSupplyLimitList = rhs.WaterSupplyLimitList?.ToList();
|
this.FrequencyLimitList = rhs.FrequencyLimitList?.ToList();
|
}
|
|
|
/// <summary>
|
/// 必开泵列表
|
/// </summary>
|
public List<int> MustOpenFlagList { get; set; }
|
|
/// <summary>
|
/// 必关泵列表
|
/// </summary>
|
public List<int> MustCloseFlagList { get; set; }
|
|
/// <summary>
|
/// 禁用泵组合列表
|
/// </summary>
|
public List<List<int>> ForbiddenFlagCombineList { get; set; }
|
|
/// <summary>
|
/// 关联泵组合列表
|
/// </summary>
|
public List<List<int>> AssociativeFlagCombineList { get; set; }
|
|
/// <summary>
|
/// 同段泵组合列表
|
/// </summary>
|
public List<List<int>> SameSectionFlagCombineList { get; set; }
|
|
/// <summary>
|
/// 供水限制列表
|
/// </summary>
|
public List<WaterSupplyLimit> WaterSupplyLimitList { get; set; }
|
|
/// <summary>
|
/// 频率限制列表
|
/// </summary>
|
public List<FrequencyLimit> FrequencyLimitList { get; set; }
|
|
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <returns></returns>
|
public ScheduleConfig Clone()
|
{
|
return (ScheduleConfig)this.MemberwiseClone();
|
}
|
|
object ICloneable.Clone()
|
{
|
return this.MemberwiseClone();
|
}
|
}
|
|
|
}
|