ScummVM API documentation
Ultima::Shared::File Class Reference

#include <file.h>

Inheritance diagram for Ultima::Shared::File:
Common::File Common::SeekableReadStream Common::NonCopyable Common::ReadStream Common::Stream

Public Member Functions

 File (const Common::Path &name)
 
bool open (const Common::Path &name) override
 
bool open (const Common::Path &name, Common::Archive &archive) override
 
bool open (const Common::FSNode &node) override
 
bool open (SeekableReadStream *stream, const Common::String &name) override
 
void close () override
 
bool eof ()
 
- Public Member Functions inherited from Common::File
virtual bool open (SeekableReadStream *stream, const String &name)
 
bool isOpen () const
 
const char * getName () const
 
bool err () const override
 
void clearErr () override
 
bool eos () const override
 
int64 pos () const override
 
int64 size () const override
 
bool seek (int64 offs, int whence=SEEK_SET) override
 
uint32 read (void *dataPtr, uint32 dataSize) override
 
- Public Member Functions inherited from Common::SeekableReadStream
virtual bool skip (uint32 offset)
 
virtual char * readLine (char *s, size_t bufSize, bool handleCR=true)
 
virtual String readLine (bool handleCR=true)
 
void hexdump (int len, int bytesPerLine=16, int startOffset=0)
 
- Public Member Functions inherited from Common::ReadStream
byte readByte ()
 
FORCEINLINE int8 readSByte ()
 
uint16 readUint16LE ()
 
uint32 readUint32LE ()
 
uint64 readUint64LE ()
 
uint16 readUint16BE ()
 
uint32 readUint32BE ()
 
uint64 readUint64BE ()
 
FORCEINLINE int16 readSint16LE ()
 
FORCEINLINE int32 readSint32LE ()
 
FORCEINLINE int64 readSint64LE ()
 
FORCEINLINE int16 readSint16BE ()
 
FORCEINLINE int32 readSint32BE ()
 
FORCEINLINE int64 readSint64BE ()
 
FORCEINLINE float readFloatLE ()
 
FORCEINLINE float readFloatBE ()
 
FORCEINLINE double readDoubleLE ()
 
FORCEINLINE double readDoubleBE ()
 
template<class TDataFormat , class... T>
bool readMultiple (const TDataFormat &dataFormat, T &...values)
 
template<class... T>
bool readMultipleEndian (bool isLittle, T &...values)
 
template<class... T>
bool readMultipleLE (T &...values)
 
template<class... T>
bool readMultipleBE (T &...values)
 
SeekableReadStreamreadStream (uint32 dataSize)
 
String readString (char terminator=0, size_t len=String::npos)
 
Common::String readPascalString (bool transformCR=true)
 

Additional Inherited Members

- Static Public Member Functions inherited from Common::File
static bool exists (const Path &filename)
 
- Protected Attributes inherited from Common::File
SeekableReadStream_handle
 
String _name
 

Detailed Description

Simple ScummVM File descendent that throws a wobbly if the file it tries to open isn't present

Member Function Documentation

◆ open() [1/4]

bool Ultima::Shared::File::open ( const Common::Path name)
overridevirtual

Open the file with the given filename, by searching SearchMan.

Parameters
namethe name of the file to open

Reimplemented from Common::File.

◆ open() [2/4]

bool Ultima::Shared::File::open ( const Common::Path name,
Common::Archive archive 
)
overridevirtual

Open the file with the given filename from within the given archive.

Parameters
namethe name of the file to open
archivethe archive in which to search for the file

Reimplemented from Common::File.

◆ open() [3/4]

bool Ultima::Shared::File::open ( const Common::FSNode node)
overridevirtual

Open the file corresponding to the give node.

Parameters
nodethe node to consider.

Reimplemented from Common::File.

◆ open() [4/4]

bool Ultima::Shared::File::open ( SeekableReadStream *  stream,
const Common::String name 
)
override

'Open' the given stream. That is, we just wrap around it

Parameters
streama pointer to a SeekableReadStream, or 0
namea string describing the 'file' corresponding to stream

◆ close()

void Ultima::Shared::File::close ( )
overridevirtual

Close the currently open file

Reimplemented from Common::File.

◆ eof()

bool Ultima::Shared::File::eof ( )

Differing eof that returns true when pos == size as well as beyond


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