示例#1
0
        public override bool IsHasChanges(BaseTestParametersAndNormatives oldParameters)
        {
            if (oldParameters == null)
            {
                throw new ArgumentNullException("Метод '" + System.Reflection.MethodBase.GetCurrentMethod().Name + "' получил на вход параметр 'oldParameters' равный Null.");
            }

            //сравниваем свой хеш с хешем принятого oldParameters и если они одинаковы - значит мы имеем дело с одним и тем же экземпляром
            if (this.GetHashCode() == oldParameters.GetHashCode())
            {
                return(false);
            }

            //раз мы сюда добрались - имеем дело с разными экземплярами, необходимо сравнение их содержимого
            var typeName = oldParameters.GetType().Name;

            if (typeName != "TestParameters")
            {
                throw new InvalidCastException("Method '" + System.Reflection.MethodBase.GetCurrentMethod().Name + "' получил на вход параметр 'oldParameters' тип которого '" + typeName + "'. Ожидался тип параметра 'TestParameters'.");
            }

            var aTUOldParameters = (TestParameters)oldParameters;

            if (PrePulseValue != aTUOldParameters.PrePulseValue)
            {
                return(true);
            }

            if (PowerValue != aTUOldParameters.PowerValue)
            {
                return(true);
            }

            return(false);
        }
示例#2
0
        public override bool IsHasChanges(BaseTestParametersAndNormatives oldParameters)
        {
            if (oldParameters == null)
            {
                throw new ArgumentNullException("Метод '" + System.Reflection.MethodBase.GetCurrentMethod().Name + "' получил на вход параметр 'oldParameters' равный Null.");
            }

            //сравниваем свой хеш с хешем принятого oldParameters и если они одинаковы - значит мы имеем дело с одним и тем же экземпляром
            if (this.GetHashCode() == oldParameters.GetHashCode())
            {
                return(false);
            }

            //раз мы сюда добрались - имеем дело с разными экземплярами, необходимо сравнение их содержимого
            var typeName = oldParameters.GetType().Name;

            if (typeName != "TestParameters")
            {
                throw new InvalidCastException("Method '" + System.Reflection.MethodBase.GetCurrentMethod().Name + "' получил на вход параметр 'oldParameters' тип которого '" + typeName + "'. Ожидался тип параметра 'TestParameters'.");
            }

            var QrrTqOldParameters = (TestParameters)oldParameters;

            if (Mode != QrrTqOldParameters.Mode)
            {
                return(true);
            }

            if (DirectCurrent != QrrTqOldParameters.DirectCurrent)
            {
                return(true);
            }

            if (DCPulseWidth != QrrTqOldParameters.DCPulseWidth)
            {
                return(true);
            }

            if (DCRiseRate != QrrTqOldParameters.DCRiseRate)
            {
                return(true);
            }

            if (DCFallRate != QrrTqOldParameters.DCFallRate)
            {
                return(true);
            }

            if (OffStateVoltage != QrrTqOldParameters.OffStateVoltage)
            {
                return(true);
            }

            if (OsvRate != QrrTqOldParameters.OsvRate)
            {
                return(true);
            }

            if (TrrMeasureBy9050Method != QrrTqOldParameters.TrrMeasureBy9050Method)
            {
                return(true);
            }

            if (Idc != QrrTqOldParameters.Idc)
            {
                return(true);
            }

            if (Qrr != QrrTqOldParameters.Qrr)
            {
                return(true);
            }

            if (Irr != QrrTqOldParameters.Irr)
            {
                return(true);
            }

            if (Trr != QrrTqOldParameters.Trr)
            {
                return(true);
            }

            if (DCFactFallRate != QrrTqOldParameters.DCFactFallRate)
            {
                return(true);
            }

            if (Tq != QrrTqOldParameters.Tq)
            {
                return(true);
            }

            return(false);
        }