00001 00002 #ifndef MICROFEEDPROVIDER_H 00003 #define MICROFEEDPROVIDER_H 00004 00005 #define DBUS_API_SUBJECT_TO_CHANGE 00006 #include <dbus/dbus.h> 00007 00027 typedef struct _MicrofeedProvider MicrofeedProvider; 00028 00031 #include <microfeed-provider/microfeedpublisher.h> 00032 #include <microfeed-common/microfeedconfiguration.h> 00033 00039 typedef void (*MicrofeedProviderNoMorePublishersCallback)(MicrofeedProvider* provider, void* user_data); 00040 00041 typedef struct _MicrofeedProviderCallbacks { 00042 MicrofeedProviderNoMorePublishersCallback no_more_publishers; 00043 MicrofeedPublisherCallbacks publisher_callbacks; 00044 } MicrofeedProviderCallbacks; 00045 00046 MicrofeedProvider* microfeed_provider_new(const char* bus_name, DBusConnection* connection, MicrofeedProviderCallbacks* callbacks, void* user_data); 00047 void microfeed_provider_free(MicrofeedProvider* provider); 00048 void microfeed_provider_add_publisher(MicrofeedProvider* provider, MicrofeedPublisher* publisher); 00049 void microfeed_provider_remove_publisher(MicrofeedProvider* provider, MicrofeedPublisher* publisher); 00050 DBusConnection* microfeed_provider_get_dbus_connection(MicrofeedProvider* provider); 00051 const char* microfeed_provider_get_bus_name(MicrofeedProvider* provider); 00052 00058 #endif