From 11d051ae6a911f63fd321ba7c5356023c434fd85 Mon Sep 17 00:00:00 2001 From: Olli Salli Date: Fri, 16 Mar 2012 19:56:16 +0200 Subject: SalutPluginInitializeImpl: Replace the protocol ctor callback with a vtable of callbacks --- salut/plugin.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'salut') diff --git a/salut/plugin.h b/salut/plugin.h index fe45ddf6..c10ba573 100644 --- a/salut/plugin.h +++ b/salut/plugin.h @@ -65,16 +65,23 @@ typedef GPtrArray * (*SalutPluginCreateChannelManagersImpl) ( SalutPlugin *plugin, SalutPluginConnection *plugin_connection); +typedef struct _SalutPluginInitializeCallbacks SalutPluginInitializeCallbacks; + typedef TpBaseProtocol * (*SalutCreateProtocolImpl) (GType backend_type, const gchar *dnssd_name, const gchar *protocol_name, const gchar *english_name, const gchar *icon_name); +struct _SalutPluginInitializeCallbacks { + SalutCreateProtocolImpl create_protocol; + GCallback _padding[7]; +}; + typedef void (*SalutPluginInitializeImpl) ( SalutPlugin *plugin, TpBaseConnectionManager *connection_manager, - SalutCreateProtocolImpl callback); + const SalutPluginInitializeCallbacks *callbacks); #define SALUT_PLUGIN_CURRENT_VERSION 1 @@ -157,7 +164,7 @@ SalutSidecar * salut_plugin_create_sidecar_finish ( void salut_plugin_initialize ( SalutPlugin *plugin, TpBaseConnectionManager *connection_manager, - SalutCreateProtocolImpl proto_ctor); + const SalutPluginInitializeCallbacks *callbacks); GPtrArray * salut_plugin_create_channel_managers ( SalutPlugin *plugin, -- cgit v1.2.1