#pragma once #include "threading.h" extern pthread_barrier_t all_devices_wrote_barrier; extern pthread_barrier_t devices_write_new_round_barrier; typedef struct { char *path; pthread_t thread; } active_registry_item; void initialize_device_added_flag_barrier(); active_registry_item* active_registry_item_dummy_new( const char *path); active_registry_item* active_registry_item_new( const char *path); void active_registry_item_dummy_destroy( active_registry_item *item); void active_registry_item_destroy( active_registry_item *item); typedef struct { char *path; int type; /* cannot use enums */ } pending_registry_request; pending_registry_request* pending_registry_request_new( const char *path); void pending_registry_request_destroy( pending_registry_request *req);