Skip to content

Commit 0132b57

Browse files
committedAug 4, 2019
adjustment of program structure.
1 parent f90580f commit 0132b57

19 files changed

+415
-457
lines changed
 

‎CppNet.sln

+15-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
3-
# Visual Studio 14
4-
VisualStudioVersion = 14.0.25420.1
3+
# Visual Studio 15
4+
VisualStudioVersion = 15.0.28307.705
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CppNet", "CppNet.vcxproj", "{E98183C7-10C3-4B1A-B8FB-D60BB6217962}"
77
EndProject
8+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CppNetSev", "CppNetSev\CppNetSev.vcxproj", "{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}"
9+
EndProject
810
Global
911
GlobalSection(SolutionConfigurationPlatforms) = preSolution
1012
Debug|x64 = Debug|x64
@@ -21,8 +23,19 @@ Global
2123
{E98183C7-10C3-4B1A-B8FB-D60BB6217962}.Release|x64.Build.0 = Release|x64
2224
{E98183C7-10C3-4B1A-B8FB-D60BB6217962}.Release|x86.ActiveCfg = Release|Win32
2325
{E98183C7-10C3-4B1A-B8FB-D60BB6217962}.Release|x86.Build.0 = Release|Win32
26+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Debug|x64.ActiveCfg = Debug|x64
27+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Debug|x64.Build.0 = Debug|x64
28+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Debug|x86.ActiveCfg = Debug|Win32
29+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Debug|x86.Build.0 = Debug|Win32
30+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Release|x64.ActiveCfg = Release|x64
31+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Release|x64.Build.0 = Release|x64
32+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Release|x86.ActiveCfg = Release|Win32
33+
{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}.Release|x86.Build.0 = Release|Win32
2434
EndGlobalSection
2535
GlobalSection(SolutionProperties) = preSolution
2636
HideSolutionNode = FALSE
2737
EndGlobalSection
38+
GlobalSection(ExtensibilityGlobals) = postSolution
39+
SolutionGuid = {8F945FF5-0662-454F-9E54-7CB45BABF6D6}
40+
EndGlobalSection
2841
EndGlobal

‎CppNet.vcxproj

