SCI: Move _audioCompression(Type|OffsetMapping) to AudioVolumeResourceSource

svn-id: r49830
This commit is contained in:
Max Horn 2010-06-15 12:17:47 +00:00
parent 1a0201f7e9
commit 6667a71027
4 changed files with 19 additions and 7 deletions

View File

@ -163,8 +163,12 @@ void Resource::writeToStream(Common::WriteStream *stream) const {
stream->write(data, size);
}
uint32 Resource::getAudioCompressionType() {
return _source->_audioCompressionType;
uint32 Resource::getAudioCompressionType() const {
return _source->getAudioCompressionType();
}
uint32 AudioVolumeResourceSource::getAudioCompressionType() const {
return _audioCompressionType;
}
@ -172,8 +176,6 @@ ResourceSource::ResourceSource(ResSourceType type, const Common::String &name, i
: _sourceType(type), _name(name), _volumeNumber(volNum), _resourceFile(resFile) {
_scanned = false;
_associatedMap = NULL;
_audioCompressionType = 0;
_audioCompressionOffsetMapping = NULL;
}
ResourceSource::~ResourceSource() {

View File

@ -190,7 +190,7 @@ public:
* This method is used only by the "dump" debugger command.
*/
void writeToStream(Common::WriteStream *stream) const;
uint32 getAudioCompressionType();
uint32 getAudioCompressionType() const;
protected:
int32 _fileOffset; /**< Offset in file */

View File

@ -36,6 +36,9 @@ namespace Sci {
AudioVolumeResourceSource::AudioVolumeResourceSource(const Common::String &name, ResourceSource *map, int volNum)
: VolumeResourceSource(name, map, volNum, kSourceAudioVolume) {
_audioCompressionType = 0;
_audioCompressionOffsetMapping = NULL;
/*
* Check if this audio volume got compressed by our tool. If that is the
* case, set _audioCompressionType and read in the offset translation

View File

@ -57,8 +57,6 @@ public:
const Common::FSNode * const _resourceFile;
const int _volumeNumber;
ResourceSource *_associatedMap; // TODO: Move to VolumeResourceSource
uint32 _audioCompressionType; // TODO: Move to AudioVolumeResourceSource
int32 *_audioCompressionOffsetMapping; // TODO: Move to AudioVolumeResourceSource
protected:
ResourceSource(ResSourceType type, const Common::String &name, int volNum = 0, const Common::FSNode *resFile = 0);
@ -87,6 +85,9 @@ public:
* Load a resource.
*/
virtual void loadResource(Resource *res);
virtual uint32 getAudioCompressionType() const { return 0; }
};
class DirectoryResourceSource : public ResourceSource {
@ -141,10 +142,16 @@ public:
};
class AudioVolumeResourceSource : public VolumeResourceSource {
protected:
uint32 _audioCompressionType;
int32 *_audioCompressionOffsetMapping;
public:
AudioVolumeResourceSource(const Common::String &name, ResourceSource *map, int volNum);
virtual void loadResource(Resource *res);
virtual uint32 getAudioCompressionType() const;
};
class ExtAudioMapResourceSource : public ResourceSource {