Exemplo n.º 1
0
 public DumpConditionViewModel(IDumpCondition dumpCondition)
 {
     this.ConnectionPointIndex = dumpCondition.ConnectionPointIndex;
     this.ControlValue         = dumpCondition.ControlValue;
     this.HighLimit            = dumpCondition.HighLimit;
     this.IsUsed          = dumpCondition.IsUsed;
     this.LowLimit        = dumpCondition.LowLimit;
     this.UseControlValue = dumpCondition.UseControlValue;
     this.UseHighLimit    = dumpCondition.UseHighLimit;
     this.UseLowLimit     = dumpCondition.UseLowLimit;
     this.UseValueAbs     = dumpCondition.UseValueAbs;
 }
Exemplo n.º 2
0
 public void CopyTo(IDumpCondition dumpCondition)
 {
     dumpCondition.ConnectionPointIndex = ConnectionPointIndex;
     dumpCondition.ControlValue         = ControlValue;
     dumpCondition.HighLimit            = HighLimit;
     dumpCondition.IsUsed          = IsUsed;
     dumpCondition.LowLimit        = LowLimit;
     dumpCondition.UseControlValue = UseControlValue;
     dumpCondition.UseHighLimit    = UseHighLimit;
     dumpCondition.UseLowLimit     = UseLowLimit;
     dumpCondition.UseValueAbs     = UseValueAbs;
 }
Exemplo n.º 3
0
 public static bool IsEqualTo(this IDumpCondition c1, IDumpCondition c2)
 {
     if (c1 == null && c2 == null)
     {
         return(true);
     }
     if (c1 == null || c2 == null)
     {
         return(false);                                      // предыдущий return делает код правильным
     }
     if (c1.ConnectionPointIndex != c2.ConnectionPointIndex)
     {
         return(false);
     }
     if (c1.ControlValue != c2.ControlValue)
     {
         return(false);
     }
     if (c1.HighLimit != c2.HighLimit)
     {
         return(false);
     }
     if (c1.IsUsed != c2.IsUsed)
     {
         return(false);
     }
     if (c1.LowLimit != c2.LowLimit)
     {
         return(false);
     }
     if (c1.UseControlValue != c2.UseControlValue)
     {
         return(false);
     }
     if (c1.UseHighLimit != c2.UseHighLimit)
     {
         return(false);
     }
     if (c1.UseLowLimit != c2.UseLowLimit)
     {
         return(false);
     }
     if (c1.UseLogicalAnd != c2.UseLogicalAnd)
     {
         return(false);
     }
     if (c1.UseValueAbs != c2.UseValueAbs)
     {
         return(false);
     }
     return(true);
 }
        public static void UpdateChannelCondition(IRpdDumpRule rule, IDumpCondition condtitionToUpdate)
        {
            //condtitionToModify.ConnectionPointIndex = connectionPointIndex;//connectionPointIndex определяется при создании RPD канала из записи таблицы измерителей
            condtitionToUpdate.IsUsed = condtitionToUpdate.ConnectionPointIndex > 0;

            condtitionToUpdate.ControlValue = rule.ControlValue;
            condtitionToUpdate.HighLimit    = rule.MaxValue;
            condtitionToUpdate.LowLimit     = rule.MinValue;

            condtitionToUpdate.UseValueAbs     = (rule.Type & 0x01) == 0x01;
            condtitionToUpdate.UseHighLimit    = (rule.Type & 0x02) == 0x02;
            condtitionToUpdate.UseLowLimit     = (rule.Type & 0x04) == 0x04;
            condtitionToUpdate.UseControlValue = (rule.Type & 0x08) == 0x08;

            condtitionToUpdate.UseLogicalAnd = false;
        }
Exemplo n.º 5
0
        /// <summary>
        /// Копирует значения членов класса из другого объекта с интерфейсом IDumpCondition
        /// </summary>
        /// <param name="source">Условие-источник для копирования</param>
        public void CopyFrom(IDumpCondition source)
        {
            this.IsUsed = source.IsUsed;

            this.ConnectionPointIndex = source.ConnectionPointIndex;

            this.ControlValue = source.ControlValue;
            this.HighLimit    = source.HighLimit;
            this.LowLimit     = source.LowLimit;

            this.UseControlValue = source.UseControlValue;

            this.UseHighLimit  = source.UseHighLimit;
            this.UseLogicalAnd = source.UseLogicalAnd;
            this.UseLowLimit   = source.UseLowLimit;
            this.UseValueAbs   = source.UseValueAbs;
        }
Exemplo n.º 6
0
        public RpdDumpRule(IDumpCondition condition)
        {
            Type = 0;
            if (condition.UseValueAbs)
            {
                Type += 0x01;
            }
            if (condition.UseHighLimit)
            {
                Type += 0x02;
            }
            if (condition.UseLowLimit)
            {
                Type += 0x04;
            }
            if (condition.UseControlValue)
            {
                Type += 0x08;
            }

            MaxValue     = (short)condition.HighLimit;
            MinValue     = (short)condition.LowLimit;
            ControlValue = (short)condition.ControlValue;
        }
 public RpdDumpRuleBuilderFromDumpCondition(IDumpCondition condition)
 {
     _condition = condition;
 }