API -&nbspSmartSlog KP Library
subscription_changes_internal.h
Go to the documentation of this file.
1 
40 #ifndef SUBSCRIPTION_CHANGES_INTERNAL_H
41 #define SUBSCRIPTION_CHANGES_INTERNAL_H
42 
43 #include "subscription_changes.h"
44 
45 #ifdef __cplusplus
46 extern "C" {
47 #endif
48 
49 /******************************************************************************/
50 /****************************** Structures list *******************************/
51 
53 
69  int rtti;
70  int sequence_number;
71  list_t updated_props;
72  list_t removed_props;
73  list_t inserted_props;
74  list_t updated_individuals;
75  list_t removed_individuals;
76  list_t inserted_individuals;
77 };
78 
80 
81 
82 /******************************************************************************/
83 /************************* Internal Functions list ****************************/
84 
86 
87 subscription_changes_data_t* new_subscription_changes();
88 void free_subscription_changes(subscription_changes_data_t *changes);
89 
90 void set_sequence_number(subscription_changes_data_t *changes,
91  int sequence_number);
92 
93 void inc_sequence_number(subscription_changes_data_t *changes);
94 
95 
96 bool add_individual_to_changes(subscription_changes_data_t *changes,
97  individual_t *individual, action_type action);
98 bool add_individual_uuid_to_changes(subscription_changes_data_t *changes,
99  const char *uuid, action_type action);
100 bool add_property_to_changes(subscription_changes_data_t *changes,
101  individual_t *owner, property_t* property,
102  const void *new_data, const void *old_data,
103  action_type action);
104 
105 
106 void clean_changes_data(subscription_changes_data_t *changes);
107 
109 
110 
111 #ifdef __cplusplus
112 }
113 #endif
114 
115 #endif /* SUBSCRIPTION_CHANGES_INTERNAL_H */
116