diff options
author | pauldubois <pauldubois@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-23 09:42:58 +0000 |
---|---|---|
committer | pauldubois <pauldubois@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-23 09:42:58 +0000 |
commit | 7a5387cbd6aa4682c7f2845bde065a9e0b828e23 (patch) | |
tree | 995b883e6d67e8c9011bb02133b83ce65dcfa47a /crawl-ref/source/tags.h | |
parent | 922cba628d3d6377574a90c7a817c10d84ed7f85 (diff) | |
download | crawl-ref-7a5387cbd6aa4682c7f2845bde065a9e0b828e23.tar.gz crawl-ref-7a5387cbd6aa4682c7f2845bde065a9e0b828e23.zip |
This was originally going to be a small refactor of stash.cc before
getting into stash/item finding, but it ended up big. Removed the
read/writeThing API in favor of the marshall/unmarshallThing API. It
was slightly awkward in a couple spots where the format of writeThing
and marshallThing differed slightly (strings, level_id, level_pos).
Doesn't affect savegames.
When it's is okay to break savegames (maybe just before releasing
0.4?) it would be nice to remove the few remaining redundancies listed
above.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3828 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/tags.h')
-rw-r--r-- | crawl-ref/source/tags.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/crawl-ref/source/tags.h b/crawl-ref/source/tags.h index fc2c176b39..385f25cfa2 100644 --- a/crawl-ref/source/tags.h +++ b/crawl-ref/source/tags.h @@ -55,6 +55,7 @@ public: void writeByte(unsigned char byte); void write(const void *data, size_t size); + long tell(); private: FILE* _file; @@ -67,6 +68,7 @@ void marshallLong (writer &, long ); void marshallFloat (writer &, float ); void marshallBoolean (writer &, bool ); void marshallString (writer &, const std::string &, int maxSize = 0); +void marshallString4 (writer &, const std::string &); void marshallCoord (writer &, const coord_def &); void marshallItem (writer &, const item_def &); @@ -98,6 +100,7 @@ float unmarshallFloat (reader &); bool unmarshallBoolean (reader &); int unmarshallCString (reader &, char *data, int maxSize); std::string unmarshallString (reader &, int maxSize = 1000); +void unmarshallString4 (reader &, std::string&); void unmarshallCoord (reader &, coord_def &c); void unmarshallItem (reader &, item_def &item); |