zeroconf/AvahiPoll: move TimevalToChrono() to time/Convert.cxx
This commit is contained in:
parent
80e55f6bfc
commit
ae35df1126
@ -81,3 +81,10 @@ MakeTime(struct tm &tm) noexcept
|
||||
{
|
||||
return std::chrono::system_clock::from_time_t(mktime(&tm));
|
||||
}
|
||||
|
||||
std::chrono::steady_clock::duration
|
||||
ToSteadyClockDuration(const struct timeval &tv) noexcept
|
||||
{
|
||||
return std::chrono::steady_clock::duration(std::chrono::seconds(tv.tv_sec)) +
|
||||
std::chrono::steady_clock::duration(std::chrono::microseconds(tv.tv_usec));
|
||||
}
|
||||
|
@ -67,4 +67,8 @@ gcc_pure
|
||||
std::chrono::system_clock::time_point
|
||||
MakeTime(struct tm &tm) noexcept;
|
||||
|
||||
gcc_pure
|
||||
std::chrono::steady_clock::duration
|
||||
ToSteadyClockDuration(const struct timeval &tv) noexcept;
|
||||
|
||||
#endif
|
||||
|
@ -20,6 +20,7 @@
|
||||
#include "AvahiPoll.hxx"
|
||||
#include "event/SocketMonitor.hxx"
|
||||
#include "event/TimerEvent.hxx"
|
||||
#include "time/Convert.hxx"
|
||||
|
||||
static unsigned
|
||||
FromAvahiWatchEvent(AvahiWatchEvent e)
|
||||
@ -78,12 +79,6 @@ private:
|
||||
}
|
||||
};
|
||||
|
||||
static constexpr std::chrono::steady_clock::duration
|
||||
TimevalToChrono(const timeval &tv)
|
||||
{
|
||||
return std::chrono::seconds(tv.tv_sec) + std::chrono::microseconds(tv.tv_usec);
|
||||
}
|
||||
|
||||
struct AvahiTimeout final {
|
||||
TimerEvent timer;
|
||||
|
||||
@ -97,12 +92,12 @@ public:
|
||||
:timer(_loop, BIND_THIS_METHOD(OnTimeout)),
|
||||
callback(_callback), userdata(_userdata) {
|
||||
if (tv != nullptr)
|
||||
timer.Schedule(TimevalToChrono(*tv));
|
||||
timer.Schedule(ToSteadyClockDuration(*tv));
|
||||
}
|
||||
|
||||
static void TimeoutUpdate(AvahiTimeout *t, const struct timeval *tv) {
|
||||
if (tv != nullptr)
|
||||
t->timer.Schedule(TimevalToChrono(*tv));
|
||||
t->timer.Schedule(ToSteadyClockDuration(*tv));
|
||||
else
|
||||
t->timer.Cancel();
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ else
|
||||
dependencies: [
|
||||
libavahi_client_dep,
|
||||
dbus_dep,
|
||||
time_dep,
|
||||
],
|
||||
)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user