TrinityCore
Loading...
Searching...
No Matches
DatabaseEnvFwd.h
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#ifndef DatabaseEnvFwd_h__
19#define DatabaseEnvFwd_h__
20
22#include <future>
23#include <memory>
24
26class Field;
27
28class ResultSet;
29using QueryResult = std::shared_ptr<ResultSet>;
30using QueryResultFuture = std::future<QueryResult>;
31using QueryResultPromise = std::promise<QueryResult>;
32
36
38
39template<typename T>
41
45
47using PreparedQueryResult = std::shared_ptr<PreparedResultSet>;
48using PreparedQueryResultFuture = std::future<PreparedQueryResult>;
49using PreparedQueryResultPromise = std::promise<PreparedQueryResult>;
50
51class QueryCallback;
53
55
56class TransactionBase;
57
58using TransactionFuture = std::future<bool>;
59using TransactionPromise = std::promise<bool>;
60
61template<typename T>
62class Transaction;
63
66
67template<typename T>
68using SQLTransaction = std::shared_ptr<Transaction<T>>;
69
73
75using QueryResultHolderFuture = std::future<void>;
76using QueryResultHolderPromise = std::promise<void>;
77
78template<typename T>
79class SQLQueryHolder;
80
84
87
88// mysql
89struct MySQLHandle;
90struct MySQLResult;
91struct MySQLField;
92struct MySQLBind;
93struct MySQLStmt;
94
95#endif // DatabaseEnvFwd_h__
std::promise< PreparedQueryResult > PreparedQueryResultPromise
std::future< PreparedQueryResult > PreparedQueryResultFuture
std::promise< bool > TransactionPromise
std::promise< QueryResult > QueryResultPromise
SQLTransaction< WorldDatabaseConnection > WorldDatabaseTransaction
SQLTransaction< CharacterDatabaseConnection > CharacterDatabaseTransaction
SQLTransaction< LoginDatabaseConnection > LoginDatabaseTransaction
std::future< QueryResult > QueryResultFuture
std::shared_ptr< ResultSet > QueryResult
std::shared_ptr< Transaction< T > > SQLTransaction
bool InvokeAsyncCallbackIfReady(QueryCallback &callback)
std::shared_ptr< PreparedResultSet > PreparedQueryResult
std::promise< void > QueryResultHolderPromise
std::future< bool > TransactionFuture
std::future< void > QueryResultHolderFuture
Class used to access individual fields of database query result.
Definition Field.h:92