34 lines
852 B
C++
34 lines
852 B
C++
#pragma once
|
|
#include "XNBaseFrameObject/XNBaseFrameObject.h"
|
|
|
|
namespace XNSim {
|
|
struct XNServiceManagerPrivate;
|
|
|
|
class XNServiceManager : public XNBaseFrameObject {
|
|
XN_METATYPE(XNServiceManager, XNBaseFrameObject)
|
|
XN_DECLARE_PRIVATE(XNServiceManager)
|
|
public:
|
|
/**
|
|
* @brief 服务管理器类默认构造函数
|
|
*/
|
|
XNServiceManager();
|
|
|
|
/**
|
|
* @brief 服务管理器类析构函数
|
|
*/
|
|
virtual ~XNServiceManager();
|
|
|
|
protected:
|
|
XNServiceManager(PrivateType *p);
|
|
|
|
public:
|
|
virtual XN_BOOL Initialize() override;
|
|
virtual XN_BOOL PrepareForExecute() override;
|
|
void LoadService(const XN_STRING &servicePath, const XN_STRING &serviceName,
|
|
const XN_STRING &serviceVersion, XN_UINT32 initialType);
|
|
|
|
public:
|
|
XNServiceObjectPtr GetService(XN_UINT32 serviceID);
|
|
XN_UINT32 RegisterService();
|
|
};
|
|
} // namespace XNSim
|