Fan.Sys.Time.fromDuration C# (CSharp) Method

fromDuration() public static method

public static fromDuration ( Duration d ) : Time
d Duration
return Time
        public static Time fromDuration(Duration d)
        {
            long ticks = d.m_ticks;
              if (ticks == 0) return m_defVal;

              if (ticks < 0 || ticks > Duration.nsPerDay )
            throw ArgErr.make("Duration out of range: " + d).val;

              int hour = (int)(ticks / Duration.nsPerHr);  ticks %= Duration.nsPerHr;
              int min  = (int)(ticks / Duration.nsPerMin); ticks %= Duration.nsPerMin;
              int sec  = (int)(ticks / Duration.nsPerSec); ticks %= Duration.nsPerSec;
              int ns   = (int)ticks;

              return new Time(hour, min, sec, ns);
        }