XNSim/XNCore_Win/XNServiceManager/XNServiceManager.h

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