///////////////////////////////////////////////////////////////////// // Created by [Dennis Andersen] [2013] ///////////////////////////////////////////////////////////////////// #ifndef MISC_OYSTER_RESOURCE_H #define MISC_OYSTER_RESOURCE_H namespace Oyster { namespace Resource { struct CustomData; /** A Resource handle representing various resources */ typedef void* OHRESOURCE; /** Typedef on a fuction required for custom unloading */ typedef void(*CustomUnloadFunction)(void* loadedData); /** Typedef on a fuction required for custom loading */ <<<<<<< HEAD typedef CustomData&(*CustomLoadFunction)(const wchar_t filename[]); ======= typedef void(*CustomLoadFunction)(const wchar_t filename[], CustomData& outData); >>>>>>> d08644e8e1ecc56f4d9dfa6a9aa33df94d9e655a /** An enum class representing all avalible resources that is supported. */ enum ResourceType { //Byte ResourceType_Byte_Raw, /**< Handle can be interpeted as char[] or char* */ ResourceType_Byte_ANSI, /**< Handle can be interpeted as char[] or char* */ ResourceType_Byte_UTF8, /**< Handle can be interpeted as char[] or char* */ ResourceType_Byte_UNICODE, /**< Handle can be interpeted as char[] or char* */ ResourceType_Byte_UTF16LE, /**< Handle can be interpeted as char[] or char* */ ResourceType_COUNT, /**< Not used. */ ResourceType_UNKNOWN = -1, /**< Handle can be interpeted as void* */ ResourceType_INVALID = -2, /**< Invalid or non existing resource */ }; /** A struct to fill when doing a custom resource Load. */ struct CustomData { void* loadedData; //