Line data Source code
1 : #pragma once 2 : 3 : #include <functional> 4 : #include <memory> 5 : 6 : namespace Envoy { 7 : namespace Event { 8 : 9 : /** 10 : * Callback invoked when a signal event fires. 11 : */ 12 : using SignalCb = std::function<void()>; 13 : 14 : /** 15 : * An abstract signal event. Free the event to stop listening on the signal. 16 : */ 17 : class SignalEvent { 18 : public: 19 392 : virtual ~SignalEvent() = default; 20 : }; 21 : 22 : using SignalEventPtr = std::unique_ptr<SignalEvent>; 23 : 24 : } // namespace Event 25 : } // namespace Envoy