Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

Gio::DBusInterfaceVTable Class Reference
[D-Bus API]

DBusInterfaceVTable - A class used to represent a virtual table for handling properties and method calls for a D-Bus interface. More...

#include <giomm/dbusconnection.h>

List of all members.

Public Types

typedef sigc::slot< void,
Glib::VariantBase&, const
Glib::RefPtr< DBusConnection >
&, const Glib::ustring
&, const Glib::ustring
&, const Glib::ustring
&, const Glib::ustring& > 
SlotInterfaceGetProperty
 The type for a slot which handles a method call for a D-Bus interface.
typedef sigc::slot< bool,
const Glib::RefPtr
< DBusConnection >&, const
Glib::ustring&, const
Glib::ustring&, const
Glib::ustring&, const
Glib::ustring&, const
Glib::VariantBase& > 
SlotInterfaceSetProperty
 The type for a slot which handles setting a property for a D-Bus interface.

Public Member Functions

 DBusInterfaceVTable (const SlotInterfaceMethodCall&slot_method_call, const SlotInterfaceGetProperty&slot_get_property, const SlotInterfaceSetProperty&slot_set_property)
 Constructs a new DBusInterfaceVTable using specified slots.
virtual ~DBusInterfaceVTable ()
 Destructor.
GDBusInterfaceVTable* gobj ()
 Provides access to the underlying C object.
const GDBusInterfaceVTable* gobj () const
 Provides access to the underlying C object.

Protected Member Functions

SlotInterfaceMethodCall* get_slot_method_call () const
SlotInterfaceGetPropertyget_slot_get_property () const
SlotInterfaceSetPropertyget_slot_set_property () const
void signal_slots_registered ()

Protected Attributes

GDBusInterfaceVTable gobject_
SlotInterfaceMethodCall* slot_method_call
SlotInterfaceGetPropertyslot_get_property
SlotInterfaceSetPropertyslot_set_property
bool slots_registered

Detailed Description

DBusInterfaceVTable - A class used to represent a virtual table for handling properties and method calls for a D-Bus interface.

If you want to handle getting/setting D-Bus properties asynchronously, simply register an object with the org.freedesktop.DBus.Properties D-Bus interface using Gio::DBusConnection::register_object().

Only one DBusInterfaceVTable instance may be used per registration.

Since glibmm 2.28:

Member Typedef Documentation

The type for a slot which handles a method call for a D-Bus interface.

for example,

 void on_interface_method_call(const Glib::RefPtr<Gio::DBusConnection>&
 connection, const Glib::ustring& sender, const Glib::ustring&
 object_path, const Glib::ustring& interface_name, const Glib::ustring&
 method_name, const Glib::VariantBase& parameters, const
 Glib::RefPtr<Gio::DBusMethodInvocation>& invocation);
 @encode
   */
  typedef sigc::slot<
    void,
    const Glib::RefPtr<DBusConnection>&,
    const Glib::ustring&,
    const Glib::ustring&,
    const Glib::ustring&,
    const Glib::ustring&,
    const Glib::VariantBase&,
    const Glib::RefPtr<DBusMethodInvocation>&
  > SlotInterfaceMethodCall;

Exceptions:
Glib::Error.

The type for a slot which handles setting a property for a D-Bus interface.

for example,

 bool on_interface_set_property(const Glib::RefPtr<Gio::DBusConnection>&
 connection, const Glib::ustring& sender, const Glib::ustring&
 object_path, const Glib::ustring& interface_name, const Glib::ustring&
 property_name, const Glib::VariantBase& value);
Exceptions:
Glib::Error.

Constructor & Destructor Documentation

Gio::DBusInterfaceVTable::DBusInterfaceVTable ( const SlotInterfaceMethodCall &  slot_method_call,
const SlotInterfaceGetProperty slot_get_property,
const SlotInterfaceSetProperty slot_set_property 
)

Constructs a new DBusInterfaceVTable using specified slots.

Parameters:
slot_method_callThe slot for handling incoming method calls.
slot_get_propertyThe slot for getting a property.
slot_set_propertyThe slot for setting a property.
virtual Gio::DBusInterfaceVTable::~DBusInterfaceVTable (  ) [virtual]

Destructor.


Member Function Documentation

SlotInterfaceGetProperty* Gio::DBusInterfaceVTable::get_slot_get_property (  ) const [protected]
SlotInterfaceMethodCall* Gio::DBusInterfaceVTable::get_slot_method_call (  ) const [protected]
SlotInterfaceSetProperty* Gio::DBusInterfaceVTable::get_slot_set_property (  ) const [protected]
const GDBusInterfaceVTable* Gio::DBusInterfaceVTable::gobj (  ) const [inline]

Provides access to the underlying C object.

GDBusInterfaceVTable* Gio::DBusInterfaceVTable::gobj (  ) [inline]

Provides access to the underlying C object.

void Gio::DBusInterfaceVTable::signal_slots_registered (  ) [protected]

Member Data Documentation

GDBusInterfaceVTable Gio::DBusInterfaceVTable::gobject_ [protected]
SlotInterfaceMethodCall* Gio::DBusInterfaceVTable::slot_method_call [protected]