Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
GroupMgr.h
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#ifndef SF_GROUPMGR_H
7
#define SF_GROUPMGR_H
8
9
#include "
Group.h
"
10
#include "
Platform/Singleton.h
"
11
12
class
GroupMgr
13
{
14
friend
class
Skyfire::Singleton
<
GroupMgr
,
Skyfire
::NullMutex>;
15
private
:
16
GroupMgr
() :
NextGroupId
(1),
NextGroupDbStoreId
(1) { }
17
~GroupMgr
();
18
19
public
:
20
typedef
std::map<uint32, Group*>
GroupContainer
;
21
typedef
std::vector<Group*>
GroupDbContainer
;
22
23
Group
*
GetGroupByGUID
(
uint32
guid)
const
;
24
25
uint32
GenerateNewGroupDbStoreId
();
26
void
RegisterGroupDbStoreId
(
uint32
storageId,
Group
* group);
27
void
FreeGroupDbStoreId
(
Group
* group);
28
void
SetNextGroupDbStoreId
(
uint32
storageId) {
NextGroupDbStoreId
= storageId; };
29
Group
*
GetGroupByDbStoreId
(
uint32
storageId)
const
;
30
void
SetGroupDbStoreSize
(
uint32
newSize) {
GroupDbStore
.resize(newSize); }
31
32
void
LoadGroups
();
33
uint32
GenerateGroupId
();
34
void
AddGroup
(
Group
* group);
35
void
RemoveGroup
(
Group
* group);
36
37
protected
:
38
uint32
NextGroupId
;
39
uint32
NextGroupDbStoreId
;
40
GroupContainer
GroupStore
;
41
GroupDbContainer
GroupDbStore
;
42
};
43
44
#define sGroupMgr Skyfire::Singleton<GroupMgr, Skyfire::NullMutex>::instance()
45
46
#endif
uint32
std::uint32_t uint32
Definition
Define.h:77
Group.h
Singleton.h
Group
Definition
Group.h:147
GroupMgr::GetGroupByGUID
Group * GetGroupByGUID(uint32 guid) const
Definition
GroupMgr.cpp:77
GroupMgr::GenerateGroupId
uint32 GenerateGroupId()
Definition
GroupMgr.cpp:67
GroupMgr::FreeGroupDbStoreId
void FreeGroupDbStoreId(Group *group)
Definition
GroupMgr.cpp:49
GroupMgr::GetGroupByDbStoreId
Group * GetGroupByDbStoreId(uint32 storageId) const
Definition
GroupMgr.cpp:59
GroupMgr::GroupContainer
std::map< uint32, Group * > GroupContainer
Definition
GroupMgr.h:20
GroupMgr::GenerateNewGroupDbStoreId
uint32 GenerateNewGroupDbStoreId()
Definition
GroupMgr.cpp:18
GroupMgr::RemoveGroup
void RemoveGroup(Group *group)
Definition
GroupMgr.cpp:91
GroupMgr::GroupMgr
GroupMgr()
Definition
GroupMgr.h:16
GroupMgr::NextGroupId
uint32 NextGroupId
Definition
GroupMgr.h:38
GroupMgr::SetNextGroupDbStoreId
void SetNextGroupDbStoreId(uint32 storageId)
Definition
GroupMgr.h:28
GroupMgr::GroupDbContainer
std::vector< Group * > GroupDbContainer
Definition
GroupMgr.h:21
GroupMgr::GroupDbStore
GroupDbContainer GroupDbStore
Definition
GroupMgr.h:41
GroupMgr::NextGroupDbStoreId
uint32 NextGroupDbStoreId
Definition
GroupMgr.h:39
GroupMgr::SetGroupDbStoreSize
void SetGroupDbStoreSize(uint32 newSize)
Definition
GroupMgr.h:30
GroupMgr::LoadGroups
void LoadGroups()
Definition
GroupMgr.cpp:96
GroupMgr::AddGroup
void AddGroup(Group *group)
Definition
GroupMgr.cpp:86
GroupMgr::~GroupMgr
~GroupMgr()
Definition
GroupMgr.cpp:12
GroupMgr::RegisterGroupDbStoreId
void RegisterGroupDbStoreId(uint32 storageId, Group *group)
Definition
GroupMgr.cpp:40
GroupMgr::GroupStore
GroupContainer GroupStore
Definition
GroupMgr.h:40
Skyfire::Singleton
Definition
Singleton.h:15
Skyfire
Definition
AuthPatchTransfer.h:12
src
server
game
Groups
GroupMgr.h
Generated on
for Project SkyFire Core by
1.17.0