2
/*! @brief The functions that can be called on a plugin */
4
/** If this flag is raised */
6
/** If this flag is currently changing its value */
7
osync_bool is_changing;
8
/** The default value of the flag if no children are conencted */
9
osync_bool default_val;
12
/** The cached number of unset child flags */
13
unsigned int num_not_set;
14
/** The cached number of set child flags */
16
/** If this flag is a combined flag */
18
/** The function to be called when the value changes from neq to pos */
19
OSyncFlagTriggerFunc pos_trigger_func;
20
/** To first value to be passed to the pos triger function */
22
/** To second value to be passed to the pos triger function */
24
/** The function to be called when the value changes from pos to neq */
25
OSyncFlagTriggerFunc neg_trigger_func;
26
/** To first value to be passed to the neq triger function */
28
/** To second value to be passed to the neq triger function */
30
/** Should the combined flag be a OR or a AND flag? */
34
OSyncFlag *osync_flag_new(OSyncFlag *parent);
35
OSyncFlag *osync_comb_flag_new(osync_bool any, osync_bool default_val);
36
void osync_flag_set_pos_trigger(OSyncFlag *flag, OSyncFlagTriggerFunc func, void *data1, void *data2);
37
void osync_flag_set_neg_trigger(OSyncFlag *flag, OSyncFlagTriggerFunc func, void *data1, void *data2);
38
void osync_flag_calculate_comb(OSyncFlag *flag);
39
osync_bool osync_flag_is_set(OSyncFlag *flag);
40
osync_bool osync_flag_is_not_set(OSyncFlag *flag);
41
void osync_comb_flag_update(OSyncFlag *combflag, OSyncFlag *flag, osync_bool prev_state);
42
void osync_flag_changing(OSyncFlag *flag);
43
void osync_flag_cancel(OSyncFlag *flag);
44
void osync_flag_unset(OSyncFlag *flag);
45
void osync_flag_set(OSyncFlag *flag);
46
void osync_flag_calc_trigger(OSyncFlag *flag, osync_bool oldstate);
47
void osync_change_flags_detach(OSyncChange *change);
48
osync_bool osync_flag_get_state(OSyncFlag *flag);
49
void osync_flag_free(OSyncFlag *flag);
50
void osync_flag_set_state(OSyncFlag *flag, osync_bool state);
51
void osync_flag_attach(OSyncFlag *flag, OSyncFlag *target);
52
void osync_flag_detach(OSyncFlag *flag);
53
osync_bool osync_flag_is_attached(OSyncFlag *flag);