/* * Copyright (C) 2008-2015 TrinityCore * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #ifndef _HOTFIXDATABASE_H #define _HOTFIXDATABASE_H #include "DatabaseWorkerPool.h" #include "MySQLConnection.h" class HotfixDatabaseConnection : public MySQLConnection { public: //- Constructors for sync and async connections HotfixDatabaseConnection(MySQLConnectionInfo& connInfo) : MySQLConnection(connInfo) { } HotfixDatabaseConnection(ProducerConsumerQueue* q, MySQLConnectionInfo& connInfo) : MySQLConnection(q, connInfo) { } //- Loads database type specific prepared statements void DoPrepareStatements() override; }; typedef DatabaseWorkerPool HotfixDatabaseWorkerPool; enum HotfixDatabaseStatements { /* Naming standard for defines: {DB}_{SEL/INS/UPD/DEL/REP}_{Summary of data changed} When updating more than one field, consider looking at the calling function name for a suiting suffix. */ HOTFIX_SEL_AREA_GROUP, HOTFIX_SEL_AREA_GROUP_MEMBER, HOTFIX_SEL_AUCTION_HOUSE, HOTFIX_SEL_AUCTION_HOUSE_LOCALE, HOTFIX_SEL_BARBER_SHOP_STYLE, HOTFIX_SEL_BARBER_SHOP_STYLE_LOCALE, HOTFIX_SEL_BROADCAST_TEXT, HOTFIX_SEL_BROADCAST_TEXT_LOCALE, HOTFIX_SEL_CHAR_START_OUTFIT, HOTFIX_SEL_CHR_CLASSES_X_POWER_TYPES, HOTFIX_SEL_CINEMATIC_SEQUENCES, HOTFIX_SEL_CREATURE_DISPLAY_INFO, HOTFIX_SEL_CREATURE_DISPLAY_INFO_LOCALE, HOTFIX_SEL_CREATURE_TYPE, HOTFIX_SEL_CREATURE_TYPE_LOCALE, HOTFIX_SEL_CURRENCY_TYPES, HOTFIX_SEL_CURRENCY_TYPES_LOCALE, HOTFIX_SEL_CURVE_POINT, HOTFIX_SEL_DESTRUCTIBLE_MODEL_DATA, HOTFIX_SEL_DURABILITY_QUALITY, HOTFIX_SEL_GAMEOBJECTS, HOTFIX_SEL_GAMEOBJECTS_LOCALE, HOTFIX_SEL_GAME_TABLES, HOTFIX_SEL_GAME_TABLES_LOCALE, HOTFIX_SEL_GARR_ABILITY, HOTFIX_SEL_GARR_ABILITY_LOCALE, HOTFIX_SEL_GARR_BUILDING, HOTFIX_SEL_GARR_BUILDING_LOCALE, HOTFIX_SEL_GARR_BUILDING_PLOT_INST, HOTFIX_SEL_GARR_CLASS_SPEC, HOTFIX_SEL_GARR_CLASS_SPEC_LOCALE, HOTFIX_SEL_GARR_FOLLOWER, HOTFIX_SEL_GARR_FOLLOWER_LOCALE, HOTFIX_SEL_GARR_FOLLOWER_X_ABILITY, HOTFIX_SEL_GARR_PLOT, HOTFIX_SEL_GARR_PLOT_LOCALE, HOTFIX_SEL_GARR_PLOT_BUILDING, HOTFIX_SEL_GARR_PLOT_INSTANCE, HOTFIX_SEL_GARR_PLOT_INSTANCE_LOCALE, HOTFIX_SEL_GARR_SITE_LEVEL, HOTFIX_SEL_GARR_SITE_LEVEL_PLOT_INST, HOTFIX_SEL_GLYPH_SLOT, HOTFIX_SEL_GUILD_PERK_SPELLS, HOTFIX_SEL_HOLIDAYS, HOTFIX_SEL_HOLIDAYS_LOCALE, HOTFIX_SEL_IMPORT_PRICE_ARMOR, HOTFIX_SEL_IMPORT_PRICE_QUALITY, HOTFIX_SEL_IMPORT_PRICE_SHIELD, HOTFIX_SEL_IMPORT_PRICE_WEAPON, HOTFIX_SEL_ITEM_APPEARANCE, HOTFIX_SEL_ITEM_BONUS, HOTFIX_SEL_ITEM_BONUS_TREE_NODE, HOTFIX_SEL_ITEM_CLASS, HOTFIX_SEL_ITEM_CLASS_LOCALE, HOTFIX_SEL_ITEM_CURRENCY_COST, HOTFIX_SEL_ITEM_DISENCHANT_LOOT, HOTFIX_SEL_ITEM_EFFECT, HOTFIX_SEL_ITEM, HOTFIX_SEL_ITEM_EXTENDED_COST, HOTFIX_SEL_ITEM_LIMIT_CATEGORY, HOTFIX_SEL_ITEM_LIMIT_CATEGORY_LOCALE, HOTFIX_SEL_ITEM_MODIFIED_APPEARANCE, HOTFIX_SEL_ITEM_PRICE_BASE, HOTFIX_SEL_ITEM_RANDOM_PROPERTIES, HOTFIX_SEL_ITEM_RANDOM_PROPERTIES_LOCALE, HOTFIX_SEL_ITEM_RANDOM_SUFFIX, HOTFIX_SEL_ITEM_RANDOM_SUFFIX_LOCALE, HOTFIX_SEL_ITEM_SPARSE, HOTFIX_SEL_ITEM_SPARSE_LOCALE, HOTFIX_SEL_ITEM_SPEC, HOTFIX_SEL_ITEM_SPEC_OVERRIDE, HOTFIX_SEL_ITEM_X_BONUS_TREE, HOTFIX_SEL_KEY_CHAIN, HOTFIX_SEL_MAIL_TEMPLATE, HOTFIX_SEL_MAIL_TEMPLATE_LOCALE, HOTFIX_SEL_MOUNT, HOTFIX_SEL_MOUNT_LOCALE, HOTFIX_SEL_MOUNT_CAPABILITY, HOTFIX_SEL_MOUNT_TYPE_X_CAPABILITY, HOTFIX_SEL_NAME_GEN, HOTFIX_SEL_NAME_GEN_LOCALE, HOTFIX_SEL_OVERRIDE_SPELL_DATA, HOTFIX_SEL_PHASE_X_PHASE_GROUP, HOTFIX_SEL_QUEST_MONEY_REWARD, HOTFIX_SEL_QUEST_PACKAGE_ITEM, HOTFIX_SEL_QUEST_SORT, HOTFIX_SEL_QUEST_SORT_LOCALE, HOTFIX_SEL_QUEST_V2, HOTFIX_SEL_QUEST_XP, HOTFIX_SEL_SCALING_STAT_DISTRIBUTION, HOTFIX_SEL_SOUND_ENTRIES, HOTFIX_SEL_SOUND_ENTRIES_LOCALE, HOTFIX_SEL_SPECIALIZATION_SPELLS, HOTFIX_SEL_SPECIALIZATION_SPELLS_LOCALE, HOTFIX_SEL_SPELL_AURA_RESTRICTIONS, HOTFIX_SEL_SPELL_CASTING_REQUIREMENTS, HOTFIX_SEL_SPELL_CAST_TIMES, HOTFIX_SEL_SPELL_CLASS_OPTIONS, HOTFIX_SEL_SPELL_DURATION, HOTFIX_SEL_SPELL_ITEM_ENCHANTMENT_CONDITION, HOTFIX_SEL_SPELL_LEARN_SPELL, HOTFIX_SEL_SPELL_MISC, HOTFIX_SEL_SPELL_POWER, HOTFIX_SEL_SPELL_POWER_DIFFICULTY, HOTFIX_SEL_SPELL_RADIUS, HOTFIX_SEL_SPELL_RANGE, HOTFIX_SEL_SPELL_RANGE_LOCALE, HOTFIX_SEL_SPELL_REAGENTS, HOTFIX_SEL_SPELL_RUNE_COST, HOTFIX_SEL_SPELL_TOTEMS, HOTFIX_SEL_SPELL_X_SPELL_VISUAL, HOTFIX_SEL_TAXI_NODES, HOTFIX_SEL_TAXI_NODES_LOCALE, HOTFIX_SEL_TAXI_PATH, HOTFIX_SEL_TAXI_PATH_NODE, HOTFIX_SEL_TOTEM_CATEGORY, HOTFIX_SEL_TOTEM_CATEGORY_LOCALE, HOTFIX_SEL_TRANSPORT_ANIMATION, HOTFIX_SEL_TRANSPORT_ROTATION, HOTFIX_SEL_UNIT_POWER_BAR, HOTFIX_SEL_UNIT_POWER_BAR_LOCALE, HOTFIX_SEL_WORLD_MAP_OVERLAY, HOTFIX_SEL_WORLD_MAP_OVERLAY_LOCALE, MAX_HOTFIXDATABASE_STATEMENTS }; #endif