glibmm 2.80.0
Public Member Functions | Static Public Member Functions | Related Functions | List of all members
Gio::SocketAddressEnumerator Class Reference

Enumerator type for objects that contain or generate SocketAddresses. More...

#include <giomm/socketaddressenumerator.h>

Inheritance diagram for Gio::SocketAddressEnumerator:
Inheritance graph
[legend]

Public Member Functions

 SocketAddressEnumerator (SocketAddressEnumerator && src) noexcept
 
SocketAddressEnumeratoroperator= (SocketAddressEnumerator && src) noexcept
 
 ~SocketAddressEnumerator () noexcept override
 
GSocketAddressEnumerator * gobj ()
 Provides access to the underlying C GObject. More...
 
const GSocketAddressEnumerator * gobj () const
 Provides access to the underlying C GObject. More...
 
GSocketAddressEnumerator * gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
Glib::RefPtr< SocketAddressnext (const Glib::RefPtr< Cancellable > & cancellable)
 Retrieves the next SocketAddress from enumerator. More...
 
Glib::RefPtr< SocketAddressnext ()
 A next() convenience overload. More...
 
void next_async (const Glib::RefPtr< Cancellable > & cancellable, const SlotAsyncReady & slot)
 Asynchronously retrieves the next SocketAddress from the enumerator and then calls slot, which must call next_finish() to get the result. More...
 
void next_async (const SlotAsyncReady & slot)
 Asynchronously retrieves the next SocketAddress from the enumerator and then calls slot, which must call next_finish() to get the result. More...
 
Glib::RefPtr< SocketAddressnext_finish (const Glib::RefPtr< AsyncResult > & result)
 Retrieves the result of a completed call to g_socket_address_enumerator_next_async(). More...
 
- Public Member Functions inherited from Glib::Object
 Object (const Object &)=delete
 
Objectoperator= (const Object &)=delete
 
 Object (Object && src) noexcept
 
Objectoperator= (Object && src) noexcept
 
void * get_data (const QueryQuark & key)
 
void set_data (const Quark & key, void *data)
 
void set_data_with_c_callback (const Quark & key, void *data, GDestroyNotify notify)
 
void set_data (const Quark & key, void *data, DestroyNotify notify)
 Prefer set_data_with_c_callback() with a callback with C linkage. More...
 
void remove_data (const QueryQuark & quark)
 
void * steal_data (const QueryQuark & quark)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (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...
 
template<class PropertyType >
PropertyType get_property (const Glib::ustring & property_name) const
 You probably want to use a specific property_*() accessor method instead. More...
 
sigc::connection 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...
 
sigc::connection 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...
 
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...
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::SocketAddressEnumeratorwrap (GSocketAddressEnumerator * object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Additional Inherited Members

- Public Types inherited from Glib::Object
using DestroyNotify = void(*)(gpointer data)
 
- Protected Member Functions inherited from Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams & construct_params)
 
 Object (GObject * castitem)
 
 ~Object () noexcept override
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different ObjectBase constructor. More...
 
 ObjectBase (const char * custom_type_name)
 A derived constructor always overrides this choice. More...
 
 ObjectBase (const std::type_info & custom_type_info)
 This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually. More...
 
 ObjectBase (ObjectBase && src) noexcept
 
ObjectBaseoperator= (ObjectBase && src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject * castitem)
 
void initialize_move (GObject * castitem, Glib::ObjectBase * previous_wrapper)
 

Detailed Description

Enumerator type for objects that contain or generate SocketAddresses.

Since glibmm 2.24:

Constructor & Destructor Documentation

◆ SocketAddressEnumerator()

Gio::SocketAddressEnumerator::SocketAddressEnumerator ( SocketAddressEnumerator &&  src)
noexcept

◆ ~SocketAddressEnumerator()

Gio::SocketAddressEnumerator::~SocketAddressEnumerator ( )
overridenoexcept

Member Function Documentation

◆ get_type()

static GType Gio::SocketAddressEnumerator::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

◆ gobj() [1/2]

GSocketAddressEnumerator * Gio::SocketAddressEnumerator::gobj ( )
inline

Provides access to the underlying C GObject.

◆ gobj() [2/2]

const GSocketAddressEnumerator * Gio::SocketAddressEnumerator::gobj ( ) const
inline

Provides access to the underlying C GObject.

◆ gobj_copy()

GSocketAddressEnumerator * Gio::SocketAddressEnumerator::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

◆ next() [1/2]

Glib::RefPtr< SocketAddress > Gio::SocketAddressEnumerator::next ( )

A next() convenience overload.

◆ next() [2/2]

Glib::RefPtr< SocketAddress > Gio::SocketAddressEnumerator::next ( const Glib::RefPtr< Cancellable > &  cancellable)

Retrieves the next SocketAddress from enumerator.

Note that this may block for some amount of time. (Eg, a NetworkAddress may need to do a DNS lookup before it can return an address.) Use g_socket_address_enumerator_next_async() if you need to avoid blocking.

If enumerator is expected to yield addresses, but for some reason is unable to (eg, because of a DNS error), then the first call to g_socket_address_enumerator_next() will return an appropriate error in * error. However, if the first call to g_socket_address_enumerator_next() succeeds, then any further internal errors (other than cancellable being triggered) will be ignored.

Parameters
cancellableOptional Cancellable object, nullptr to ignore.
Returns
A SocketAddress (owned by the caller), or nullptr on error (in which case * error will be set) or if there are no more addresses.
Exceptions
Glib::Error

◆ next_async() [1/2]

void Gio::SocketAddressEnumerator::next_async ( const Glib::RefPtr< Cancellable > &  cancellable,
const SlotAsyncReady &  slot 
)

Asynchronously retrieves the next SocketAddress from the enumerator and then calls slot, which must call next_finish() to get the result.

Parameters
cancellableA Cancellable object which can be used to cancel the operation.
slotA callback slot to call after the resolution completes.

◆ next_async() [2/2]

void Gio::SocketAddressEnumerator::next_async ( const SlotAsyncReady &  slot)

Asynchronously retrieves the next SocketAddress from the enumerator and then calls slot, which must call next_finish() to get the result.

Parameters
slotA callback slot to call after the resolution completes.

◆ next_finish()

Glib::RefPtr< SocketAddress > Gio::SocketAddressEnumerator::next_finish ( const Glib::RefPtr< AsyncResult > &  result)

Retrieves the result of a completed call to g_socket_address_enumerator_next_async().

See g_socket_address_enumerator_next() for more information about error handling.

Parameters
resultA AsyncResult.
Returns
A SocketAddress (owned by the caller), or nullptr on error (in which case * error will be set) or if there are no more addresses.
Exceptions
Glib::Error

◆ operator=()

SocketAddressEnumerator & Gio::SocketAddressEnumerator::operator= ( SocketAddressEnumerator &&  src)
noexcept

Friends And Related Function Documentation

◆ wrap()

Glib::RefPtr< Gio::SocketAddressEnumerator > wrap ( GSocketAddressEnumerator *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.