rls_data.h

00001 #ifndef __RLS_DATA_H
00002 #define __RLS_DATA_H
00003 
00004 #include "rl_subscription.h"
00005 
00006 typedef struct {
00007         /* optimization - when a subscription is flagged as changed,
00008          * this number is increased (means something like priority of
00009          * call to "change all modified RLS") */
00010         int changed_subscriptions;
00011         /* hash, ... */
00012         msg_queue_t notify_mq;
00013 } rls_data_t;
00014 
00015 extern rls_data_t *rls;
00016 extern subscription_manager_t *rls_manager;
00017 
00018 /* removes all notifications for given qsa_subscription from message queue 
00019  * and discards them */
00020 void destroy_notifications(qsa_subscription_t *s);
00021 
00022 int rls_init();
00023 int rls_destroy();
00024 void rls_lock();
00025 void rls_unlock();
00026 
00027 #endif