1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-01-19 13:30:24 +00:00
transmission/libtransmission/timer-ev.h
Charles Kerr b49cccbd3e
refactor: add timer class (#3603)
Wraps around evtimer so that some of the codebase can use libevent without coupling to it.
2022-08-08 17:53:20 -05:00

34 lines
646 B
C++

// This file Copyright 2022 Mnemosyne LLC.
// It may be used under GPLv2 (SPDX: GPL-2.0-only), GPLv3 (SPDX: GPL-3.0-only),
// or any future license endorsed by Mnemosyne LLC.
// License text can be found in the licenses/ folder.
#pragma once
#include "timer.h"
extern "C"
{
struct event_base;
}
namespace libtransmission
{
class EvTimerMaker final : public TimerMaker
{
public:
EvTimerMaker(event_base* base)
: event_base_{ base }
{
}
~EvTimerMaker() override = default;
[[nodiscard]] std::unique_ptr<Timer> create() override;
private:
event_base* const event_base_;
};
} // namespace libtransmission