TrinityCore
Loading...
Searching...
No Matches
SessionManager.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 TRINITYCORE_SESSION_MANAGER_H
19
#define TRINITYCORE_SESSION_MANAGER_H
20
21
#include "
SocketMgr.h
"
22
#include "
Session.h
"
23
#include <atomic>
24
25
namespace
Battlenet
26
{
27
class
SessionNetworkThread
final :
public
Trinity::Net::NetworkThread
<Session, SessionNetworkThread>
28
{
29
};
30
31
class
SessionManager
;
32
33
struct
SessionManagerTraits
34
{
35
using
Self
=
SessionManager
;
36
using
SocketType
=
Session
;
37
using
ThreadType
=
SessionNetworkThread
;
38
};
39
40
class
SessionManager
final :
public
Trinity::Net::SocketMgr
<SessionManagerTraits>
41
{
42
public
:
43
static
SessionManager
&
Instance
();
44
45
std::atomic<uint32>
SessionIdGenerator
= 0;
46
};
47
}
48
49
#define sSessionMgr Battlenet::SessionManager::Instance()
50
51
#endif
// TRINITYCORE_SESSION_MANAGER_H
Session.h
SocketMgr.h
Battlenet::SessionManager
Definition
SessionManager.h:41
Battlenet::SessionManager::SessionIdGenerator
std::atomic< uint32 > SessionIdGenerator
Definition
SessionManager.h:45
Battlenet::SessionManager::Instance
static SessionManager & Instance()
Definition
SessionManager.cpp:20
Battlenet::SessionNetworkThread
Definition
SessionManager.h:28
Battlenet::Session
Definition
Session.h:82
Trinity::Net::NetworkThread
Definition
NetworkThread.h:36
Trinity::Net::SocketMgr
Definition
SocketMgr.h:32
Battlenet
Definition
LoginHttpSession.cpp:119
Battlenet::SessionManagerTraits
Definition
SessionManager.h:34
server
bnetserver
Server
SessionManager.h
Generated by
1.9.8