ScummVM API documentation
Scumm::ResourceManager::Resource Class Reference

Public Member Functions

void nuke ()
 
void setResourceCounter (byte counter)
 
byte getResourceCounter () const
 
void lock ()
 
void unlock ()
 
bool isLocked () const
 
void setModified ()
 
bool isModified () const
 
void setOffHeap ()
 
void setOnHeap ()
 
bool isOffHeap () const
 

Public Attributes

byte * _address
 
uint32 _size
 
byte _roomno
 
uint32 _roomoffs
 

Protected Attributes

byte _flags
 
byte _status
 

Member Data Documentation

◆ _address

byte* Scumm::ResourceManager::Resource::_address

Pointer to the data contained in this resource

◆ _size

uint32 Scumm::ResourceManager::Resource::_size

Size of this resource, i.e. of the data contained in it.

◆ _flags

byte Scumm::ResourceManager::Resource::_flags
protected

The uppermost bit indicates whether the resources is locked. The lower 7 bits contain a counter. This counter measures roughly how old the resource is; it starts out with a count of 1 and can go as high as 127. When memory falls low resp. when the engine decides that it should throw out some unused stuff, then it begins by removing the resources with the highest counter (excluding locked resources and resources that are known to be in use).

◆ _status

byte Scumm::ResourceManager::Resource::_status
protected

The status of the resource. Currently only one bit is used, which indicates whether the resource is modified.

◆ _roomno

byte Scumm::ResourceManager::Resource::_roomno

The id of the room (resp. the disk) the resource is contained in.

◆ _roomoffs

uint32 Scumm::ResourceManager::Resource::_roomoffs

The offset (in bytes) where the data for this resources can be found in the game data file(s), relative to the start of the room the resource is contained in.

A value of RES_INVALID_OFFSET indicates a resources that is not contained in the game data files.


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