value-expanders.c.unimplemented 608 B

123456789101112131415161718192021222324
  1. #include "value-expanders.h"
  2. bool commit_managed(ValueManager* managed, void* value) {
  3. if(value != managed->mutex->value) return false;
  4. notify_pubsub(&managed->pubsub, value);
  5. if(!osMutexGive(managed->mutex)) return false;
  6. return true;
  7. }
  8. bool write_managed(ValueManager* managed, void* data, size_t len, uint32_t timeout) {
  9. void* value = acquire_mutex(managed->mutex, timeout);
  10. if(value == NULL) return false;
  11. memcpy(value, data, len):
  12. notify_pubsub(&managed->pubsub, value);
  13. if(!release_mutex(managed->mutex, value)) return false;
  14. return true;
  15. }