XNSim/XNCore/XNScenarioManager.h

97 lines
2.4 KiB
C
Raw Normal View History

2025-04-28 12:25:20 +08:00
/**
* @file XNScenarioDescriptor.h
* @author jinchao
* @brief
* @version 1.0
* @date 2024-11-07
*
* @copyright Copyright (c) 2024 XN
*
*/
#pragma once
#include "XNBaseFrameObject.h"
2025-05-20 15:39:40 +08:00
struct XNScenarioManagerPrivate;
2025-04-28 12:25:20 +08:00
/**
* @brief
* @details
*/
class XNScenarioManager : public XNBaseFrameObject
{
2025-05-20 15:39:40 +08:00
XN_METATYPE(XNScenarioManager, XNBaseFrameObject)
XN_DECLARE_PRIVATE(XNScenarioManager)
2025-04-28 12:25:20 +08:00
public:
/**
* @brief
*/
2025-05-20 15:39:40 +08:00
XNScenarioManager();
2025-04-28 12:25:20 +08:00
/**
* @brief
*/
virtual ~XNScenarioManager();
protected:
/**
* @brief
* @param p:
* @details
*/
2025-05-20 15:39:40 +08:00
XNScenarioManager(PrivateType *p);
2025-04-28 12:25:20 +08:00
public:
/**
* @brief
* @return const XNString&:
*/
2025-05-20 15:39:40 +08:00
const std::string &GetSimName();
2025-04-28 12:25:20 +08:00
/**
* @brief
* @param simName: XNString类型
*/
2025-05-20 15:39:40 +08:00
void SetSimName(const std::string &simName);
2025-04-28 12:25:20 +08:00
2025-05-20 15:39:40 +08:00
public:
2025-04-28 12:25:20 +08:00
/**
* @brief
* @return true:
* @return false:
* @details
*/
2025-05-20 15:39:40 +08:00
virtual bool Initialize() override;
2025-04-28 12:25:20 +08:00
/**
* @brief 仿
* @note
*/
2025-05-20 15:39:40 +08:00
virtual bool PrepareForExecute() override;
2025-04-28 12:25:20 +08:00
/**
* @brief
2025-05-20 15:39:40 +08:00
* @param XmlPath: std::string类型
2025-05-20 15:45:00 +08:00
* @param initialType: uint32_t类型
* @return true:
* @return false:
2025-04-28 12:25:20 +08:00
*/
2025-05-20 15:45:00 +08:00
virtual bool AnalysisScenarioXml(const std::string &XmlPath, uint32_t initialType);
private:
/**
* @brief
* @param XmlPath: std::string类型
* @return true:
* @return false:
*/
bool ParseScenarioXml(const std::string &XmlPath);
/**
* @brief
* @param ConfigID: std::string类型ID
* @return true:
* @return false:
*/
bool ParseConfig(const std::string &ConfigID);
2025-04-28 12:25:20 +08:00
};