finish CKBitmapData::DumpToChunk

This commit is contained in:
2023-09-28 23:29:52 +08:00
parent b217da8fb8
commit 1575186c69
7 changed files with 119 additions and 7 deletions

View File

@ -323,8 +323,8 @@ namespace LibCmo::CK2::DataHandlers {
return nullptr;
}
std::unique_ptr<CKBitmapHandler, CKBitmapHandlerDeleter> CKBitmapHandler::GetBitmapHandlerWrapper(const CKFileExtension& ext, const CKGUID& guid) {
return std::unique_ptr<CKBitmapHandler, CKBitmapHandlerDeleter>(GetBitmapHandler(ext, guid));
CKBitmapHandlerWrapper_t CKBitmapHandler::GetBitmapHandlerWrapper(const CKFileExtension& ext, const CKGUID& guid) {
return CKBitmapHandlerWrapper_t(GetBitmapHandler(ext, guid));
}
void CKBitmapHandlerDeleter::operator()(CKBitmapHandler* handler) {

View File

@ -16,6 +16,10 @@ namespace LibCmo::CK2::DataHandlers {
CKBitmapHandlerDeleter(const CKBitmapHandlerDeleter&) noexcept {}
void operator()(CKBitmapHandler* handler);
};
/**
* @brief The type of Auto-free wrapper of CKBitmapHandler.
*/
using CKBitmapHandlerWrapper_t = std::unique_ptr<CKBitmapHandler, CKBitmapHandlerDeleter>;
/**
* The interface about processing bitmap data between raw data and specific data.
@ -41,7 +45,7 @@ namespace LibCmo::CK2::DataHandlers {
/**
* @brief A auto free wrapper for GetBitmapHandler
*/
static std::unique_ptr<CKBitmapHandler, CKBitmapHandlerDeleter> GetBitmapHandlerWrapper(const CKFileExtension& ext, const CKGUID& guid);
static CKBitmapHandlerWrapper_t GetBitmapHandlerWrapper(const CKFileExtension& ext, const CKGUID& guid);
/**
* @brief General CKBitmapHandler disposer
* @param handler[in] The handler need to be free.