XNSim/XNCore_Win/XNBaseFrameObject/XNBaseFrameObject.h

81 lines
1.4 KiB
C
Raw Normal View History

2025-07-19 12:44:06 +08:00
/**
* @file XNBaseFrameObject.h
* @author jinchao
* @brief
* @version 1.0
* @date 2025-01-08
*
* @copyright Copyright (c) 2025 COMAC
*
*/
#pragma once
#include <XNObject/XNObject.h>
namespace XNSim {
struct XNBaseFrameObjectPrivate;
/**
* @brief
*/
class XNCORE_EXPORT XNBaseFrameObject : public XNObject {
/**
* @brief
*/
XN_METATYPE(XNBaseFrameObject, XNObject)
/**
* @brief
*/
XN_DECLARE_PRIVATE(XNBaseFrameObject)
public:
/**
* @brief
* @param parent
*/
XNBaseFrameObject();
/**
* @brief
*/
virtual ~XNBaseFrameObject();
protected:
/**
* @brief
* @param dd
* @param parent
*/
XNBaseFrameObject(PrivateType *p);
public:
/**
* @brief
*/
virtual XN_BOOL Initialize() = 0;
/**
* @brief
*/
virtual XN_BOOL PrepareForExecute() = 0;
/**
* @brief
* @return
*/
XNFrameObjectStatus GetFrameObjectStatus();
/**
* @brief
* @return
*/
XNFrameworkPtr GetFramework();
/**
* @brief
* @param framework
*/
void SetFramework(XNFrameworkPtr framework);
};
} // namespace XNSim