OpenSync 0.22
|
00001 00003 struct OSyncFlag { 00005 osync_bool is_set; 00007 osync_bool is_changing; 00009 osync_bool default_val; 00011 OSyncFlag *comb_flag; 00013 unsigned int num_not_set; 00015 unsigned int num_set; 00017 osync_bool is_comb; 00019 OSyncFlagTriggerFunc pos_trigger_func; 00021 void *pos_user_data1; 00023 void *pos_user_data2; 00025 OSyncFlagTriggerFunc neg_trigger_func; 00027 void *neg_user_data1; 00029 void *neg_user_data2; 00031 osync_bool is_any; 00032 }; 00033 00034 OSyncFlag *osync_flag_new(OSyncFlag *parent); 00035 OSyncFlag *osync_comb_flag_new(osync_bool any, osync_bool default_val); 00036 void osync_flag_set_pos_trigger(OSyncFlag *flag, OSyncFlagTriggerFunc func, void *data1, void *data2); 00037 void osync_flag_set_neg_trigger(OSyncFlag *flag, OSyncFlagTriggerFunc func, void *data1, void *data2); 00038 void osync_flag_calculate_comb(OSyncFlag *flag); 00039 osync_bool osync_flag_is_set(OSyncFlag *flag); 00040 osync_bool osync_flag_is_not_set(OSyncFlag *flag); 00041 void osync_comb_flag_update(OSyncFlag *combflag, OSyncFlag *flag, osync_bool prev_state); 00042 void osync_flag_changing(OSyncFlag *flag); 00043 void osync_flag_cancel(OSyncFlag *flag); 00044 void osync_flag_unset(OSyncFlag *flag); 00045 void osync_flag_set(OSyncFlag *flag); 00046 void osync_flag_calc_trigger(OSyncFlag *flag, osync_bool oldstate); 00047 void osync_change_flags_detach(OSyncChange *change); 00048 osync_bool osync_flag_get_state(OSyncFlag *flag); 00049 void osync_flag_free(OSyncFlag *flag); 00050 void osync_flag_set_state(OSyncFlag *flag, osync_bool state); 00051 void osync_flag_attach(OSyncFlag *flag, OSyncFlag *target); 00052 void osync_flag_detach(OSyncFlag *flag); 00053 osync_bool osync_flag_is_attached(OSyncFlag *flag);