TrinityCore
Loading...
Searching...
No Matches
IPLocation.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
#include "
Define.h
"
19
#include <string>
20
#include <vector>
21
22
struct
IpLocationRecord
23
{
24
IpLocationRecord
() :
IpFrom
(0),
IpTo
(0) { }
25
IpLocationRecord
(
uint32
ipFrom,
uint32
ipTo, std::string countryCode, std::string countryName)
26
:
IpFrom
(ipFrom),
IpTo
(ipTo),
CountryCode
(
std
::move(countryCode)),
CountryName
(
std
::move(countryName)) { }
27
28
uint32
IpFrom
;
29
uint32
IpTo
;
30
std::string
CountryCode
;
31
std::string
CountryName
;
32
};
33
34
class
TC_COMMON_API
IpLocationStore
35
{
36
public
:
37
IpLocationStore
();
38
~IpLocationStore
();
39
static
IpLocationStore
*
Instance
();
40
41
void
Load();
42
IpLocationRecord
const
* GetLocationRecord(std::string
const
& ipAddress)
const
;
43
44
private
:
45
std::vector<IpLocationRecord>
_ipLocationStore
;
46
};
47
48
#define sIPLocation IpLocationStore::Instance()
Define.h
TC_COMMON_API
#define TC_COMMON_API
Definition
Define.h:96
uint32
uint32_t uint32
Definition
Define.h:133
HighGuid::Instance
@ Instance
IpLocationStore
Definition
IPLocation.h:35
IpLocationStore::_ipLocationStore
std::vector< IpLocationRecord > _ipLocationStore
Definition
IPLocation.h:45
std
STL namespace.
IpLocationRecord
Definition
IPLocation.h:23
IpLocationRecord::IpLocationRecord
IpLocationRecord(uint32 ipFrom, uint32 ipTo, std::string countryCode, std::string countryName)
Definition
IPLocation.h:25
IpLocationRecord::IpLocationRecord
IpLocationRecord()
Definition
IPLocation.h:24
IpLocationRecord::IpTo
uint32 IpTo
Definition
IPLocation.h:29
IpLocationRecord::IpFrom
uint32 IpFrom
Definition
IPLocation.h:28
IpLocationRecord::CountryCode
std::string CountryCode
Definition
IPLocation.h:30
IpLocationRecord::CountryName
std::string CountryName
Definition
IPLocation.h:31
common
IPLocation
IPLocation.h
Generated on Sun May 10 2026 02:30:12 for TrinityCore by
1.9.8