/* * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information * * 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 DatabaseEnvFwd_h__ #define DatabaseEnvFwd_h__ #include "AsyncCallbackProcessorFwd.h" #include struct QueryResultFieldMetadata; class Field; class ResultSet; using QueryResult = std::shared_ptr; class CharacterDatabaseConnection; class HotfixDatabaseConnection; class LoginDatabaseConnection; class WorldDatabaseConnection; class PreparedStatementBase; template class PreparedStatement; using CharacterDatabasePreparedStatement = PreparedStatement; using HotfixDatabasePreparedStatement = PreparedStatement; using LoginDatabasePreparedStatement = PreparedStatement; using WorldDatabasePreparedStatement = PreparedStatement; class PreparedResultSet; using PreparedQueryResult = std::shared_ptr; class QueryCallback; bool InvokeAsyncCallbackIfReady(QueryCallback& callback); using QueryCallbackProcessor = AsyncCallbackProcessor; class TransactionBase; template class Transaction; class TransactionCallback; bool InvokeAsyncCallbackIfReady(TransactionCallback& callback); template using SQLTransaction = std::shared_ptr>; using CharacterDatabaseTransaction = SQLTransaction; using HotfixDatabaseTransaction = SQLTransaction; using LoginDatabaseTransaction = SQLTransaction; using WorldDatabaseTransaction = SQLTransaction; class SQLQueryHolderBase; template class SQLQueryHolder; using CharacterDatabaseQueryHolder = SQLQueryHolder; using HotfixDatabaseQueryHolder = SQLQueryHolder; using LoginDatabaseQueryHolder = SQLQueryHolder; using WorldDatabaseQueryHolder = SQLQueryHolder; class SQLQueryHolderCallback; bool InvokeAsyncCallbackIfReady(SQLQueryHolderCallback& callback); // mysql struct MySQLHandle; struct MySQLResult; struct MySQLField; struct MySQLBind; struct MySQLStmt; #endif // DatabaseEnvFwd_h__