Implementing async api
This commit is contained in:
@@ -38,29 +38,79 @@
|
||||
typedef enum {
|
||||
KR_SUCCESS = 0,
|
||||
KR_ERROR_NOT_INITIALIZED = 1,
|
||||
KR_ERROR_WRONG_THREAD = 2,
|
||||
KR_ERROR_NOT_IMPLEMENTED = 2,
|
||||
KR_RESULT_MAX_ENUM = 0x7FFFFFFF
|
||||
} KrResult;
|
||||
|
||||
typedef enum {
|
||||
KR_STRUCTURE_TYPE_INITIALIZE = 0,
|
||||
KR_STRUCTURE_TYPE_SHUTDOWN = 1,
|
||||
KR_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
|
||||
KR_STRUCTURE_TYPE_INITIALIZE = 0,
|
||||
KR_STRUCTURE_TYPE_SHUTDOWN = 1,
|
||||
KR_STRUCTURE_TYPE_LOAD_RESOURCE = 0x00010000,
|
||||
KR_STRUCTURE_TYPE_UNLOAD_RESOURCE = 0x00010001,
|
||||
KR_STRUCTURE_TYPE_SAVE_RESOURCE = 0x00010002,
|
||||
KR_STRUCTURE_TYPE_MAP_RESOURCE = 0x00010003,
|
||||
KR_STRUCTURE_TYPE_UNMAP_RESOURCE = 0x00010004,
|
||||
KR_STRUCTURE_TYPE_CREATE_BUNDLE = 0x00010005,
|
||||
KR_STRUCTURE_TYPE_MOVE_TO_BUNDLE = 0x00010006,
|
||||
|
||||
KR_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
|
||||
} KrStructureType;
|
||||
|
||||
typedef int KrResourceMapIndex;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
void* pNext;
|
||||
size_t resourceMapSize;
|
||||
} KrInitializeInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
void* pNext;
|
||||
const char* pResourcePath;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrLoadResourceInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrUnloadResourceInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
const char* presourceName;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrMapResourceInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrUnmapResourceInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
const char* pResourcePath;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrSaveResourceInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
const char* pBundleName;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
} KrCreateBundleInfo;
|
||||
|
||||
typedef struct {
|
||||
KrStructureType sType;
|
||||
KrResourceMapIndex resourceHandle;
|
||||
KrResourceMapIndex bundleHandle;
|
||||
} KrMoveToBundleInfo;
|
||||
|
||||
KrResult KrInitialize(const KrInitializeInfo* pInitializeInfo);
|
||||
KrResult KrShutdown();
|
||||
KrResult KrLoadResource(const KrLoadResourceInfo* pLoadResourceInfo);
|
||||
KrResult KrUnloadResource(const KrUnloadResourceInfo* pUnloadResourceInfo);
|
||||
KrResult KrSaveResource(const KrSaveResourceInfo* pSaveResourceInfo);
|
||||
KrResult KrMapResource(const KrMapResourceInfo* pMapResourceInfo);
|
||||
KrResult KrUnmapResource(const KrUnmapResourceInfo* pUnmapResourceInfo);
|
||||
KrResult KrCreateBundle(const KrCreateBundleInfo* pCreateBundleInfo);
|
||||
KrResult KrMoveToBundle(const KrMoveToBundleInfo* pMoveToBundleInfo);
|
||||
|
||||
#endif // KRAKEN_H
|
||||
|
||||
Reference in New Issue
Block a user