diff options
Diffstat (limited to 'db.h')
-rw-r--r-- | db.h | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -0,0 +1,39 @@ +#pragma once + +#include "global.h" + + +struct db_name_id{ + char *name; + i64 id; +}; + +struct db_message{ + i64 roomid,userid,timestamp; + char *message; +}; + +struct db_message_list{ + i64 count; + struct db_message *list; +}; + +void db_init(void); +void db_close(void); + +struct db_name_id db_create_room(void); +bool db_delete_room(i64 roomid); +bool db_add_member(i64 roomid,i64 userid); +bool db_remove_member(i64 roomid,u64 userid); +i64 db_find_room(const char *name); // -1 if not found + +i64 db_create_user(const char *name,const char *pass); +bool db_set_username(i64 userid,const char *name); +bool db_set_pass(i64 userid,const char *pass); +char* db_get_username(i64 userid); +char* db_get_pass(i64 userid); +bool db_delete_user(i64 userid); +i64 db_find_user(const char *name); // -1 if not found + +bool db_create_message(i64 roomid,i64 userid,i64 timestamp,const char *message); +struct db_message_list db_get_messages(i64 roomid,i64 timestamp,i64 count); // pass timestamp==-1 for last messages |