| 958 | namespace sdbus { |
| 959 | |
| 960 | std::chrono::microseconds IConnection::PollData::getRelativeTimeout() const |
| 961 | { |
| 962 | constexpr auto zero = std::chrono::microseconds::zero(); |
| 963 | constexpr auto max = std::chrono::microseconds::max(); |
| 964 | using internal::now; |
| 965 | |
| 966 | if (timeout == zero) |
| 967 | return zero; |
| 968 | if (timeout == max) |
| 969 | return max; |
| 970 | |
| 971 | return std::max(std::chrono::duration_cast<std::chrono::microseconds>(timeout - now()), zero); |
| 972 | } |
| 973 | |
| 974 | int IConnection::PollData::getPollTimeout() const |
| 975 | { |