Internalfunctions - SmartSlog
|
00001 00035 #include "utils/list.h" 00036 #include "structures.h" 00037 #include "ss_subscribe.h" 00038 00039 #ifndef SS_SUBSCRIPTION_INTERNAL_H 00040 #define SS_SUBSCRIPTION_INTERNAL_H 00041 00042 00043 00044 #ifdef __cplusplus 00045 extern "C" { 00046 #endif 00047 00048 /******************************************************************************/ 00049 /****************************** Structures list *******************************/ 00050 00053 00055 typedef struct subscription_data_s { 00056 individual_t *ind; 00057 list_t *properties; 00058 } subscription_data_t; 00059 00060 00071 struct subscription_s { 00072 int rtti; 00073 list_t *sbrc_data; 00074 list_t *sbrc_classes; 00075 void (*callback)(struct subscription_s* subscription); 00076 bool is_active; 00077 bool is_asynchronous; 00078 ss_subs_info_t info; 00079 ss_info_t* ss_info; 00081 subscription_changes_data_t *last_changes; 00082 void (*changed_handler)(subscription_t *sender); 00083 void (*unsubscription_handler)(subscription_t *sender); 00084 }; 00085 00086 00087 00088 00089 /******************************************************************************/ 00090 /****************************** Functions list ********************************/ 00091 00093 00094 subscription_data_t* new_subscription_data(individual_t *ind, list_t *properties); 00095 void free_subscription_data(subscription_data_t *data, bool free_prop_list); 00096 void stop_all_subscriptions(); 00097 00099 00100 00101 #ifdef __cplusplus 00102 } 00103 #endif 00104 00105 #endif /* SS_SUBSCRIPTION_INTERNAL_H */ 00106