SCI: Make SegManager::_classTable private.

This require a small tweak to the save/load code: I moved the syncing
logic for _classtable from EngineState::saveLoadWithSerializer to
SegManager::saveLoadWithSerializer, which in theory should have no
effect (luckily, _classtable was being synced right after the
segment manager).

svn-id: r50551
This commit is contained in:
Max Horn 2010-07-01 16:05:10 +00:00
parent 36799dc83f
commit c822cd67cb
2 changed files with 4 additions and 4 deletions

View file

@ -248,6 +248,8 @@ void SegManager::saveLoadWithSerializer(Common::Serializer &s) {
s.syncAsSint32LE(_clonesSegId); s.syncAsSint32LE(_clonesSegId);
s.syncAsSint32LE(_listsSegId); s.syncAsSint32LE(_listsSegId);
s.syncAsSint32LE(_nodesSegId); s.syncAsSint32LE(_nodesSegId);
syncArray<Class>(s, _classTable);
} }
@ -343,8 +345,6 @@ void EngineState::saveLoadWithSerializer(Common::Serializer &s) {
_segMan->saveLoadWithSerializer(s); _segMan->saveLoadWithSerializer(s);
syncArray<Class>(s, _segMan->_classTable);
g_sci->_soundCmd->syncPlayList(s); g_sci->_soundCmd->syncPlayList(s);
} }

View file

@ -462,8 +462,6 @@ public:
public: // TODO: make private public: // TODO: make private
Common::Array<SegmentObj *> _heap; Common::Array<SegmentObj *> _heap;
// Only accessible from saveLoadWithSerializer()
Common::Array<Class> _classTable; /**< Table of all classes */
#ifdef ENABLE_SCI32 #ifdef ENABLE_SCI32
SciArray<reg_t> *allocateArray(reg_t *addr); SciArray<reg_t> *allocateArray(reg_t *addr);
@ -476,6 +474,8 @@ public: // TODO: make private
#endif #endif
private: private:
// Only accessible from saveLoadWithSerializer()
Common::Array<Class> _classTable; /**< Table of all classes */
/** Map script ids to segment ids. */ /** Map script ids to segment ids. */
Common::HashMap<int, SegmentId> _scriptSegMap; Common::HashMap<int, SegmentId> _scriptSegMap;