1 #pragma once 2 3 #include <sdeventplus/internal/sdevent.hpp> 4 #include <sdeventplus/internal/sdref.hpp> 5 #include <systemd/sd-event.h> 6 7 namespace sdeventplus 8 { 9 10 class Event 11 { 12 public: 13 Event(sd_event* event, SdEventInterface* intf = &sdevent_impl); 14 Event(sd_event* event, std::false_type, 15 SdEventInterface* intf = &sdevent_impl); 16 static Event get_new(SdEventInterface* intf = &sdevent_impl); 17 static Event get_default(SdEventInterface* intf = &sdevent_impl); 18 19 int loop(); 20 int get_watchdog(); 21 int set_watchdog(int b); 22 23 private: 24 SdEventInterface* intf; 25 SdRef<sd_event> event; 26 }; 27 28 } // namespace sdeventplus 29