diff options
author | maximius <none@none> | 2009-10-17 15:51:44 -0700 |
---|---|---|
committer | maximius <none@none> | 2009-10-17 15:51:44 -0700 |
commit | e585187b248f48b3c6e9247b49fa07c6565d65e5 (patch) | |
tree | 637c5b7ddacf41040bef4ea4f75a97da64c6a9bc /src/game/PlayerDump.h | |
parent | 26b5e033ffde3d161382fc9addbfa99738379641 (diff) |
*Backed out changeset 3be01fb200a5
--HG--
branch : trunk
Diffstat (limited to 'src/game/PlayerDump.h')
-rw-r--r-- | src/game/PlayerDump.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/game/PlayerDump.h b/src/game/PlayerDump.h index 934244b5d09..e3dfd192efb 100644 --- a/src/game/PlayerDump.h +++ b/src/game/PlayerDump.h @@ -17,30 +17,41 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + #ifndef _PLAYER_DUMP_H #define _PLAYER_DUMP_H + #include <string> #include <map> #include <set> + enum DumpTableType { DTT_CHARACTER, // // characters + DTT_CHAR_TABLE, // // character_achievement, character_achievement_progress, // character_action, character_aura, character_homebind, // character_queststatus, character_reputation, character_spell, // character_spell_cooldown, character_ticket, character_tutorial + DTT_INVENTORY, // -> item guids collection // character_inventory + DTT_MAIL, // -> mail ids collection // mail // -> item_text + DTT_MAIL_ITEM, // <- mail ids // mail_items // -> item guids collection + DTT_ITEM, // <- item guids // item_instance // -> item_text + DTT_ITEM_GIFT, // <- item guids // character_gifts + DTT_PET, // -> pet guids collection // character_pet DTT_PET_TABLE, // <- pet guids // pet_aura, pet_spell, pet_spell_cooldown DTT_ITEM_TEXT, // <- item_text // item_text }; + enum DumpReturn { DUMP_SUCCESS, @@ -49,32 +60,40 @@ enum DumpReturn DUMP_UNEXPECTED_END, DUMP_FILE_BROKEN, }; + class PlayerDump { protected: PlayerDump() {} }; + class PlayerDumpWriter : public PlayerDump { public: PlayerDumpWriter() {} + std::string GetDump(uint32 guid); DumpReturn WriteDump(const std::string& file, uint32 guid); private: typedef std::set<uint32> GUIDs; + void DumpTable(std::string& dump, uint32 guid, char const*tableFrom, char const*tableTo, DumpTableType type); std::string GenerateWhereStr(char const* field, GUIDs const& guids, GUIDs::const_iterator& itr); std::string GenerateWhereStr(char const* field, uint32 guid); + GUIDs pets; GUIDs mails; GUIDs items; GUIDs texts; }; + class PlayerDumpReader : public PlayerDump { public: PlayerDumpReader() {} + DumpReturn LoadDump(const std::string& file, uint32 account, std::string name, uint32 guid); }; + #endif |