CommonLibSSE (Parapets fork)
RE::TESFile Class Reference

#include <TESFile.h>

Public Types

enum class  Error {
  kNone = 0 , kNotFound = 1 , kNoFile = 2 , kNoForm = 3 ,
  kNoChunk = 4 , kNoID = 5 , kBadFile = 6 , kBadID = 7 ,
  kFormOpen = 8 , kFileOpen = 9 , kWriteFailure = 10 , kInvalidFile = 11 ,
  kFileInUse = 12 , kCreateFailure = 13
}
 
enum class  RecordFlag {
  kNone = 0 , kMaster = 1 << 0 , kAltered = 1 << 1 , kChecked = 1 << 2 ,
  kActive = 1 << 3 , kOptimizedFile = 1 << 4 , kTempIDOwner = 1 << 5 , kDelocalized = 1 << 7 ,
  kPrecalcDataOnly = 1 << 8 , kSmallFile = 1 << 9
}
 

Public Member Functions

TESFileDuplicate (std::uint32_t a_cacheSize=0x4000)
 
std::uint8_t GetCompileIndex () const noexcept
 
std::uint32_t GetCurrentSubRecordType ()
 
constexpr std::uint32_t GetCurrentSubRecordSize () const noexcept
 
constexpr std::uint32_t GetCurrentChunkID () const noexcept
 
stl::zstring GetFilename () const noexcept
 
FormType GetFormType ()
 
std::uint16_t GetSmallFileCompileIndex () const noexcept
 
constexpr std::uint32_t GetPartialIndex () const noexcept
 
constexpr bool IsLight () const noexcept
 
constexpr bool IsLocalized () const noexcept
 
void ReadData (void *a_buf, std::uint32_t a_size)
 
bool Seek (std::uint32_t a_offset)
 
bool SeekNextSubrecord ()
 

Public Attributes

stl::enumeration< Error, std::uint32_t > lastError
 
std::uint32_t pad004
 
TESFilethreadSafeParent
 
void * threadSafeFileMap
 
std::uint64_t unk018
 
std::uint64_t unk020
 
std::uint8_t unk028
 
std::uint8_t unk029
 
std::uint16_t pad02A
 
std::uint32_t pad02C
 
BSFilelockedFile
 
BSFilefile
 
TESBitArrayFile * formUserDataBitArray
 
TESBitArrayFile * formVersionBitArray
 
TESBitArrayFile * formIDBitArray
 
char fileName [WinAPI::MAX_PATH]
 
char path [WinAPI::MAX_PATH]
 
char * buffer
 
std::uint32_t bufferAllocSize
 
std::uint32_t firstCellOffset
 
std::uint32_t currCellOffset
 
std::uint32_t unk274
 
TESObjectCELLcurrCell
 
std::uint32_t currRefOffset
 
FORM currentform
 
std::uint32_t currentchunkID
 
std::uint32_t actualChunkSize
 
std::uint32_t filesize
 
std::uint32_t fileOffset
 
std::uint32_t formoffset
 
std::uint32_t chunkoffset
 
FORM saveform
 
std::uint32_t saveFormOffset
 
std::uint64_t saveChunkOffset
 
std::uint64_t unk2D8
 
std::uint64_t unk2E0
 
std::uint8_t unk2E8
 
bool isBigEndian
 
std::uint8_t unk2EA
 
std::uint8_t pad2EB
 
WinAPI::WIN32_FIND_DATAA fileData
 
float unk42C
 
std::uint32_t unk430
 
std::uint32_t flags
 
stl::enumeration< RecordFlag, std::uint32_t > recordFlags
 
std::uint32_t pad43C
 
BSSimpleList< const char * > masters
 
BSSimpleList< std::uint64_t * > mastersData
 
std::uint32_t masterCount
 
std::uint32_t pad464
 
TESFile ** masterPtrs
 
WinAPI::FILETIME deletedFormTime
 
std::uint8_t compileIndex
 
