using TNodeCore.Editor.NodeGraphView; using TNodeCore.Runtime.Models; using UnityEditor; namespace TNodeCore.Editor.Blackboard{ /// /// View of the blackboard,different in each implementation,but the same in the interface. /// public interface IBlackboardView{ /// /// Get the blackboard data model watched by this view. /// /// BlackboardData GetBlackboardData(); /// /// Set the blackboard data model watched by this view. /// /// void SetBlackboardData(BlackboardData data); /// /// Add a new entry for the blackboard.currently no such use. /// void AddItem(); /// /// Setup the blackboard view from the given Editor and graphview /// /// /// void Setup(IBaseDataGraphView graphView,EditorWindow ownerWindow); /// /// Notify update the blackboard view's content by the watched blackboard data. /// void NotifyUpdate(); } //A generic implementation of the blackboard view. public interface IBlackboardView : IBlackboardView where T : BlackboardData{ T Data{ get; set; } } }