aboutsummaryrefslogtreecommitdiff
path: root/engines/sludge/fileset.h
diff options
context:
space:
mode:
authorSimei Yin2017-07-18 19:03:45 +0200
committerSimei Yin2017-07-18 19:05:04 +0200
commit4fc6cef968fbf3dc12a6f60611689938dc76da8e (patch)
tree98f9c665ecf6fd9ec63fa2d6b42013474f213789 /engines/sludge/fileset.h
parent798ec60f54064a6a7f5750ab792d06666f9ce8ea (diff)
downloadscummvm-rg350-4fc6cef968fbf3dc12a6f60611689938dc76da8e.tar.gz
scummvm-rg350-4fc6cef968fbf3dc12a6f60611689938dc76da8e.tar.bz2
scummvm-rg350-4fc6cef968fbf3dc12a6f60611689938dc76da8e.zip
SLUDGE: Objectify resource manager
Diffstat (limited to 'engines/sludge/fileset.h')
-rw-r--r--engines/sludge/fileset.h39
1 files changed, 30 insertions, 9 deletions
diff --git a/engines/sludge/fileset.h b/engines/sludge/fileset.h
index fe2293dca7..9cde705a55 100644
--- a/engines/sludge/fileset.h
+++ b/engines/sludge/fileset.h
@@ -26,18 +26,39 @@
namespace Sludge {
-extern Common::File *bigDataFile;
+class ResourceManager {
-void setBigDataFile(Common::File *readStream);
-void setFileIndices(uint, uint);
+public:
+ ResourceManager():
+ _sliceBusy(true),
+ _bigDataFile(0),
+ _startOfDataIndex(0),
+ _startOfTextIndex(0),
+ _startOfSubIndex(0),
+ _startOfObjectIndex(0),
+ _startIndex(0) {}
-uint openFileFromNum(int num);
-bool openSubSlice(int num);
-bool openObjectSlice(int num);
-Common::String getNumberedString(int value);
+ void setData(Common::File *readStream);
+ void setFileIndices(uint, uint);
+ Common::SeekableReadStream *getData() { return _bigDataFile; }
-bool startAccess();
-void finishAccess();
+ uint openFileFromNum(int num);
+ bool openSubSlice(int num);
+ bool openObjectSlice(int num);
+ Common::String getNumberedString(int value);
+
+ bool startAccess();
+ void finishAccess();
+
+private:
+ bool _sliceBusy;
+ Common::File *_bigDataFile;
+ uint32 _startOfDataIndex, _startOfTextIndex, _startOfSubIndex, _startOfObjectIndex;
+ int32 _startIndex;
+
+private:
+ Common::String convertString(const Common::String &s);
+};
} // End of namespace Sludge