glibmm: Gio::SignalSocket Class Reference
#include <giomm/socketsource.h>
Public Member Functions | |
sigc::connection | connect (const sigc::slot< bool(Glib::IOCondition)>& slot, const Glib::RefPtr< Socket >& socket, Glib::IOCondition condition, const Glib::RefPtr< Cancellable >& cancellable={}, int priority=Glib::PRIORITY_DEFAULT) |
Connects an I/O handler that watches a socket. More... | |
Detailed Description
Member Function Documentation
sigc::connection Gio::SignalSocket::connect | ( | const sigc::slot< bool(Glib::IOCondition)>& | slot, |
const Glib::RefPtr< Socket >& | socket, | ||
Glib::IOCondition | condition, | ||
const Glib::RefPtr< Cancellable >& | cancellable = {} , |
||
int | priority = Glib::PRIORITY_DEFAULT |
||
) |
Connects an I/O handler that watches a socket.
bool io_handler(Glib::IOCondition io_condition) { ... }
is equivalent to:
bool io_handler(Glib::IOCondition io_condition) { ... }
socket_source->connect(sigc::ptr_fun(& io_handler));
socket_source->attach(Glib::MainContext::get_default());
This method is not thread-safe. You should call it, or manipulate the returned sigc::connection object, only from the thread where the SignalSocket object's MainContext runs.
- Parameters
-
slot A slot to call when polling socket results in an event that matches condition. The event will be passed as a parameter to slot. If io_handler()
returnsfalse
the handler is disconnected.socket The Socket object to watch. condition The conditions to watch for. cancellable A Cancellable object which can be used to cancel the source, which will cause the source to trigger, reporting the current condition (which is likely 0 unless cancellation happened at the same time as a condition change). You can check for this in the callback using Cancellable::is_cancelled(). priority The priority of the new event source.
- Returns
- A connection handle, which can be used to disconnect the handler.