X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=addon.h;h=f63566e696d5ab32039aa08073a986d85cc67b25;hb=137d40d96fe923600d8378b8e138e3c276f27ff4;hp=6dda8a8bdb3347454d3a3d88a468a65920e876f5;hpb=c77e15a8dc7b976371a473bc8794cb55601d82f6;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/addon.h b/addon.h index 6dda8a8..f63566e 100644 --- a/addon.h +++ b/addon.h @@ -9,11 +9,6 @@ #include "world.h" #include "player.h" -#define ADDON_FOLDERNAME_MAX 64 - -/* total count that we have knowledge of */ -#define ADDON_MOUNTED_MAX 128 - typedef struct addon_reg addon_reg; typedef struct addon_cache_entry addon_cache_entry; typedef struct addon_alias addon_alias; @@ -79,13 +74,16 @@ static int addon_get_content_folder( addon_reg *reg, vg_str *folder ); /* scanning routines */ static u32 addon_match( addon_alias *alias ); -static void addon_alias_uid( addon_alias *alias, char buf[76] ); -VG_STATIC void addon_mount_content_folder( enum addon_type type, +static int addon_alias_eq( addon_alias *a, addon_alias *b ); +static void addon_alias_uid( addon_alias *alias, char buf[ADDON_UID_MAX] ); +static int addon_uid_to_alias( char uid[ADDON_UID_MAX], addon_alias *alias ); +static void invalidate_addon_alias( addon_alias *alias ); +static void addon_mount_content_folder( enum addon_type type, const char *base_folder, const char *content_ext ); -VG_STATIC void addon_mount_workshop_items(void); -VG_STATIC void async_addon_reg_update( void *data, u32 size ); -VG_STATIC addon_reg *addon_mount_local_addon( const char *folder, +static void addon_mount_workshop_items(void); +static void async_addon_reg_update( void *data, u32 size ); +static addon_reg *addon_mount_local_addon( const char *folder, enum addon_type type, const char *content_ext ); static u16 addon_cache_fetch( enum addon_type type, u32 reg_index ); @@ -98,5 +96,7 @@ static u16 addon_cache_create_viewer( enum addon_type type, u16 reg_id); static void addon_cache_watch( enum addon_type type, u16 cache_id ); static void addon_cache_unwatch( enum addon_type type, u16 cache_id ); +static u16 addon_cache_create_viewer_from_uid( enum addon_type type, + char uid[ADDON_UID_MAX] ); #endif /* ADDON_H */