WoW Model Viewer
Your premiere tool for viewing, equipping and animating World of Warcraft models.
Loading...
Searching...
No Matches
CASCFolder Class Reference

Manages a CASC (Content Addressable Storage Container) archive. More...

#include <CASCFolder.h>

Collaboration diagram for CASCFolder:
[legend]

Public Member Functions

 CASCFolder ()
 
void init (const std::string &path)
 
std::string locale ()
 
std::string version ()
 
std::vector< core::GameConfigconfigsFound ()
 
bool setConfig (core::GameConfig config)
 
int lastError ()
 
bool fileExists (int id)
 
bool openFile (int id, HANDLE *result)
 
bool closeFile (HANDLE file)
 

Private Member Functions

 CASCFolder (const CASCFolder &)=delete
 
CASCFolderoperator= (const CASCFolder &)=delete
 
void initBuildInfo ()
 
void addExtraEncryptionKeys ()
 

Private Attributes

int m_currentCascLocale
 
core::GameConfig m_currentConfig
 
std::string m_folder
 
int m_openError
 
HANDLE hStorage
 
std::vector< core::GameConfigm_configs
 

Detailed Description

Manages a CASC (Content Addressable Storage Container) archive.

Handles archive opening, locale/version detection, file existence checks, and individual file open/close operations via CascLib.

Definition at line 23 of file CASCFolder.h.

Constructor & Destructor Documentation

◆ CASCFolder() [1/2]

CASCFolder::CASCFolder ( )

Definition at line 20 of file CASCFolder.cpp.

◆ CASCFolder() [2/2]

CASCFolder::CASCFolder ( const CASCFolder )
privatedelete

Member Function Documentation

◆ addExtraEncryptionKeys()

void CASCFolder::addExtraEncryptionKeys ( )
private

Definition at line 185 of file CASCFolder.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ closeFile()

bool CASCFolder::closeFile ( HANDLE  file)

Definition at line 180 of file CASCFolder.cpp.

◆ configsFound()

std::vector< core::GameConfig > CASCFolder::configsFound ( )
inline

Definition at line 33 of file CASCFolder.h.

◆ fileExists()

bool CASCFolder::fileExists ( int  id)

Definition at line 157 of file CASCFolder.cpp.

◆ init()

void CASCFolder::init ( const std::string &  path)

Definition at line 25 of file CASCFolder.cpp.

Here is the call graph for this function:

◆ initBuildInfo()

void CASCFolder::initBuildInfo ( )
private

Definition at line 83 of file CASCFolder.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lastError()

int CASCFolder::lastError ( )
inline

Definition at line 36 of file CASCFolder.h.

◆ locale()

std::string CASCFolder::locale ( )
inline

Definition at line 30 of file CASCFolder.h.

◆ openFile()

bool CASCFolder::openFile ( int  id,
HANDLE *  result 
)

Definition at line 175 of file CASCFolder.cpp.

◆ operator=()

CASCFolder & CASCFolder::operator= ( const CASCFolder )
privatedelete

◆ setConfig()

bool CASCFolder::setConfig ( core::GameConfig  config)

Definition at line 35 of file CASCFolder.cpp.

Here is the call graph for this function:

◆ version()

std::string CASCFolder::version ( )
inline

Definition at line 31 of file CASCFolder.h.

Here is the caller graph for this function:

Member Data Documentation

◆ hStorage

HANDLE CASCFolder::hStorage
private

Definition at line 59 of file CASCFolder.h.

◆ m_configs

std::vector<core::GameConfig> CASCFolder::m_configs
private

Definition at line 61 of file CASCFolder.h.

◆ m_currentCascLocale

int CASCFolder::m_currentCascLocale
private

Definition at line 54 of file CASCFolder.h.

◆ m_currentConfig

core::GameConfig CASCFolder::m_currentConfig
private

Definition at line 55 of file CASCFolder.h.

◆ m_folder

std::string CASCFolder::m_folder
private

Definition at line 57 of file CASCFolder.h.

◆ m_openError

int CASCFolder::m_openError
private

Definition at line 58 of file CASCFolder.h.


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