#ifndef PKE_ASSET_MANAGER_HPP #define PKE_ASSET_MANAGER_HPP #include "macros.hpp" #include "memory.hpp" #include #include #include #include TypeSafeInt_H(AssetHandle, uint64_t, UINT64_MAX); struct Asset{ char key[16] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; int64_t size = 0; void *ptr = nullptr; }; void AM_Init(); AssetHandle AM_Register(const void *data, int64_t size, const char *key); AssetHandle AM_Register(const char *path); void AM_Destroy(AssetHandle assetHandle); const Asset *AM_Get(AssetHandle assetHandle); #endif /* PKE_ASSET_MANAGER_HPP */