+20-14
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@
2121
<PropertyGroup Label="Globals">
2222
<ProjectGuid>{E98183C7-10C3-4B1A-B8FB-D60BB6217962}</ProjectGuid>
2323
<RootNamespace>CppNet</RootNamespace>
24+
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
2425
</PropertyGroup>
2526
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
2627
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
27-
<ConfigurationType>Application</ConfigurationType>
28+
<ConfigurationType>StaticLibrary</ConfigurationType>
2829
<UseDebugLibraries>true</UseDebugLibraries>
29-
<PlatformToolset>v140</PlatformToolset>
30+
<PlatformToolset>v141</PlatformToolset>
3031
<CharacterSet>MultiByte</CharacterSet>
3132
</PropertyGroup>
3233
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
@@ -37,9 +38,9 @@
3738
<CharacterSet>MultiByte</CharacterSet>
3839
</PropertyGroup>
3940
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
40-
<ConfigurationType>Application</ConfigurationType>
41+
<ConfigurationType>StaticLibrary</ConfigurationType>
4142
<UseDebugLibraries>true</UseDebugLibraries>
42-
<PlatformToolset>v140</PlatformToolset>
43+
<PlatformToolset>v141</PlatformToolset>
4344
<CharacterSet>MultiByte</CharacterSet>
4445
</PropertyGroup>
4546
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
@@ -74,7 +75,7 @@
7475
<Optimization>Disabled</Optimization>
7576
<SDLCheck>true</SDLCheck>
7677
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_X86_</PreprocessorDefinitions>
77-
<AdditionalIncludeDirectories>$(SolutionDir)base;$(SolutionDir)net;$(SolutionDir)net\win;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
78+
<AdditionalIncludeDirectories>$(SolutionDir)base;$(SolutionDir)include;$(SolutionDir)net;$(SolutionDir)net\win;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7879
</ClCompile>
7980
</ItemDefinitionGroup>
8081
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -83,7 +84,7 @@
8384
<Optimization>Disabled</Optimization>
8485
<SDLCheck>true</SDLCheck>
8586
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_AMD64_</PreprocessorDefinitions>
86-
<AdditionalIncludeDirectories>$(SolutionDir)base;$(SolutionDir)net;$(SolutionDir)net\win;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
87+
<AdditionalIncludeDirectories>$(SolutionDir)base;$(SolutionDir)include;$(SolutionDir)net;$(SolutionDir)net\win;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
8788
</ClCompile>
8889
<Link>
8990
<HeapReserveSize>260046848</HeapReserveSize>
@@ -117,26 +118,29 @@
117118
</ItemDefinitionGroup>
118119
<ItemGroup>
119120
<ClCompile Include="base\Buffer.cpp" />
121+
<ClCompile Include="base\Config.cpp" />
120122
<ClCompile Include="base\Log.cpp" />
121123
<ClCompile Include="base\LoopBuffer.cpp" />
122124
<ClCompile Include="base\MemaryPool.cpp" />
123125
<ClCompile Include="base\TimeTool.cpp" />
124-
<ClCompile Include="net\linux\AcceptSocket.cpp" />
125-
<ClCompile Include="net\linux\CEpoll.cpp" />
126-
<ClCompile Include="net\linux\LinuxFunc.cpp" />
127-
<ClCompile Include="net\linux\Socket.cpp" />
128-
<ClCompile Include="net\linux\SocketBase.cpp" />
129-
<ClCompile Include="net\NetObject.cpp" />
126+
<None Include="net\linux\AcceptSocket.cpp" />
127+
<None Include="net\linux\CEpoll.cpp" />
128+
<None Include="net\linux\LinuxFunc.cpp" />
129+
<None Include="net\linux\Socket.cpp" />
130+
<None Include="net\linux\SocketBase.cpp" />
131+
<ClCompile Include="net\CppNet.cpp" />
132+
<ClCompile Include="net\CppNetImpl.cpp" />
130133
<ClCompile Include="net\OSInfo.cpp" />
131134
<ClCompile Include="net\Timer.cpp" />
132135
<ClCompile Include="net\win\AcceptSocket.cpp" />
133136
<ClCompile Include="net\win\IOCP.cpp" />
134137
<ClCompile Include="net\win\Socket.cpp" />
135138
<ClCompile Include="net\win\SocketBase.cpp" />
136-
<ClCompile Include="test\CppNet.cpp" />
137139
</ItemGroup>
138140
<ItemGroup>
141+
<ClInclude Include="base\Any.h" />
139142
<ClInclude Include="base\Buffer.h" />
143+
<ClInclude Include="base\Config.h" />
140144
<ClInclude Include="base\Log.h" />
141145
<ClInclude Include="base\LoopBuffer.h" />
142146
<ClInclude Include="base\MemaryPool.h" />
@@ -148,12 +152,14 @@
148152
<ClInclude Include="base\Single.h" />
149153
<ClInclude Include="base\TaskQueue.h" />
150154
<ClInclude Include="base\TimeTool.h" />
155+
<ClInclude Include="base\TSQueue.h" />
156+
<ClInclude Include="include\CppNet.h" />
151157
<ClInclude Include="net\AcceptSocket.h" />
152158
<ClInclude Include="net\EventActions.h" />
153159
<ClInclude Include="net\EventHandler.h" />
154160
<ClInclude Include="net\linux\CEpoll.h" />
155161
<ClInclude Include="net\linux\LinuxFunc.h" />
156-
<ClInclude Include="net\NetObject.h" />
162+
<ClInclude Include="net\CppNetImpl.h" />
157163
<ClInclude Include="net\OSInfo.h" />
158164
<ClInclude Include="net\Socket.h" />
159165
<ClInclude Include="net\SocketBase.h" />

‎CppNet.vcxproj.filters

