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

A CASCFile implementation that reads data from the local hard drive rather than from a CASC archive. More...

#include <HardDriveFile.h>

Inheritance diagram for HardDriveFile:
[legend]
Collaboration diagram for HardDriveFile:
[legend]

Public Member Functions

 HardDriveFile (std::string path, std::string realpath, int id=-1)
 
 ~HardDriveFile ()
 
- Public Member Functions inherited from CASCFile
 CASCFile (std::string path, int id=-1)
 
 ~CASCFile ()
 
size_t read (void *dest, size_t bytes)
 Read bytes from the file into dest.
 
void seek (size_t offset)
 Seek to an absolute byte offset.
 
void dumpStructure ()
 
- Public Member Functions inherited from GameFile
 GameFile (std::string path, int id=-1)
 
virtual ~GameFile ()=default
 
size_t getSize ()
 Total size of the file in bytes.
 
size_t getPos ()
 Current read position.
 
unsigned char * getBuffer () const
 Pointer to the start of the internal buffer.
 
unsigned char * getPointer ()
 Pointer to the current read position within the buffer.
 
bool isEof ()
 True if the read pointer has reached the end of the file.
 
void seekRelative (size_t offset)
 Advance the read pointer by offset bytes.
 
bool open (bool useMemoryBuffer=true)
 Open the file, optionally loading into a memory buffer.
 
bool close ()
 Close the file and release the internal buffer.
 
void setFullName (const std::string &name)
 
const std::string & fullname () const
 
int fileDataId ()
 
void allocate (unsigned long long size)
 Allocate (or reallocate) the internal buffer to the given size.
 
bool setChunk (std::string chunkName, bool resetToStart=true)
 Switch the active read window to the named chunk.
 
bool isChunked ()
 True if the file has been parsed into named chunks.
 
- Public Member Functions inherited from Component
 Component ()
 
virtual ~Component ()
 
virtual bool addChild (Component *)
 Add a child component to this node.
 
virtual bool removeChild (Component *)
 Remove a child component from this node.
 
virtual void removeAllChildren ()
 
virtual unsigned int nbChildren () const
 
virtual bool findChildComponent (Component *, bool)
 
virtual ComponentgetChild (unsigned int)
 
virtual const ComponentgetChild (unsigned int) const
 
void setParentComponent (Component *)
 Set the parent of this component.
 
virtual void onParentSet (Component *)
 Called after the parent has been set; override for custom logic.
 
const Componentparent () const
 Get the parent component (const).
 
Componentparent ()
 Get the parent component.
 
template<class DataType >
const DataType * firstParentOfType ()
 Walk up the parent chain and return the first ancestor of the given type.
 
void ref ()
 Increment the reference counter.
 
void unref ()
 Decrement the reference counter; deletes this when it reaches zero.
 
void setName (const std::string &name)
 
std::string name () const
 
virtual void onNameChanged ()
 
void print (int l_depth=0)
 
virtual void doPrint ()
 
void copy (const Component &component, bool)
 

Protected Member Functions

virtual bool openFile ()
 
virtual bool isAlreadyOpened ()
 
virtual bool getFileSize (unsigned long long &s)
 
virtual unsigned long readFile ()
 
virtual bool doPostCloseOperation ()
 
- Protected Member Functions inherited from CASCFile
virtual void doPostOpenOperation ()
 

Private Attributes

bool opened
 
std::string realpath
 
std::ifstream * file
 

Additional Inherited Members

- Protected Attributes inherited from GameFile
bool eof
 
unsigned char * buffer
 
unsigned long long pointer
 
unsigned long long size
 
std::string filepath
 
int m_fileDataId
 
std::vector< Chunkchunks
 
bool m_useMemoryBuffer
 

Detailed Description

A CASCFile implementation that reads data from the local hard drive rather than from a CASC archive.

Definition at line 16 of file HardDriveFile.h.

Constructor & Destructor Documentation

◆ HardDriveFile()

HardDriveFile::HardDriveFile ( std::string  path,
std::string  realpath,
int  id = -1 
)

Definition at line 5 of file HardDriveFile.cpp.

◆ ~HardDriveFile()

HardDriveFile::~HardDriveFile ( )

Definition at line 10 of file HardDriveFile.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ doPostCloseOperation()

bool HardDriveFile::doPostCloseOperation ( )
protectedvirtual

Reimplemented from CASCFile.

Definition at line 65 of file HardDriveFile.cpp.

◆ getFileSize()

bool HardDriveFile::getFileSize ( unsigned long long &  s)
protectedvirtual

Reimplemented from CASCFile.

Definition at line 39 of file HardDriveFile.cpp.

◆ isAlreadyOpened()

bool HardDriveFile::isAlreadyOpened ( )
protectedvirtual

Reimplemented from CASCFile.

Definition at line 31 of file HardDriveFile.cpp.

◆ openFile()

bool HardDriveFile::openFile ( )
protectedvirtual

Reimplemented from CASCFile.

Definition at line 15 of file HardDriveFile.cpp.

◆ readFile()

unsigned long HardDriveFile::readFile ( )
protectedvirtual

Reimplemented from CASCFile.

Definition at line 51 of file HardDriveFile.cpp.

Member Data Documentation

◆ file

std::ifstream* HardDriveFile::file
private

Definition at line 32 of file HardDriveFile.h.

◆ opened

bool HardDriveFile::opened
private

Definition at line 30 of file HardDriveFile.h.

◆ realpath

std::string HardDriveFile::realpath
private

Definition at line 31 of file HardDriveFile.h.


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