private int ValueForSource(string compare, DescriptionParams paramz)
 {
     int compareSource = 0;
     switch (compare)
     {
         case "sourcetype":
             compareSource = paramz.source_type;
             break;
         case "pram1":
             compareSource = paramz.pram1;
             break;
         case "pram2":
             compareSource = paramz.pram2;
             break;
         case "pram3":
             compareSource = paramz.pram3;
             break;
         case "pram4":
             compareSource = paramz.pram4;
             break;
         case "pram5":
             compareSource = paramz.pram5;
             break;
         case "pram6":
             compareSource = paramz.pram6;
             break;
     }
     return compareSource;
 }
 internal bool Validate(DescriptionParams paramz)
 {
     int compareSource = ValueForSource(_compare, paramz);
     if (_compareTo != null)
         _value = ValueForSource(_compareTo, paramz);
     return Validate(compareSource, _value);
 }
        internal bool Validate(DescriptionParams paramz)
        {
            int compareSource = ValueForSource(compare, paramz);

            if (compareTo != null)
            {
                value = ValueForSource(compareTo, paramz);
            }
            return(Validate(compareSource, value));
        }
        public bool Matches(DescriptionParams paramz)
        {
            foreach (ParameterConditionalCompareAny condition in Conditionals)
            {
                if (!condition.Validate(paramz))
                {
                    return(false);
                }
            }

            return(true);
        }