正在显示
1 个修改的文件
包含
40 行增加
和
0 行删除
src/server/dmpservicenativeloader.h
0 → 100644
1 | +/************************************************************************** | ||
2 | +* file: dmpservicenativeloader.h | ||
3 | + | ||
4 | +* Author: wanzhongping | ||
5 | +* Date: 2020-12-31 17:10:36 | ||
6 | +* Email: zhongpingw@chinadci.com | ||
7 | +* copyright: 广州城市信息研究所有限公司 | ||
8 | +***************************************************************************/ | ||
9 | + | ||
10 | +#ifndef __dmpservicenativeloader_h__ | ||
11 | +#define __dmpservicenativeloader_h__ | ||
12 | + | ||
13 | +#include <iostream> | ||
14 | +#include <string> | ||
15 | +#include <map> | ||
16 | +#include <vector> | ||
17 | +#include <memory> | ||
18 | +#include <boost/function.hpp> | ||
19 | +#include <boost/filesystem.hpp> | ||
20 | +#include "dmap_server.h" | ||
21 | + | ||
22 | +class DmpServiceModule; | ||
23 | +class DmpServiceRegistry; | ||
24 | +class DmpServiceNativeModuleEntry; | ||
25 | + | ||
26 | +class SERVER_EXPORT DmpServiceNativeLoader | ||
27 | +{ | ||
28 | + public: | ||
29 | + DmpServiceNativeLoader() = default; | ||
30 | + void LoadModules(const boost::filesystem::path &module_path, DmpServiceRegistry ®istrar); | ||
31 | + void UnloadModules(); | ||
32 | + std::shared_ptr<DmpServiceModule> LoadNativeModule( const std::string &location ); | ||
33 | + | ||
34 | + private: | ||
35 | + typedef std::map<std::string, std::shared_ptr<DmpServiceModule>> ModuleMap; | ||
36 | + std::shared_ptr<DmpServiceModule> FindModule(const std::string &location); | ||
37 | + ModuleMap modules_; | ||
38 | +}; | ||
39 | + | ||
40 | +#endif // __dmpservicenativeloader_h__ |
请
注册
或
登录
后发表评论