using GFramework.Core.architecture;
using Godot;
namespace GFramework.Godot.architecture;
///
/// Godot模块接口,定义了Godot引擎中模块的基本行为和属性
///
/// 架构类型,必须继承自Architecture<T>且具有无参构造函数
public interface IGodotModule : IArchitectureModule where T : Architecture, new()
{
///
/// 获取模块关联的Godot节点
///
Node Node { get; }
///
/// 当模块被附加到架构时调用
///
/// 要附加到的架构实例
void OnAttach(Architecture architecture);
///
/// 当模块从架构分离时调用
///
void OnDetach();
}