Skip to content

Commit f5bf39d

Browse files
committed
modify:lib code name changed.
added:lua plugin core and lug loader supported
1 parent b038a90 commit f5bf39d

File tree

12 files changed

+612
-80
lines changed

12 files changed

+612
-80
lines changed

XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Define.h

Lines changed: 109 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,19 @@
1515
//////////////////////////////////////////////////////////////////////////
1616
extern "C" DWORD ModulePlugin_GetLastError(int* pInt_SysError = NULL);
1717
/*********************************************************************************
18-
* 插件框架导出函数定义 *
18+
* LIB库插件框架导出函数定义 *
1919
*********************************************************************************/
2020
/********************************************************************
21-
函数名称:ModulePlugin_Core_Init
21+
函数名称:ModulePlugin_LibCore_Init
2222
函数功能:初始化插件核心系统
2323
返回值
2424
类型:逻辑型
2525
意思:是否成功初始化
2626
备注:
2727
*********************************************************************/
28-
extern "C" BOOL ModulePlugin_Core_Init();
28+
extern "C" BOOL ModulePlugin_LibCore_Init();
2929
/********************************************************************
30-
函数名称:ModulePlugin_Core_Push
30+
函数名称:ModulePlugin_LibCore_Push
3131
函数功能:添加一个标准的插件到插件框架中
3232
参数.一:pxhModule
3333
In/Out:Out
@@ -49,9 +49,9 @@ extern "C" BOOL ModulePlugin_Core_Init();
4949
意思:是否成功添加
5050
备注:
5151
*********************************************************************/
52-
extern "C" BOOL ModulePlugin_Core_Push(XNETHANDLE * pxhNet, LPCSTR lpszPluginFile, LPVOID lParam = NULL);
52+
extern "C" BOOL ModulePlugin_LibCore_Push(XNETHANDLE * pxhNet, LPCSTR lpszPluginFile, LPVOID lParam = NULL);
5353
/********************************************************************
54-
函数名称:ModulePlugin_Core_Exec
54+
函数名称:ModulePlugin_LibCore_Exec
5555
函数功能:执行一次
5656
参数.一:xhModule
5757
In/Out:In
@@ -98,16 +98,110 @@ extern "C" BOOL ModulePlugin_Core_Push(XNETHANDLE * pxhNet, LPCSTR lpszPluginFil
9898
意思:是否成功
9999
备注:
100100
*********************************************************************/
101-
extern "C" BOOL ModulePlugin_Core_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0);
101+
extern "C" BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0);
102102
/********************************************************************
103-
函数名称:ModulePlugin_Core_Destroy
103+
函数名称:ModulePlugin_LibCore_Destroy
104104
函数功能:销毁插件核心并且清理资源
105105
返回值
106106
类型:逻辑型
107107
意思:是否成功销毁
108108
备注:
109109
*********************************************************************/
110-
extern "C" BOOL ModulePlugin_Core_Destroy();
110+
extern "C" BOOL ModulePlugin_LibCore_Destroy();
111+
/*********************************************************************************
112+
* LUA插件框架导出函数定义 *
113+
*********************************************************************************/
114+
/********************************************************************
115+
函数名称:ModulePlugin_LuaCore_Init
116+
函数功能:初始化LUA插件核心系统
117+
返回值
118+
类型:逻辑型
119+
意思:是否成功初始化
120+
备注:
121+
*********************************************************************/
122+
extern "C" BOOL ModulePlugin_LuaCore_Init();
123+
/********************************************************************
124+
函数名称:ModulePlugin_LuaCore_Push
125+
函数功能:添加一个标准的插件到插件框架中
126+
参数.一:pxhModule
127+
In/Out:Out
128+
类型:模块句柄
129+
可空:N
130+
意思:导出一个加载成功的模块句柄
131+
参数.二:lpszPluginFile
132+
In/Out:In
133+
类型:常量字符指针
134+
可空:N
135+
意思:插件模块路径
136+
参数.三:lParam
137+
In/Out:In/Out
138+
类型:无类型指针
139+
可空:Y
140+
意思:自定义输入输出参数
141+
返回值
142+
类型:逻辑型
143+
意思:是否成功添加
144+
备注:
145+
*********************************************************************/
146+
extern "C" BOOL ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL);
147+
/********************************************************************
148+
函数名称:ModulePlugin_LuaCore_Exec
149+
函数功能:执行一次
150+
参数.一:xhModule
151+
In/Out:In
152+
类型:句柄
153+
可空:N
154+
意思:输入模块句柄
155+
参数.二:pppHDRList
156+
In/Out:In
157+
类型:三级指针
158+
可空:N
159+
意思:HTTP请求的URL参数列表
160+
参数.三:nListCount
161+
In/Out:In
162+
类型:整数型
163+
可空:N
164+
意思:输入列表个数
165+
参数.四:pInt_HTTPCode
166+
In/Out:Out
167+
类型:整数型指针
168+
可空:N
169+
意思:输出返回的HTTPCODE值
170+
参数.五:ptszMsgBuffer
171+
In/Out:Out
172+
类型:字符指针
173+
可空:N
174+
意思:输出负载的内容
175+
参数.六:pInt_MsgLen
176+
In/Out:Out
177+
类型:整数型指针
178+
可空:N
179+
意思:输出内容大小
180+
参数.七:lpszMsgBufer
181+
In/Out:Out
182+
类型:常量字符指针
183+
可空:Y
184+
意思:输入负载内容
185+
参数.八:nMsgLen
186+
In/Out:Out
187+
类型:整数型指针
188+
可空:Y
189+
意思:输入负载大小
190+
返回值
191+
类型:逻辑型
192+
意思:是否成功
193+
备注:
194+
*********************************************************************/
195+
extern "C" BOOL ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0);
196+
/********************************************************************
197+
函数名称:ModulePlugin_LuaCore_Destroy
198+
函数功能:销毁插件核心并且清理资源
199+
返回值
200+
类型:逻辑型
201+
意思:是否成功销毁
202+
备注:
203+
*********************************************************************/
204+
extern "C" BOOL ModulePlugin_LuaCore_Destroy();
111205
/*********************************************************************************
112206
* 加载器导出函数定义 *
113207
*********************************************************************************/
@@ -124,12 +218,17 @@ extern "C" BOOL ModulePlugin_Core_Destroy();
124218
类型:常量字符指针
125219
可空:N
126220
意思:插件路径
221+
参数.三:nType
222+
In/Out:In
223+
类型:整数型
224+
可空:Y
225+
意思:0为lib,1为lua
127226
返回值
128227
类型:逻辑型
129228
意思:是否成功
130229
备注:
131230
*********************************************************************/
132-
extern "C" BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName);
231+
extern "C" BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName, int nType = 0);
133232
/********************************************************************
134233
函数名称:ModulePlugin_Loader_Find
135234
函数功能:查找方法是否注册

XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Core/ModulePlugin_Core.cpp renamed to XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.cpp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,35 @@
11
#include "pch.h"
2-
#include "ModulePlugin_Core.h"
2+
#include "ModulePlugin_LibCore.h"
33
/********************************************************************
4-
// Created: 2022/04/20 16:14:03
5-
// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_Core\ModulePlugin_Core.cpp
6-
// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_Core
7-
// File Base: ModulePlugin_Core
4+
// Created: 2022/11/30 16:16:54
5+
// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_LibCore\ModulePlugin_LibCore.cpp
6+
// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_LibCore
7+
// File Base: ModulePlugin_LibCore
88
// File Ext: cpp
99
// Project: XEngine(网络通信引擎)
1010
// Author: qyt
1111
// Purpose: 插件核心架构实现
1212
// History:
1313
*********************************************************************/
14-
CModulePlugin_Core::CModulePlugin_Core()
14+
CModulePlugin_LibCore::CModulePlugin_LibCore()
1515
{
1616
bIsInit = FALSE;
1717
}
18-
CModulePlugin_Core::~CModulePlugin_Core()
18+
CModulePlugin_LibCore::~CModulePlugin_LibCore()
1919
{
2020
}
2121
//////////////////////////////////////////////////////////////////////////
2222
// 公有函数
2323
//////////////////////////////////////////////////////////////////////////
2424
/********************************************************************
25-
函数名称:ModulePlugin_Core_Init
25+
函数名称:ModulePlugin_LibCore_Init
2626
函数功能:初始化插件核心系统
2727
返回值
2828
类型:逻辑型
2929
意思:是否成功初始化
3030
备注:
3131
*********************************************************************/
32-
BOOL CModulePlugin_Core::ModulePlugin_Core_Init()
32+
BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Init()
3333
{
3434
ModulePlugin_IsErrorOccur = FALSE;
3535
//判断是否初始化
@@ -44,7 +44,7 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Init()
4444
return TRUE;
4545
}
4646
/********************************************************************
47-
函数名称:ModulePlugin_Core_Push
47+
函数名称:ModulePlugin_LibCore_Push
4848
函数功能:添加一个标准的插件到插件框架中
4949
参数.一:pxhModule
5050
In/Out:Out
@@ -66,7 +66,7 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Init()
6666
意思:是否成功添加
6767
备注:
6868
*********************************************************************/
69-
BOOL CModulePlugin_Core::ModulePlugin_Core_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam)
69+
BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam)
7070
{
7171
ModulePlugin_IsErrorOccur = FALSE;
7272

@@ -76,14 +76,14 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Push(XNETHANDLE* pxhModule, LPCTSTR l
7676
ModulePlugin_dwErrorCode = BaseLib_GetLastError();
7777
return FALSE;
7878
}
79-
if (!ModulePlugin_Core_Add(*pxhModule, lpszPluginFile, lParam))
79+
if (!ModulePlugin_LibCore_Add(*pxhModule, lpszPluginFile, lParam))
8080
{
8181
return FALSE;
8282
}
8383
return TRUE;
8484
}
8585
/********************************************************************
86-
函数名称:ModulePlugin_Core_Exec
86+
函数名称:ModulePlugin_LibCore_Exec
8787
函数功能:执行一次
8888
参数.一:xhModule
8989
In/Out:In
@@ -130,7 +130,7 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Push(XNETHANDLE* pxhModule, LPCTSTR l
130130
意思:是否成功
131131
备注:
132132
*********************************************************************/
133-
BOOL CModulePlugin_Core::ModulePlugin_Core_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */)
133+
BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */)
134134
{
135135
ModulePlugin_IsErrorOccur = FALSE;
136136

@@ -156,14 +156,14 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Exec(XNETHANDLE xhModule, TCHAR*** pp
156156
return TRUE;
157157
}
158158
/********************************************************************
159-
函数名称:ModulePlugin_Core_Destroy
159+
函数名称:ModulePlugin_LibCore_Destroy
160160
函数功能:销毁插件核心并且清理资源
161161
返回值
162162
类型:逻辑型
163163
意思:是否成功销毁
164164
备注:
165165
*********************************************************************/
166-
BOOL CModulePlugin_Core::ModulePlugin_Core_Destroy()
166+
BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Destroy()
167167
{
168168
ModulePlugin_IsErrorOccur = FALSE;
169169

@@ -193,7 +193,7 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Destroy()
193193
// 保护函数
194194
//////////////////////////////////////////////////////////////////////////
195195
/********************************************************************
196-
函数名称:ModulePlugin_Core_Add
196+
函数名称:ModulePlugin_LibCore_Add
197197
函数功能:添加一个指定模块到插件核心系统当中
198198
参数.一:xhNet
199199
In/Out:In
@@ -215,7 +215,7 @@ BOOL CModulePlugin_Core::ModulePlugin_Core_Destroy()
215215
意思:是否成功执行
216216
备注:
217217
*********************************************************************/
218-
BOOL CModulePlugin_Core::ModulePlugin_Core_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam)
218+
BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam)
219219
{
220220
ModulePlugin_IsErrorOccur = FALSE;
221221

XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Core/ModulePlugin_Core.h renamed to XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.h

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
#pragma once
22
/********************************************************************
3-
// Created: 2022/04/20 16:13:41
4-
// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_Core\ModulePlugin_Core.h
5-
// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_Core
6-
// File Base: ModulePlugin_Core
3+
// Created: 2022/11/30 16:16:35
4+
// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_LibCore\ModulePlugin_LibCore.h
5+
// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModulePlugin\ModulePlugin_LibCore
6+
// File Base: ModulePlugin_LibCore
77
// File Ext: h
88
// Project: XEngine(网络通信引擎)
99
// Author: qyt
@@ -26,18 +26,18 @@ typedef struct
2626
DWORD(*fpCall_PluginCore_GetLastError)();
2727
}PLUGINCORE_FRAMEWORK, * LPPLUGINCORE_FRAMEWORK;
2828

29-
class CModulePlugin_Core
29+
class CModulePlugin_LibCore
3030
{
3131
public:
32-
CModulePlugin_Core();
33-
~CModulePlugin_Core();
32+
CModulePlugin_LibCore();
33+
~CModulePlugin_LibCore();
3434
public:
35-
BOOL ModulePlugin_Core_Init();
36-
BOOL ModulePlugin_Core_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL);
37-
BOOL ModulePlugin_Core_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0);
38-
BOOL ModulePlugin_Core_Destroy();
35+
BOOL ModulePlugin_LibCore_Init();
36+
BOOL ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL);
37+
BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0);
38+
BOOL ModulePlugin_LibCore_Destroy();
3939
protected:
40-
BOOL ModulePlugin_Core_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam = NULL);
40+
BOOL ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam = NULL);
4141
private:
4242
BOOL bIsInit;
4343
private:

0 commit comments

Comments
 (0)