/// <summary> /// Convert TimeSpan to TimeData /// </summary> /// <param name="timestamp"> The timespan to convert to seconds/nanoseconds </param> /// <returns> a time struct </returns> public static TimeData GetTime(TimeSpan timestamp) { if (lastSimTimeReceived != default(TimeSpan)) { timestamp = timestamp.Subtract(lastSimTimeReceived).Add(lastSimTime); } return(TimeData.FromTicks(timestamp.Ticks)); }
/// <summary> /// Gets the current time or the last received sim time as std_msgs/Time /// </summary> /// <returns>Current time or the last received sim time as std_msgs/Time</returns> public static std_msgs.Time Now() { if (SimTime.Instance.IsTimeSimulated && lastSimTime != default) { return(new std_msgs.Time(TimeData.FromTicks(lastSimTime.Ticks))); } return(ToTimeMessage(DateTime.UtcNow)); }