static int lu_state_restore(void) { /* Restore the state. */ u32_t value; ds_retrieve_u32("bus", &value); ds_delete_u32("bus"); bus = (int) value; ds_retrieve_u32("address", &value); ds_delete_u32("address"); address = (int) value; return OK; }
/*===========================================================================* * test_u32 * *===========================================================================*/ void test_u32(void) { int r; unsigned long value; /* Publish and retrieve. */ r = ds_publish_u32(key_u32, 1234, 0); assert(r == OK); r = ds_retrieve_u32(key_u32, &value); assert(r == OK && value == 1234); /* If dstest deletes 'test_u32' immediately after publishing it, * subs will catch the event, but it can't check it immediately. * So dstest will sleep 2 seconds to wait for subs to complete. */ sleep(2); /* Publish again without DSF_OVERWRITE. */ r = ds_publish_u32(key_u32, 4321, 0); assert(r == EEXIST); /* Publish again with DSF_OVERWRITE to overwrite it. */ r = ds_publish_u32(key_u32, 4321, DSF_OVERWRITE); assert(r == OK); r = ds_retrieve_u32(key_u32, &value); assert(r == OK && value == 4321); /* Delete. */ r = ds_delete_u32(key_u32); assert(r == OK); r = ds_retrieve_u32(key_u32, &value); assert(r == ESRCH); printf("DSTEST: U32 test successful!\n"); }
PRIVATE int lu_state_restore() { /* Restore the state. */ u32_t value; ds_retrieve_u32("open_counter", &value); ds_delete_u32("open_counter"); open_counter = (int) value; return OK; }
static int lu_state_restore(void) { /* Restore the state. */ u32_t value; ds_retrieve_u32("cec_bus", &value); ds_delete_u32("cec_bus"); cec_bus = (int) value; ds_retrieve_u32("hdmi_bus", &value); ds_delete_u32("hdmi_bus"); hdmi_bus = (int) value; ds_retrieve_u32("cec_address", &value); ds_delete_u32("cec_address"); cec_address = (int) value; ds_retrieve_u32("hdmi_address", &value); ds_delete_u32("hdmi_address"); hdmi_address = (int) value; return OK; }