|
| SocketControlMessage (SocketControlMessage && src) noexcept |
|
SocketControlMessage & | operator= (SocketControlMessage && src) noexcept |
|
| ~SocketControlMessage () noexcept override |
|
GSocketControlMessage * | gobj () |
| Provides access to the underlying C GObject. More...
|
|
const GSocketControlMessage * | gobj () const |
| Provides access to the underlying C GObject. More...
|
|
GSocketControlMessage * | gobj_copy () |
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
|
|
int | get_level () const |
| Returns the "level" (i.e. the originating protocol) of the control message. More...
|
|
int | get_msg_type () const |
| Returns the protocol specific type of the control message. More...
|
|
gsize | get_size () const |
| Returns the space required for the control message, not including headers or alignment. More...
|
|
void | serialize (gpointer data) |
| Converts the data in the message to bytes placed in the message. More...
|
|
virtual gsize | get_size_vfunc () const |
|
virtual int | get_level_vfunc () const |
|
virtual int | get_type_vfunc () const |
|
virtual void | serialize_vfunc (gpointer data) |
|
| Object (const Object &)=delete |
|
Object & | operator= (const Object &)=delete |
|
| Object (Object && src) noexcept |
|
Object & | operator= (Object && src) noexcept |
|
void * | get_data (const QueryQuark & key) |
|
void | set_data (const Quark & key, void *data) |
|
void | set_data (const Quark & key, void *data, DestroyNotify notify) |
|
void | remove_data (const QueryQuark & quark) |
|
void * | steal_data (const QueryQuark & quark) |
|
| ObjectBase (const ObjectBase &)=delete |
|
ObjectBase & | operator= (const ObjectBase &)=delete |
|
void | set_property_value (const Glib::ustring & property_name, const Glib::ValueBase & value) |
| You probably want to use a specific property_*() accessor method instead. More...
|
|
void | get_property_value (const Glib::ustring & property_name, Glib::ValueBase & value) const |
| You probably want to use a specific property_*() accessor method instead. More...
|
|
template<class PropertyType > |
void | set_property (const Glib::ustring & property_name, const PropertyType & value) |
| You probably want to use a specific property_*() accessor method instead. More...
|
|
template<class PropertyType > |
void | get_property (const Glib::ustring & property_name, PropertyType & value) const |
| You probably want to use a specific property_*() accessor method instead. More...
|
|
void | connect_property_changed (const Glib::ustring & property_name, const sigc::slot< void > & slot) |
| You can use the signal_changed() signal of the property proxy instead. More...
|
|
void | connect_property_changed (const Glib::ustring & property_name, sigc::slot< void > && slot) |
| You can use the signal_changed() signal of the property proxy instead. More...
|
|
sigc::connection | connect_property_changed_with_return (const Glib::ustring & property_name, const sigc::slot< void > & slot) |
| You can use the signal_changed() signal of the property proxy instead. More...
|
|
sigc::connection | connect_property_changed_with_return (const Glib::ustring & property_name, sigc::slot< void > && slot) |
| You can use the signal_changed() signal of the property proxy instead. More...
|
|
void | freeze_notify () |
| Increases the freeze count on object. More...
|
|
void | thaw_notify () |
| Reverts the effect of a previous call to freeze_notify(). More...
|
|
virtual void | reference () const |
| Increment the reference count for this object. More...
|
|
virtual void | unreference () const |
| Decrement the reference count for this object. More...
|
|
GObject * | gobj () |
| Provides access to the underlying C GObject. More...
|
|
const GObject * | gobj () const |
| Provides access to the underlying C GObject. More...
|
|
GObject * | gobj_copy () const |
| Give a ref-ed copy to someone. Use for direct struct access. More...
|
|
A Socket control message.
A SocketControlMessage is a special-purpose utility message that can be sent to or received from a Socket. These types of messages are often called "ancillary data".
The message can represent some sort of special instruction to or information from the socket or can represent a special kind of transfer to the peer (for example, sending a file description over a UNIX socket).
These messages are sent with Gio::Socket::send() and received with Gio::Socket::receive().
To extend the set of control message that can be sent, subclass this class and override the get_size_vfunc(), get_level_vfunc(), get_type_vfunc() and serialize_vfunc() methods.
To extend the set of control messages that can be received, subclass this class and implement a DeserializeFunc function. Typically it would be a static class method. Also, make sure you register the DeserializeFunc function with a call to add_deserialize_func() before calling Gio::Socket::receive() to read such a message.
- Since glibmm 2.28:
static void Gio::SocketControlMessage::add_deserialize_func |
( |
DeserializeFunc |
func | ) |
|
|
staticprotected |
Register a deserialize function.
If the same function is registered multiple times, only the first registration has an effect.
In GLib, deserialize() is a class virtual function (not associated with an instance). Such functions don't exist in C++. A function registered with add_deserialize_func() is a kind of replacement.