aboutsummaryrefslogtreecommitdiff
path: root/engines/made/resource.cpp
diff options
context:
space:
mode:
authorTorbjörn Andersson2008-04-20 15:36:40 +0000
committerTorbjörn Andersson2008-04-20 15:36:40 +0000
commit7e07dd5ec720905e09c5aac37a80941c6053e132 (patch)
treec547330503a3d8de2b15c596a406fd11485fd0ae /engines/made/resource.cpp
parent84a7cd33876eabfcc1fedd0b126f77039647edaf (diff)
downloadscummvm-rg350-7e07dd5ec720905e09c5aac37a80941c6053e132.tar.gz
scummvm-rg350-7e07dd5ec720905e09c5aac37a80941c6053e132.tar.bz2
scummvm-rg350-7e07dd5ec720905e09c5aac37a80941c6053e132.zip
Changed spaces to tabs.
svn-id: r31610
Diffstat (limited to 'engines/made/resource.cpp')
-rw-r--r--engines/made/resource.cpp192
1 files changed, 96 insertions, 96 deletions
diff --git a/engines/made/resource.cpp b/engines/made/resource.cpp
index ea1e16b3a2..ebfc9a53da 100644
--- a/engines/made/resource.cpp
+++ b/engines/made/resource.cpp
@@ -43,9 +43,9 @@ PictureResource::PictureResource() : _picture(NULL), _palette(NULL) {
PictureResource::~PictureResource() {
if (_picture)
- delete _picture;
+ delete _picture;
if (_palette)
- delete[] _palette;
+ delete[] _palette;
}
void PictureResource::load(byte *source, int size) {
@@ -67,8 +67,8 @@ void PictureResource::load(byte *source, int size) {
debug(2, "width = %d; height = %d\n", width, height);
if (hasPalette) {
- _palette = new byte[768];
- sourceS->read(_palette, 768);
+ _palette = new byte[768];
+ sourceS->read(_palette, 768);
}
_picture = new Graphics::Surface();
@@ -107,11 +107,11 @@ void AnimationResource::load(byte *source, int size) {
for (uint16 i = 0; i < frameCount; i++) {
- sourceS->seek(26 + i * 4);
+ sourceS->seek(26 + i * 4);
uint32 frameOffs = sourceS->readUint32LE();
- sourceS->seek(frameOffs);
+ sourceS->seek(frameOffs);
sourceS->readUint32LE();
sourceS->readUint32LE();
@@ -128,9 +128,9 @@ void AnimationResource::load(byte *source, int size) {
Graphics::Surface *frame = new Graphics::Surface();
frame->create(frameWidth, frameHeight, 1);
- decompressImage(source + frameOffs, *frame, cmdOffs, pixelOffs, maskOffs, lineSize, _flags & 1);
+ decompressImage(source + frameOffs, *frame, cmdOffs, pixelOffs, maskOffs, lineSize, _flags & 1);
- _frames.push_back(frame);
+ _frames.push_back(frame);
}
@@ -145,7 +145,7 @@ SoundResource::SoundResource() : _soundSize(0), _soundData(NULL) {
SoundResource::~SoundResource() {
if (_soundData)
- delete[] _soundData;
+ delete[] _soundData;
}
void SoundResource::load(byte *source, int size) {
@@ -154,7 +154,7 @@ void SoundResource::load(byte *source, int size) {
uint16 chunkSize = READ_LE_UINT16(source + 12);
_soundSize = chunkCount * chunkSize;
- _soundData = new byte[_soundSize];
+ _soundData = new byte[_soundSize];
decompressSound(source + 14, _soundData, chunkSize, chunkCount);
@@ -173,18 +173,18 @@ MenuResource::~MenuResource() {
}
void MenuResource::load(byte *source, int size) {
- _strings.clear();
- Common::MemoryReadStream *sourceS = new Common::MemoryReadStream(source, size);
- sourceS->skip(4); // skip "MENU"
- uint16 count = sourceS->readUint16LE();
- for (uint16 i = 0; i < count; i++) {
- uint16 offs = sourceS->readUint16LE();
- const char *string = (const char*)(source + offs);
- _strings.push_back(string);
- debug(2, "%02d: %s\n", i, string);
+ _strings.clear();
+ Common::MemoryReadStream *sourceS = new Common::MemoryReadStream(source, size);
+ sourceS->skip(4); // skip "MENU"
+ uint16 count = sourceS->readUint16LE();
+ for (uint16 i = 0; i < count; i++) {
+ uint16 offs = sourceS->readUint16LE();
+ const char *string = (const char*)(source + offs);
+ _strings.push_back(string);
+ debug(2, "%02d: %s\n", i, string);
}
fflush(stdout);
- delete sourceS;
+ delete sourceS;
}
/* ProjectReader */
@@ -197,137 +197,137 @@ ProjectReader::~ProjectReader() {
void ProjectReader::open(const char *filename) {
- _fd = new Common::File();
- _fd->open(filename);
+ _fd = new Common::File();
+ _fd->open(filename);
- _fd->skip(0x18); // skip header for now
+ _fd->skip(0x18); // skip header for now
- uint16 indexCount = _fd->readUint16LE();
+ uint16 indexCount = _fd->readUint16LE();
- for (uint16 i = 0; i < indexCount; i++) {
+ for (uint16 i = 0; i < indexCount; i++) {
- uint32 resType = _fd->readUint32BE();
- uint32 indexOffs = _fd->readUint32LE();
- _fd->readUint32LE();
- _fd->readUint32LE();
- _fd->readUint32LE();
- _fd->readUint16LE();
- _fd->readUint16LE();
+ uint32 resType = _fd->readUint32BE();
+ uint32 indexOffs = _fd->readUint32LE();
+ _fd->readUint32LE();
+ _fd->readUint32LE();
+ _fd->readUint32LE();
+ _fd->readUint16LE();
+ _fd->readUint16LE();
- // We don't need ARCH, FREE and OMNI resources
- if (resType == kResARCH || resType == kResFREE || resType == kResOMNI)
- continue;
+ // We don't need ARCH, FREE and OMNI resources
+ if (resType == kResARCH || resType == kResFREE || resType == kResOMNI)
+ continue;
- //debug(2, "resType = %08X; indexOffs = %d\n", resType, indexOffs);
+ //debug(2, "resType = %08X; indexOffs = %d\n", resType, indexOffs);
- uint32 oldOffs = _fd->pos();
+ uint32 oldOffs = _fd->pos();
- ResourceSlots *resSlots = new ResourceSlots();
- _fd->seek(indexOffs);
- loadIndex(resSlots);
- _resSlots[resType] = resSlots;
+ ResourceSlots *resSlots = new ResourceSlots();
+ _fd->seek(indexOffs);
+ loadIndex(resSlots);
+ _resSlots[resType] = resSlots;
- _fd->seek(oldOffs);
+ _fd->seek(oldOffs);
- }
+ }
- _cacheCount = 0;
+ _cacheCount = 0;
}
PictureResource *ProjectReader::getPicture(int index) {
- return createResource<PictureResource>(kResFLEX, index);
+ return createResource<PictureResource>(kResFLEX, index);
}
AnimationResource *ProjectReader::getAnimation(int index) {
- return createResource<AnimationResource>(kResANIM, index);
+ return createResource<AnimationResource>(kResANIM, index);
}
SoundResource *ProjectReader::getSound(int index) {
- return createResource<SoundResource>(kResSNDS, index);
+ return createResource<SoundResource>(kResSNDS, index);
}
MenuResource *ProjectReader::getMenu(int index) {
- return createResource<MenuResource>(kResMENU, index);
+ return createResource<MenuResource>(kResMENU, index);
}
void ProjectReader::loadIndex(ResourceSlots *slots) {
- _fd->readUint32LE(); // skip INDX
- _fd->readUint32LE(); // skip index size
- _fd->readUint32LE(); // skip unknown
- _fd->readUint32LE(); // skip res type
- uint16 count = _fd->readUint16LE();
- _fd->readUint16LE(); // skip unknown count
- _fd->readUint16LE(); // skip unknown count
- for (uint16 i = 0; i < count; i++) {
- uint32 offs = _fd->readUint32LE();
- uint32 size = _fd->readUint32LE();
- slots->push_back(ResourceSlot(offs, size));
- }
+ _fd->readUint32LE(); // skip INDX
+ _fd->readUint32LE(); // skip index size
+ _fd->readUint32LE(); // skip unknown
+ _fd->readUint32LE(); // skip res type
+ uint16 count = _fd->readUint16LE();
+ _fd->readUint16LE(); // skip unknown count
+ _fd->readUint16LE(); // skip unknown count
+ for (uint16 i = 0; i < count; i++) {
+ uint32 offs = _fd->readUint32LE();
+ uint32 size = _fd->readUint32LE();
+ slots->push_back(ResourceSlot(offs, size));
+ }
}
void ProjectReader::freeResource(Resource *resource) {
- tossResourceFromCache(resource->slot);
+ tossResourceFromCache(resource->slot);
}
bool ProjectReader::loadResource(ResourceSlot *slot, byte *&buffer, uint32 &size) {
if (slot && slot->size > 0) {
- size = slot->size - 62;
- buffer = new byte[size];
+ size = slot->size - 62;
+ buffer = new byte[size];
debug(2, "ProjectReader::loadResource() %08X\n", slot->offs + 62); fflush(stdout);
- _fd->seek(slot->offs + 62);
- _fd->read(buffer, size);
- return true;
+ _fd->seek(slot->offs + 62);
+ _fd->read(buffer, size);
+ return true;
} else {
- return false;
+ return false;
}
}
ResourceSlot *ProjectReader::getResourceSlot(uint32 resType, uint index) {
- ResourceSlots *slots = _resSlots[resType];
- if (index >= 1 && index < slots->size()) {
- ResourceSlot *slot = &slots->operator[](index);
- return slot;
+ ResourceSlots *slots = _resSlots[resType];
+ if (index >= 1 && index < slots->size()) {
+ ResourceSlot *slot = &slots->operator[](index);
+ return slot;
} else {
- return NULL;
+ return NULL;
}
}
Resource *ProjectReader::getResourceFromCache(ResourceSlot *slot) {
- if (slot->res)
- slot->refCount++;
- return slot->res;
+ if (slot->res)
+ slot->refCount++;
+ return slot->res;
}
void ProjectReader::addResourceToCache(ResourceSlot *slot, Resource *res) {
- if (_cacheCount >= kMaxResourceCacheCount) {
- purgeCache();
- }
- slot->res = res;
- slot->refCount = 0;
- _cacheCount++;
+ if (_cacheCount >= kMaxResourceCacheCount) {
+ purgeCache();
+ }
+ slot->res = res;
+ slot->refCount = 0;
+ _cacheCount++;
}
void ProjectReader::tossResourceFromCache(ResourceSlot *slot) {
- if (slot->res) {
- slot->refCount--;
- }
+ if (slot->res) {
+ slot->refCount--;
+ }
}
void ProjectReader::purgeCache() {
printf("ProjectReader::purgeCache()\n");
- for (ResMap::const_iterator resTypeIter = _resSlots.begin(); resTypeIter != _resSlots.end(); ++resTypeIter) {
- ResourceSlots *slots = (*resTypeIter)._value;
- for (ResourceSlots::iterator slotIter = slots->begin(); slotIter != slots->end(); ++slotIter) {
- ResourceSlot *slot = &(*slotIter);
- if (slot->refCount <= 0 && slot->res) {
- delete slot->res;
- slot->res = NULL;
- slot->refCount = 0;
- _cacheCount--;
- }
- }
- }
+ for (ResMap::const_iterator resTypeIter = _resSlots.begin(); resTypeIter != _resSlots.end(); ++resTypeIter) {
+ ResourceSlots *slots = (*resTypeIter)._value;
+ for (ResourceSlots::iterator slotIter = slots->begin(); slotIter != slots->end(); ++slotIter) {
+ ResourceSlot *slot = &(*slotIter);
+ if (slot->refCount <= 0 && slot->res) {
+ delete slot->res;
+ slot->res = NULL;
+ slot->refCount = 0;
+ _cacheCount--;
+ }
+ }
+ }
}
} // End of namespace Made