// Token: 0x06000E45 RID: 3653 RVA: 0x00036CDC File Offset: 0x00034EDC private static double Round(double total, global::TimeStringFormatter.Rounding rounding, int decimalPlaces, double fancyUnits) { if (total <= 0.0) { return(0.0); } switch (rounding) { case global::TimeStringFormatter.Rounding.Floor: return(Math.Floor(total)); case global::TimeStringFormatter.Rounding.Ceiling: return(Math.Ceiling(total)); case global::TimeStringFormatter.Rounding.Round: return(Math.Round(total)); case global::TimeStringFormatter.Rounding.Decimal: fancyUnits = 1.0; decimalPlaces = 0; break; case global::TimeStringFormatter.Rounding.RoundedDecimal: fancyUnits = 1.0; break; case global::TimeStringFormatter.Rounding.FancyDecimal: decimalPlaces = 0; break; } if (decimalPlaces == 0) { return(total); } double num = Math.Floor(total); return(num + Math.Floor((total - num) * fancyUnits * ((double)decimalPlaces * 10.0)) / (10.0 * (double)decimalPlaces)); }
// Token: 0x06000E47 RID: 3655 RVA: 0x00036DB4 File Offset: 0x00034FB4 public string GetFormattingString(TimeSpan timePassed, global::TimeStringFormatter.Rounding rounding) { int num2; double num = global::TimeStringFormatter.Round(timePassed.TotalSeconds, rounding, num2 = 2, 1.0); string format; if (num <= 0.0) { format = this.lessThanASecond; } else if (num == 1.0) { format = this.aSecond; } else if (num < 60.0) { format = this.seconds; } else if ((num = global::TimeStringFormatter.Round(timePassed.TotalMinutes, rounding, num2 = 2, 0.6)) == 1.0) { format = this.aMinute; } else if (num < 60.0) { format = this.minutes; } else if ((num = global::TimeStringFormatter.Round(timePassed.TotalHours, rounding, num2 = 2, 1.0)) == 1.0) { format = this.aHour; } else if (num < 24.0) { format = this.hours; } else if ((num = global::TimeStringFormatter.Round(timePassed.TotalDays, rounding, num2 = 2, 0.24)) == 1.0) { format = this.aDay; } else { format = this.days; } object arg; if (rounding == global::TimeStringFormatter.Rounding.RoundedDecimal || rounding == global::TimeStringFormatter.Rounding.FancyDecimal || rounding == global::TimeStringFormatter.Rounding.RoundedFancyDecimal) { string text; if (rounding == global::TimeStringFormatter.Rounding.RoundedDecimal || rounding == global::TimeStringFormatter.Rounding.RoundedFancyDecimal) { if (num2 != 2) { throw new NotSupportedException("We gotta add support for that"); } text = num.ToString("0.00"); } else { text = num.ToString(); } if (rounding == global::TimeStringFormatter.Rounding.FancyDecimal || rounding == global::TimeStringFormatter.Rounding.RoundedFancyDecimal) { arg = text.Replace('.', ':'); } else { arg = text; } } else if (rounding != global::TimeStringFormatter.Rounding.Decimal && !double.IsNaN(num) && !double.IsInfinity(num)) { arg = (int)num; } else { arg = num; } return(string.Format(format, arg)); }