std::uint8_t pad479
 
std::uint16_t smallFileCompileIndex
 
std::uint32_t pad47C
 
BSString createdBy
 
BSString summary
 
char * decompressedFormBuffer
 
std::uint32_t decompressedFormBufferSize
 
std::uint32_t pad4AC
 
void * reservedDecompressionBuffer
 
std::uint32_t reservedDecompressionBufferSize
 
std::uint32_t pad4BC
 
void * unk4C0
 

Member Enumeration Documentation

◆ Error

enum RE::TESFile::Error
strong
Enumerator
kNone 
kNotFound 
kNoFile 
kNoForm 
kNoChunk 
kNoID 
kBadFile 
kBadID 
kFormOpen 
kFileOpen 
kWriteFailure 
kInvalidFile 
kFileInUse 
kCreateFailure 

◆ RecordFlag

Enumerator
kNone 
kMaster 
kAltered 
kChecked 
kActive 
kOptimizedFile 
kTempIDOwner 
kDelocalized 
kPrecalcDataOnly 
kSmallFile 

Member Function Documentation

◆ Duplicate()

TESFile* RE::TESFile::Duplicate ( std::uint32_t  a_cacheSize = 0x4000)

◆ GetCompileIndex()

std::uint8_t RE::TESFile::GetCompileIndex ( ) const
inlinenoexcept

◆ GetCurrentChunkID()

constexpr std::uint32_t RE::TESFile::GetCurrentChunkID ( ) const
inlineconstexprnoexcept

◆ GetCurrentSubRecordSize()

constexpr std::uint32_t RE::TESFile::GetCurrentSubRecordSize ( ) const
inlineconstexprnoexcept

◆ GetCurrentSubRecordType()

std::uint32_t RE::TESFile::GetCurrentSubRecordType ( )

◆ GetFilename()

stl::zstring RE::TESFile::GetFilename ( ) const
inlinenoexcept

◆ GetFormType()

FormType RE::TESFile::GetFormType ( )

◆ GetPartialIndex()

constexpr std::uint32_t RE::TESFile::GetPartialIndex ( ) const
inlineconstexprnoexcept

◆ GetSmallFileCompileIndex()

std::uint16_t RE::TESFile::GetSmallFileCompileIndex ( ) const
inlinenoexcept

◆ IsLight()

constexpr bool RE::TESFile::IsLight ( ) const
inlineconstexprnoexcept

◆ IsLocalized()

constexpr bool RE::TESFile::IsLocalized ( ) const
inlineconstexprnoexcept

◆ ReadData()

void RE::TESFile::ReadData ( void *  a_buf,
std::uint32_t  a_size 
)

◆ Seek()

bool RE::TESFile::Seek ( std::uint32_t  a_offset)

◆ SeekNextSubrecord()

bool RE::TESFile::SeekNextSubrecord ( )

Member Data Documentation

◆ actualChunkSize

std::uint32_t RE::TESFile::actualChunkSize

◆ buffer

char* RE::TESFile::buffer

◆ bufferAllocSize

std::uint32_t RE::TESFile::bufferAllocSize

◆ chunkoffset

std::uint32_t RE::TESFile::chunkoffset

◆ compileIndex

std::uint8_t RE::TESFile::compileIndex

◆ createdBy

BSString RE::TESFile::createdBy

◆ currCell

TESObjectCELL* RE::TESFile::currCell

◆ currCellOffset

std::uint32_t RE::TESFile::currCellOffset

◆ currentchunkID

std::uint32_t RE::TESFile::currentchunkID

◆ currentform

FORM RE::TESFile::currentform

◆ currRefOffset

std::uint32_t RE::TESFile::currRefOffset

◆ decompressedFormBuffer

char* RE::TESFile::decompressedFormBuffer

◆ decompressedFormBufferSize

std::uint32_t RE::TESFile::decompressedFormBufferSize

◆ deletedFormTime

WinAPI::FILETIME RE::TESFile::deletedFormTime

