-VG_STATIC void addon_mount_content_folder( enum workshop_file_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,
- enum workshop_file_type type,
- const char *content_ext );
-static u16 addon_cache_fetch( enum workshop_file_type type, u32 reg_index );
-static u16 addon_cache_alloc( enum workshop_file_type type, u32 reg_index );
-static void *addon_cache_item( enum workshop_file_type type, u16 id );
-static void *addon_cache_item_if_loaded( enum workshop_file_type type, u16 id );
-
-#endif /* ADDON_H */
+u32 addon_match( addon_alias *alias );
+int addon_alias_eq( addon_alias *a, addon_alias *b );
+void addon_alias_uid( addon_alias *alias, char buf[ADDON_UID_MAX] );
+int addon_uid_to_alias( const char *uid, addon_alias *alias );
+void invalidate_addon_alias( addon_alias *alias );
+void addon_mount_content_folder( enum addon_type type,
+ const char *base_folder,
+ const char *content_ext );
+void addon_mount_workshop_items(void);
+void async_addon_reg_update( void *data, u32 size );
+addon_reg *addon_mount_local_addon( const char *folder,
+ enum addon_type type,
+ const char *content_ext );
+u16 addon_cache_fetch( enum addon_type type, u32 reg_index );
+u16 addon_cache_alloc( enum addon_type type, u32 reg_index );
+void *addon_cache_item( enum addon_type type, u16 id );
+void *addon_cache_item_if_loaded( enum addon_type type, u16 id );
+void async_addon_setstate( void *data, u32 size );
+
+void addon_system_pre_update(void);
+u16 addon_cache_create_viewer( enum addon_type type, u16 reg_id);
+
+void addon_cache_watch( enum addon_type type, u16 cache_id );
+void addon_cache_unwatch( enum addon_type type, u16 cache_id );
+u16 addon_cache_create_viewer_from_uid( enum addon_type type,
+ char uid[ADDON_UID_MAX] );