+25-10
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
<Filter Include="net\win">
1111
<UniqueIdentifier>{e68d38ab-7e33-4061-b30f-d8d452c83950}</UniqueIdentifier>
1212
</Filter>
13-
<Filter Include="test">
14-
<UniqueIdentifier>{da747bb7-8dad-4657-91c0-d2a6e6f4003f}</UniqueIdentifier>
15-
</Filter>
1613
<Filter Include="net\linux">
1714
<UniqueIdentifier>{3619e14b-ac00-4eac-8d85-aeb35c29e7d8}</UniqueIdentifier>
1815
</Filter>
16+
<Filter Include="include">
17+
<UniqueIdentifier>{626d3ede-1715-4aaa-8e62-b6b629ea490b}</UniqueIdentifier>
18+
</Filter>
1919
</ItemGroup>
2020
<ItemGroup>
2121
<ClCompile Include="base\Buffer.cpp">
@@ -48,9 +48,6 @@
4848
<ClCompile Include="net\Timer.cpp">
4949
<Filter>net</Filter>
5050
</ClCompile>
51-
<ClCompile Include="test\CppNet.cpp">
52-
<Filter>test</Filter>
53-
</ClCompile>
5451
<ClCompile Include="net\OSInfo.cpp">
5552
<Filter>net</Filter>
5653
</ClCompile>
@@ -66,12 +63,18 @@
6663
<ClCompile Include="net\linux\SocketBase.cpp">
6764
<Filter>net\linux</Filter>
6865
</ClCompile>
69-
<ClCompile Include="net\NetObject.cpp">
70-
<Filter>net</Filter>
71-
</ClCompile>
7266
<ClCompile Include="net\linux\LinuxFunc.cpp">
7367
<Filter>net\linux</Filter>
7468
</ClCompile>
69+
<ClCompile Include="base\Config.cpp">
70+
<Filter>base</Filter>
71+
</ClCompile>
72+
<ClCompile Include="net\CppNetImpl.cpp">
73+
<Filter>net</Filter>
74+
</ClCompile>
75+
<ClCompile Include="net\CppNet.cpp">
76+
<Filter>net</Filter>
77+
</ClCompile>
7578
</ItemGroup>
7679
<ItemGroup>
7780
<ClInclude Include="base\Buffer.h">
@@ -143,8 +146,20 @@
143146
<ClInclude Include="net\linux\LinuxFunc.h">
144147
<Filter>net\linux</Filter>
145148
</ClInclude>
146-
<ClInclude Include="net\NetObject.h">
149+
<ClInclude Include="base\Any.h">
150+
<Filter>base</Filter>
151+
</ClInclude>
152+
<ClInclude Include="base\TSQueue.h">
153+
<Filter>base</Filter>
154+
</ClInclude>
155+
<ClInclude Include="base\Config.h">
156+
<Filter>base</Filter>
157+
</ClInclude>
158+
<ClInclude Include="net\CppNetImpl.h">
147159
<Filter>net</Filter>
148160
</ClInclude>
161+
<ClInclude Include="include\CppNet.h">
162+
<Filter>include</Filter>
163+
</ClInclude>
149164
</ItemGroup>
150165
</Project>

‎CppNetSev/CppNetServer.cpp

+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#include <iostream>
2+
#include "CppNet.h"
3+
using namespace cppnet;
4+
5+
void WriteFunc(base::CMemSharePtr<cppnet::CSocket>& sock, int error) {
6+
//std::cout << "WriteFunc" << std::endl;
7+
//std::cout << "Thread ID : " << std::this_thread::get_id() << std::endl;
8+
//std::cout << "write count: " << sock->_write_event->_off_set << std::endl << std::endl;
9+
////if (error != EVENT_ERROR_CLOSED) {
10+
// sock->SyncRead();
11+
////}
12+
}
13+
14+
void ReadFunc(base::CMemSharePtr<cppnet::CSocket>& sock, int error) {
15+
// std::cout << "ReadFunc" << std::endl;
16+
// std::cout << *(sock->_read_event->_buffer) << std::endl;
17+
// sock->_read_event->_buffer->Clear();
18+
// std::cout << "Thread ID : " << std::this_thread::get_id() << std::endl;
19+
// std::cout << "Read size : " << sock->_read_event->_off_set << std::endl << std::endl;
20+
//
21+
// //if (error != EVENT_ERROR_CLOSED) {
22+
// sock->SyncWrite("aaaaa21231231", strlen("aaaaa21231231"));
23+
// //}
24+
}
25+
26+
void AcceptFunc(base::CMemSharePtr<cppnet::CSocket>& sock, int error) {
27+
std::cout << "AcceptFunc" << std::endl;
28+
std::cout << "client address :" << sock->GetAddress() << std::endl << std::endl;
29+
sock->SyncRead();
30+
}
31+
32+
int main() {
33+
34+
cppnet::Init(1);
35+
36+
cppnet::SetAcceptCallback(AcceptFunc);
37+
cppnet::SetWriteCallback(WriteFunc);
38+
cppnet::SetReadCallback(ReadFunc);
39+
40+
cppnet::ListenAndAccept(8921, "0.0.0.0");
41+
42+
//net.MainLoop();
43+
//net.Dealloc();
44+
cppnet::Join();
45+
}

‎CppNetSev/CppNetSev.vcxproj