◆ file

BSFile* RE::TESFile::file

◆ fileData

WinAPI::WIN32_FIND_DATAA RE::TESFile::fileData

◆ fileName

char RE::TESFile::fileName[WinAPI::MAX_PATH]

◆ fileOffset

std::uint32_t RE::TESFile::fileOffset

◆ filesize

std::uint32_t RE::TESFile::filesize

◆ firstCellOffset

std::uint32_t RE::TESFile::firstCellOffset

◆ flags

std::uint32_t RE::TESFile::flags

◆ formIDBitArray

TESBitArrayFile* RE::TESFile::formIDBitArray

◆ formoffset

std::uint32_t RE::TESFile::formoffset

◆ formUserDataBitArray

TESBitArrayFile* RE::TESFile::formUserDataBitArray

◆ formVersionBitArray

TESBitArrayFile* RE::TESFile::formVersionBitArray

◆ isBigEndian

bool RE::TESFile::isBigEndian

◆ lastError

stl::enumeration<Error, std::uint32_t> RE::TESFile::lastError

◆ lockedFile

BSFile* RE::TESFile::lockedFile

◆ masterCount

std::uint32_t RE::TESFile::masterCount

◆ masterPtrs

TESFile** RE::TESFile::masterPtrs

◆ masters

BSSimpleList<const char*> RE::TESFile::masters

◆ mastersData

BSSimpleList<std::uint64_t*> RE::TESFile::mastersData

◆ pad004

std::uint32_t RE::TESFile::pad004

◆ pad02A

std::uint16_t RE::TESFile::pad02A

◆ pad02C

std::uint32_t RE::TESFile::pad02C

◆ pad2EB

std::uint8_t RE::TESFile::pad2EB

◆ pad43C

std::uint32_t RE::TESFile::pad43C

◆ pad464

std::uint32_t RE::TESFile::pad464

◆ pad479

std::uint8_t RE::TESFile::pad479

◆ pad47C

std::uint32_t RE::TESFile::pad47C

◆ pad4AC

std::uint32_t RE::TESFile::pad4AC

◆ pad4BC

std::uint32_t RE::TESFile::pad4BC

◆ path

char RE::TESFile::path[WinAPI::MAX_PATH]

◆ recordFlags

stl::enumeration<RecordFlag, std::uint32_t> RE::TESFile::recordFlags

◆ reservedDecompressionBuffer

void* RE::TESFile::reservedDecompressionBuffer

◆ reservedDecompressionBufferSize

std::uint32_t RE::TESFile::reservedDecompressionBufferSize

◆ saveChunkOffset

std::uint64_t RE::TESFile::saveChunkOffset

◆ saveform

FORM RE::TESFile::saveform

◆ saveFormOffset

std::uint32_t RE::TESFile::saveFormOffset

◆ smallFileCompileIndex

std::uint16_t RE::TESFile::smallFileCompileIndex

◆ summary

BSString RE::TESFile::summary

◆ threadSafeFileMap

void* RE::TESFile::threadSafeFileMap

◆ threadSafeParent

TESFile* RE::TESFile::threadSafeParent

◆ unk018

std::uint64_t RE::TESFile::unk018

◆ unk020

std::uint64_t RE::TESFile::unk020

◆ unk028

std::uint8_t RE::TESFile::unk028

◆ unk029

std::uint8_t RE::TESFile::unk029

◆ unk274

std::uint32_t RE::TESFile::unk274

◆ unk2D8

std::uint64_t RE::TESFile::unk2D8

◆ unk2E0

std::uint64_t RE::TESFile::unk2E0

◆ unk2E8

std::uint8_t RE::TESFile::unk2E8

◆ unk2EA

std::uint8_t RE::TESFile::unk2EA

◆ unk42C

float RE::TESFile::unk42C

◆ unk430

std::uint32_t RE::TESFile::unk430

◆ unk4C0

void* RE::TESFile::unk4C0

The documentation for this class was generated from the following file: