1#ifndef ZYPP_BASE_EVENTDISPATCHER_GLIB_P_DEFINED 
    2#define ZYPP_BASE_EVENTDISPATCHER_GLIB_P_DEFINED 
    8#include <unordered_map> 
   19  gpointer 
tag = 
nullptr;
 
 
   35  static gboolean 
prepare(GSource *, gint *timeout);
 
 
   54  static gboolean 
prepare(GSource *src, gint *timeout);
 
 
   85  static std::shared_ptr<EventDispatcher> 
create ( );
 
   86  static void waitPidCallback ( GPid pid, gint status, gpointer user_data );
 
   89  GMainContext *
_ctx = 
nullptr;
 
 
~EventDispatcherPrivate() override
std::queue< EventDispatcher::IdleFunction > _idleFuncs
std::vector< std::shared_ptr< void > > _unrefLater
static void waitPidCallback(GPid pid, gint status, gpointer user_data)
std::thread::id _myThreadId
std::unordered_map< int, GlibWaitPIDData > _waitPIDs
std::vector< GAbstractEventSource * > _eventSources
UnixSignalSourceWeakRef _signalSource
std::vector< GLibTimerSource * > _runningTimers
EventDispatcherPrivate(GMainContext *ctx, EventDispatcher &p)
static std::shared_ptr< EventDispatcher > create()
std::function< void(int, int)> WaitPidCallback
The Timer class provides repetitive and single-shot timers.
static gboolean check(GSource *source)
std::vector< GUnixPollFD > pollfds
AbstractEventSource * eventSource
static gboolean dispatch(GSource *source, GSourceFunc, gpointer)
static GAbstractEventSource * create(EventDispatcherPrivate *ev)
static void destruct(GAbstractEventSource *src)
static gboolean prepare(GSource *, gint *timeout)
EventDispatcherPrivate * _ev
static void destruct(GLibTimerSource *src)
static gboolean prepare(GSource *src, gint *timeout)
static gboolean check(GSource *source)
static GLibTimerSource * create()
static gboolean dispatch(GSource *source, GSourceFunc, gpointer)
GlibWaitPIDData & operator=(GlibWaitPIDData &&other) noexcept
EventDispatcher::WaitPidCallback callback
GlibWaitPIDData(GPid pid)
#define ZYPP_DECLARE_PUBLIC(Class)
#define ZYPP_FWD_DECL_TYPE_WITH_REFS(T)