Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
MemoryUsage.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 SKYFIRE_MEMORY_USAGE_H
7
#define SKYFIRE_MEMORY_USAGE_H
8
9
#include "
Define.h
"
10
11
#include <string>
12
13
namespace
Skyfire
14
{
15
struct
ProcessMemoryUsage
16
{
17
uint64
residentBytes
= 0;
18
uint64
peakResidentBytes
= 0;
19
uint64
virtualBytes
= 0;
20
uint64
privateBytes
= 0;
21
22
bool
hasResidentBytes
=
false
;
23
bool
hasPeakResidentBytes
=
false
;
24
bool
hasVirtualBytes
=
false
;
25
bool
hasPrivateBytes
=
false
;
26
};
27
28
struct
SystemMemoryUsage
29
{
30
uint64
totalPhysicalBytes
= 0;
31
uint64
availablePhysicalBytes
= 0;
32
uint64
usedPhysicalBytes
= 0;
33
uint64
totalVirtualBytes
= 0;
34
uint64
usedVirtualBytes
= 0;
35
uint64
totalSwapBytes
= 0;
36
uint64
usedSwapBytes
= 0;
37
double
physicalUsagePercent
= 0.0;
38
double
virtualUsagePercent
= 0.0;
39
40
bool
hasValidData
=
false
;
41
};
42
43
bool
GetProcessMemoryUsage
(
ProcessMemoryUsage
&
usage
);
44
bool
GetSystemMemoryUsage
(
SystemMemoryUsage
&
usage
);
45
46
std::string
FormatMemorySize
(
uint64
bytes);
47
std::string
FormatProcessMemoryUsage
(
ProcessMemoryUsage
const
&
usage
);
48
std::string
FormatSystemMemoryUsage
(
SystemMemoryUsage
const
&
usage
);
49
std::string
FormatMemoryUsageSummary
(
ProcessMemoryUsage
const
& processUsage,
SystemMemoryUsage
const
& systemUsage);
50
}
51
52
#endif
Define.h
uint64
std::uint64_t uint64
Definition
Define.h:76
Skyfire
Definition
AuthPatchTransfer.h:12
Skyfire::FormatProcessMemoryUsage
std::string FormatProcessMemoryUsage(ProcessMemoryUsage const &usage)
Definition
MemoryUsage.cpp:286
Skyfire::GetProcessMemoryUsage
bool GetProcessMemoryUsage(ProcessMemoryUsage &usage)
Definition
MemoryUsage.cpp:49
Skyfire::FormatMemorySize
std::string FormatMemorySize(uint64 bytes)
Definition
MemoryUsage.cpp:265
Skyfire::FormatSystemMemoryUsage
std::string FormatSystemMemoryUsage(SystemMemoryUsage const &usage)
Definition
MemoryUsage.cpp:317
Skyfire::GetSystemMemoryUsage
bool GetSystemMemoryUsage(SystemMemoryUsage &usage)
Definition
MemoryUsage.cpp:108
Skyfire::FormatMemoryUsageSummary
std::string FormatMemoryUsageSummary(ProcessMemoryUsage const &processUsage, SystemMemoryUsage const &systemUsage)
Definition
MemoryUsage.cpp:354
usage
void usage(const char *prog)
Print out the usage string for this program on the console.
Definition
Main.cpp:192
Skyfire::ProcessMemoryUsage
Definition
MemoryUsage.h:16
Skyfire::ProcessMemoryUsage::virtualBytes
uint64 virtualBytes
Definition
MemoryUsage.h:19
Skyfire::ProcessMemoryUsage::hasVirtualBytes
bool hasVirtualBytes
Definition
MemoryUsage.h:24
Skyfire::ProcessMemoryUsage::hasPeakResidentBytes
bool hasPeakResidentBytes
Definition
MemoryUsage.h:23
Skyfire::ProcessMemoryUsage::peakResidentBytes
uint64 peakResidentBytes
Definition
MemoryUsage.h:18
Skyfire::ProcessMemoryUsage::residentBytes
uint64 residentBytes
Definition
MemoryUsage.h:17
Skyfire::ProcessMemoryUsage::privateBytes
uint64 privateBytes
Definition
MemoryUsage.h:20
Skyfire::ProcessMemoryUsage::hasPrivateBytes
bool hasPrivateBytes
Definition
MemoryUsage.h:25
Skyfire::ProcessMemoryUsage::hasResidentBytes
bool hasResidentBytes
Definition
MemoryUsage.h:22
Skyfire::SystemMemoryUsage
Definition
MemoryUsage.h:29
Skyfire::SystemMemoryUsage::availablePhysicalBytes
uint64 availablePhysicalBytes
Definition
MemoryUsage.h:31
Skyfire::SystemMemoryUsage::totalSwapBytes
uint64 totalSwapBytes
Definition
MemoryUsage.h:35
Skyfire::SystemMemoryUsage::usedPhysicalBytes
uint64 usedPhysicalBytes
Definition
MemoryUsage.h:32
Skyfire::SystemMemoryUsage::physicalUsagePercent
double physicalUsagePercent
Definition
MemoryUsage.h:37
Skyfire::SystemMemoryUsage::totalVirtualBytes
uint64 totalVirtualBytes
Definition
MemoryUsage.h:33
Skyfire::SystemMemoryUsage::virtualUsagePercent
double virtualUsagePercent
Definition
MemoryUsage.h:38
Skyfire::SystemMemoryUsage::usedVirtualBytes
uint64 usedVirtualBytes
Definition
MemoryUsage.h:34
Skyfire::SystemMemoryUsage::usedSwapBytes
uint64 usedSwapBytes
Definition
MemoryUsage.h:36
Skyfire::SystemMemoryUsage::totalPhysicalBytes
uint64 totalPhysicalBytes
Definition
MemoryUsage.h:30
Skyfire::SystemMemoryUsage::hasValidData
bool hasValidData
Definition
MemoryUsage.h:40
src
server
shared
Utilities
MemoryUsage.h
Generated on
for Project SkyFire Core by
1.17.0