TimeStamp TimeStamp::operator-(const TimeStamp & t) const { int32_t deltaSeconds = m_seconds - t.getSeconds(); int32_t deltaMicroseconds = m_microseconds - t.getFractionalMicroseconds(); while (deltaMicroseconds < 0) { deltaSeconds--; deltaMicroseconds += 1000000L; } return TimeStamp(deltaSeconds, deltaMicroseconds); }
TimeStamp TimeStamp::operator+(const TimeStamp & t) const { int32_t sumSeconds = m_seconds + t.getSeconds(); int32_t sumMicroseconds = m_microseconds + t.getFractionalMicroseconds(); while (sumMicroseconds > 1000000L) { sumSeconds++; sumMicroseconds -= 1000000L; } return TimeStamp(sumSeconds, sumMicroseconds); }