00001 00002 #ifndef MICROFEEDPROVIDER_H 00003 #define MICROFEEDPROVIDER_H 00004 00005 #define DBUS_API_SUBJECT_TO_CHANGE 00006 #include <dbus/dbus.h> 00007 00025 typedef struct _MicrofeedProvider MicrofeedProvider; 00026 00029 #include <microfeed/microfeedpublisher.h> 00030 #include <microfeed/microfeedconfiguration.h> 00031 00037 typedef void (*MicrofeedProviderNoMorePublishersCallback)(MicrofeedProvider* provider, void* user_data); 00038 00039 typedef struct _MicrofeedProviderCallbacks { 00040 MicrofeedProviderNoMorePublishersCallback no_more_publishers; 00041 MicrofeedPublisherCallbacks publisher_callbacks; 00042 } MicrofeedProviderCallbacks; 00043 00044 MicrofeedProvider* microfeed_provider_new(const char* bus_name, MicrofeedConfiguration* configuration, DBusConnection* connection, MicrofeedProviderCallbacks* callbacks, void* user_data); 00045 void microfeed_provider_free(MicrofeedProvider* provider); 00046 void microfeed_provider_add_publisher(MicrofeedProvider* provider, MicrofeedPublisher* publisher); 00047 void microfeed_provider_remove_publisher(MicrofeedProvider* provider, MicrofeedPublisher* publisher); 00048 DBusConnection* microfeed_provider_get_dbus_connection(MicrofeedProvider* provider); 00049 const char* microfeed_provider_get_bus_name(MicrofeedProvider* provider); 00050 00053 #endif