+133
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|Win32">
5+
<Configuration>Debug</Configuration>
6+
<Platform>Win32</Platform>
7+
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Release|Win32">
9+
<Configuration>Release</Configuration>
10+
<Platform>Win32</Platform>
11+
</ProjectConfiguration>
12+
<ProjectConfiguration Include="Debug|x64">
13+
<Configuration>Debug</Configuration>
14+
<Platform>x64</Platform>
15+
</ProjectConfiguration>
16+
<ProjectConfiguration Include="Release|x64">
17+
<Configuration>Release</Configuration>
18+
<Platform>x64</Platform>
19+
</ProjectConfiguration>
20+
</ItemGroup>
21+
<PropertyGroup Label="Globals">
22+
<VCProjectVersion>15.0</VCProjectVersion>
23+
<ProjectGuid>{6FE7E867-AD3A-4681-A0DA-2A5E0DB16887}</ProjectGuid>
24+
<RootNamespace>CppNetSev</RootNamespace>
25+
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
26+
</PropertyGroup>
27+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
28+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
29+
<ConfigurationType>Application</ConfigurationType>
30+
<UseDebugLibraries>true</UseDebugLibraries>
31+
<PlatformToolset>v141</PlatformToolset>
32+
<CharacterSet>MultiByte</CharacterSet>
33+
</PropertyGroup>
34+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
35+
<ConfigurationType>Application</ConfigurationType>
36+
<UseDebugLibraries>false</UseDebugLibraries>
37+
<PlatformToolset>v141</PlatformToolset>
38+
<WholeProgramOptimization>true</WholeProgramOptimization>
39+
<CharacterSet>MultiByte</CharacterSet>
40+
</PropertyGroup>
41+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
42+
<ConfigurationType>Application</ConfigurationType>
43+
<UseDebugLibraries>true</UseDebugLibraries>
44+
<PlatformToolset>v141</PlatformToolset>
45+
<CharacterSet>MultiByte</CharacterSet>
46+
</PropertyGroup>
47+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
48+
<ConfigurationType>Application</ConfigurationType>
49+
<UseDebugLibraries>false</UseDebugLibraries>
50+
<PlatformToolset>v141</PlatformToolset>
51+
<WholeProgramOptimization>true</WholeProgramOptimization>
52+
<CharacterSet>MultiByte</CharacterSet>
53+
</PropertyGroup>
54+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
55+
<ImportGroup Label="ExtensionSettings">
56+
</ImportGroup>
57+
<ImportGroup Label="Shared">
58+
</ImportGroup>
59+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
60+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
61+
</ImportGroup>
62+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
63+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64+
</ImportGroup>
65+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
66+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
67+
</ImportGroup>
68+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
69+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
70+
</ImportGroup>
71+
<PropertyGroup Label="UserMacros" />
72+
<PropertyGroup />
73+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
74+
<ClCompile>
75+
<WarningLevel>Level3</WarningLevel>
76+
<Optimization>Disabled</Optimization>
77+
<SDLCheck>true</SDLCheck>
78+
<ConformanceMode>true</ConformanceMode>
79+
<AdditionalIncludeDirectories>$(SolutionDir)include;$(SolutionDir)net;$(SolutionDir)base;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
80+
</ClCompile>
81+
<Link>
82+
<AdditionalDependencies>CppNet.lib;%(AdditionalDependencies)</AdditionalDependencies>
83+
<AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
84+
</Link>
85+
</ItemDefinitionGroup>
86+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
87+
<ClCompile>
88+
<WarningLevel>Level3</WarningLevel>
89+
<Optimization>Disabled</Optimization>
90+
<SDLCheck>true</SDLCheck>
91+
<ConformanceMode>true</ConformanceMode>
92+
<AdditionalIncludeDirectories>$(SolutionDir)include;$(SolutionDir)net;$(SolutionDir)base;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
93+
</ClCompile>
94+
<Link>
95+
<AdditionalDependencies>CppNet.lib;%(AdditionalDependencies)</AdditionalDependencies>
96+
<AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
97+
</Link>
98+
</ItemDefinitionGroup>
99+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
100+
<ClCompile>
101+
<WarningLevel>Level3</WarningLevel>
102+
<Optimization>MaxSpeed</Optimization>
103+
<FunctionLevelLinking>true</FunctionLevelLinking>
104+
<IntrinsicFunctions>true</IntrinsicFunctions>
105+
<SDLCheck>true</SDLCheck>
106+
<ConformanceMode>true</ConformanceMode>
107+
</ClCompile>
108+
<Link>
109+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
110+
<OptimizeReferences>true</OptimizeReferences>
111+
</Link>
112+
</ItemDefinitionGroup>
113+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
114+
<ClCompile>
115+
<WarningLevel>Level3</WarningLevel>
116+
<Optimization>MaxSpeed</Optimization>
117+
<FunctionLevelLinking>true</FunctionLevelLinking>
118+
<IntrinsicFunctions>true</IntrinsicFunctions>
119+
<SDLCheck>true</SDLCheck>
120+
<ConformanceMode>true</ConformanceMode>
121+
</ClCompile>
122+
<Link>
123+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
124+
<OptimizeReferences>true</OptimizeReferences>
125+
</Link>
126+
</ItemDefinitionGroup>
127+
<ItemGroup>
128+
<ClCompile Include="CppNetServer.cpp" />
129+
</ItemGroup>
130+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
131+
<ImportGroup Label="ExtensionTargets">
132+
</ImportGroup>
133+
</Project>

‎CppNetSev/CppNetSev.vcxproj.filters

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup>
4+
<ClCompile Include="CppNetServer.cpp" />
5+
</ItemGroup>
6+
</Project>

0 commit comments

Comments
 (0)
Please sign in to comment.