Esempio n. 1
0
        /// <summary>
        /// Constructor. Generate an interval from the given values.
        /// </summary>
        /// <param name="value">First value.</param>
        /// <param name="values">Optionnal values.</param>
        public Interval(T value, params T[] values)
        {
            Options = IncludingOptions.INCLUDE_BOTH;
            var mi = Utilities.Min(values);
            var ma = Utilities.Max(values);

            Minimum = Utilities.Min(value, mi);
            Maximum = Utilities.Max(value, ma);
        }
Esempio n. 2
0
        /// <summary>
        /// Constructor. Generate an interval from the given values and the given including option.
        /// </summary>
        /// <param name="options">How the borders are managed.</param>
        /// <param name="value">First value.</param>
        /// <param name="values">Optionnal values.</param>
        public Interval(IncludingOptions options, T value, params T[] values)
        {
            Options = options;
            var mi = Utilities.Min(values);
            var ma = Utilities.Max(values);

            Minimum = Utilities.Min(value, mi);
            Maximum = Utilities.Max(value, ma);
        }
Esempio n. 3
0
 public Interval(SerializationInfo info, StreamingContext context)
 {
     Minimum = (T)info.GetValue("Minimum", typeof(T));
     Maximum = (T)info.GetValue("Maximum", typeof(T));
     Options = (IncludingOptions)info.GetValue("Options", typeof(IncludingOptions));
 }
Esempio n. 4
0
 /// <summary>
 /// Copy constructor.
 /// </summary>
 /// <param name="copy">Interval to copy.</param>
 public Interval(Interval <T> copy)
 {
     Options = copy.Options;
     Maximum = copy.Maximum;
     Minimum = copy.Minimum;
 }