-
Notifications
You must be signed in to change notification settings - Fork 0
/
lreq.cpp
executable file
·138 lines (126 loc) · 4.2 KB
/
lreq.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/**
`libRQTS` is an implementation of Restricted QuadTreeS (https://github.com/cfmmoc/libRQTS/)
Licensed under The GNU General Public License v3.0 (GPLv3)
Any modification, re-utilization or copy of the source or binary format in other software or publications should mention a CITATION of this library.
Copyright (c) 2016-2018 by Authors (Jin Yan, Guanghong Gong, Ni Li and Luhao Xiao)
**/
/**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%&@@@@*,,,,,,*%&@@@@@
@@@&%#*,* @@@@@@@@@@@@@&%#*,*@@@@@@@@@@@@@@@@@* @@@* .@@
@@@. ,@@@@@@@@&@@@@@, .@@@@@@@@@@@@@@@@* @@@@. .@@@@#. @@@@@@@ @@
@@@@@ .@@@@@@* ,@@@@@@. .@@@@@@@@@@@@@@@, .@@@@@@. .@@@@. .@@@@@@@@. @@
@@@@@, .@@@@@@ ,@@@@@@. @@@@@@@@@@@@@@@@@. *@@@@@. .@@@@. &@@@@@@@. .@
@@@@@. @@@@@@ @@@@@@, @@@@@@@@@@@@@@@@@@ .,,, .@@@@. ,@@@@@@@@@. .@
@@@@@. .@@@@@@@@@@@@@@@@@. @@@@@@@@@@@@@@@@@@* .@@@@. ,@@@@@@@@@. .@
@@@@@, .@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@ @@@@. .@@@@. *@@@@@@@@. .@
@@@@@ .@@@@@@@@@@@@@@@@@ .@@@@@@@@@@@@@@@@@@ .@@@@@. .@@@@. .@@&%%&@@. @
@@@@@ @@@@@@@@&&@@@@@@@ .@@@&%@@@@@@@@/,/@@ .@@@@@. .@@@@ ,@. @@@. @@
@@@@@ @@@@@ .@@@@@@# ./. *@@@@@ . @@@/, .#@@@ .(#. @@
@@@@@ @@@@@ .@@@@@@. @@@ *@@@@@ @@@@ &@@@ @@
@@@@* @@@@@@@. .@@@@@@. @@@@@@@ .@@@@@@&&@@@@@@@@@@@@@@@@@& .#%%%@@@@@@@
@@@@. @@@@@@@. @@@@@@, . @@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@* @&%%%@@@@@@@
@@@@. .@@@@@@@. .@@@@@@#. .@@@@@@@@@ ,@@. @@@. *#@@@
@@@@, .@@@@@@@, .@@@@@@. .@@@@@@@@@ .@@. .@@@@@ .@@@@ @@@. @@@@@@ ,@@
@@@#. .@@@@@@* .@@@@@@. @@@@@@@@@ .@@ .@@@@@ .@@@@ @@@. @@@@@@@@ @@
@@@. @@@@@@. @@@@@@, .@@@@@@@@@# @@@@@@@@@@ .@@@@@@@@@@ @@@@@@@@# @@
@@@. .@@@@@@@, .@@@@@@@. .@@@@@@@@@. @@@@@@@@@@@ .@@@@@@@@@@@@@@&%%*,. @@@
@@@, .@@@@@@@, .@@@@@@@ .@@@@@@@@@, @@@@@@@@@@@ .@@@@@@@@@@@# @@@@@
@@#. .@@@@@@* .@@@@@@@ @@@@@@@@* @@@@@@@@@@@ .@@@@@@@@@@* @@@@@@@@@@@
@@. @@@@@@. @@@@@@@ #@@@@@@@* @@@@@@@@@@@@ .@@@@@@@@@, @@@@@@@@@*,*@@
@@, @@@@@@@, @@@@@@@# ,@@@@@@@ @@@@@@@@@@@@@ .@@@@@@@@@. @@@@@@@@@@ @@
,. .,/@@,. .,/@@@@. .#@@#* @@@@@@@@@@@%%( .(%&@@@@@@@ *#@@&%#. @@
.@# .@@@@. @ ,, @@@@@@@@@@@@# .@@@@@@@@ ., @@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**/
/**
@brief A class representing a load request.
**/
#include "lreq.h"
/**
@remarks
default constructor
**/
CTBLoadReq::CTBLoadReq(void)
{
}
/**
@remarks
initialize a load request
@par
split indicates request type (split/merge)
name filename of the request
**/
CTBLoadReq::CTBLoadReq(bool split, std::string name)
{
mSplitReq = split;
mReqName = name;
mReqCount = 0;
mReqOverCount = 0;
}
/**
@remarks
default deconstructor
**/
CTBLoadReq::~CTBLoadReq(void)
{
}
/**
@remarks
return type of load request, true for split request
**/
bool CTBLoadReq::IsSplitReq()
{
return mSplitReq;
}
/**
@remarks
return filename of load request
**/
std::string CTBLoadReq::GetReqName()
{
return mReqName;
}
/**
@remarks
return counter of request
**/
int CTBLoadReq::GetReqCount()
{
return mReqCount;
}
/**
@remarks
return counter of finished request
**/
int CTBLoadReq::GetReqOverCount()
{
return mReqOverCount;
}
/**
@remarks
increase counter of request by one
for split request, the maximum value of counter is four
for merge request, the maximum value of counter is one
**/
void CTBLoadReq::IncReqCount()
{
if (mSplitReq && mReqCount < 4)
{
mReqCount++;
}
if (!mSplitReq && mReqCount < 1)
{
mReqCount++;
}
}
/**
@remarks
increase counter of finished request by one
for split request, the maximum value of counter is four
**/
void CTBLoadReq::IncReqOverCount()
{
if (mSplitReq && mReqOverCount < 4)
{
mReqOverCount++;
}
}