1*de1e4e89SAndroid Build Coastguard Worker #ifndef DB_NAMES_H_ 2*de1e4e89SAndroid Build Coastguard Worker #define DB_NAMES_H_ 1 3*de1e4e89SAndroid Build Coastguard Worker 4*de1e4e89SAndroid Build Coastguard Worker #define IDNAME_MAX 256 5*de1e4e89SAndroid Build Coastguard Worker 6*de1e4e89SAndroid Build Coastguard Worker struct db_entry { 7*de1e4e89SAndroid Build Coastguard Worker struct db_entry *next; 8*de1e4e89SAndroid Build Coastguard Worker unsigned int id; 9*de1e4e89SAndroid Build Coastguard Worker char *name; 10*de1e4e89SAndroid Build Coastguard Worker }; 11*de1e4e89SAndroid Build Coastguard Worker 12*de1e4e89SAndroid Build Coastguard Worker struct db_names { 13*de1e4e89SAndroid Build Coastguard Worker unsigned int size; 14*de1e4e89SAndroid Build Coastguard Worker struct db_entry *cached; 15*de1e4e89SAndroid Build Coastguard Worker struct db_entry **hash; 16*de1e4e89SAndroid Build Coastguard Worker int max; 17*de1e4e89SAndroid Build Coastguard Worker }; 18*de1e4e89SAndroid Build Coastguard Worker 19*de1e4e89SAndroid Build Coastguard Worker struct db_names *db_names_alloc(void); 20*de1e4e89SAndroid Build Coastguard Worker int db_names_load(struct db_names *db, const char *path); 21*de1e4e89SAndroid Build Coastguard Worker void db_names_free(struct db_names *db); 22*de1e4e89SAndroid Build Coastguard Worker 23*de1e4e89SAndroid Build Coastguard Worker char *id_to_name(struct db_names *db, int id, char *name); 24*de1e4e89SAndroid Build Coastguard Worker int name_to_id(struct db_names *db, int *id, const char *name); 25*de1e4e89SAndroid Build Coastguard Worker 26*de1e4e89SAndroid Build Coastguard Worker #endif 27