Tools/Extractors: Refactor CascHandles into classes

This commit is contained in:
Shauren
2020-05-10 15:09:19 +02:00
parent 13053538f2
commit 885d2a7213
15 changed files with 140 additions and 119 deletions

View File

@@ -19,9 +19,9 @@
#include "StringFormat.h"
#include <CascLib.h>
DB2CascFileSource::DB2CascFileSource(CASC::StorageHandle const& storage, uint32 fileDataId, bool printErrors /*= true*/)
DB2CascFileSource::DB2CascFileSource(std::shared_ptr<CASC::Storage const> storage, uint32 fileDataId, bool printErrors /*= true*/)
{
_fileHandle = CASC::OpenFile(storage, fileDataId, CASC_LOCALE_NONE, printErrors, true);
_fileHandle.reset(storage->OpenFile(fileDataId, CASC_LOCALE_NONE, printErrors, true));
_fileName = Trinity::StringFormat("FileDataId: %u", fileDataId);
}
@@ -33,27 +33,27 @@ bool DB2CascFileSource::IsOpen() const
bool DB2CascFileSource::Read(void* buffer, std::size_t numBytes)
{
uint32 bytesRead = 0;
return CASC::ReadFile(_fileHandle, buffer, numBytes, &bytesRead) && numBytes == bytesRead;
return _fileHandle->ReadFile(buffer, numBytes, &bytesRead) && numBytes == bytesRead;
}
int64 DB2CascFileSource::GetPosition() const
{
return CASC::GetFilePointer(_fileHandle);
return _fileHandle->GetPointer();
}
bool DB2CascFileSource::SetPosition(int64 position)
{
return CASC::SetFilePointer(_fileHandle, position);
return _fileHandle->SetPointer(position);
}
int64 DB2CascFileSource::GetFileSize() const
{
return CASC::GetFileSize(_fileHandle);
return _fileHandle->GetSize();
}
CASC::FileHandle const& DB2CascFileSource::GetHandle() const
CASC::File* DB2CascFileSource::GetNativeHandle() const
{
return _fileHandle;
return _fileHandle.get();
}
char const* DB2CascFileSource::GetFileName() const