public sealed class BlackboardLayoutA blackboard's shape, compiled once: names resolved to indices, indices to byte ranges.
Remarks
The naive blackboard is a Dictionary<string, object>, and it is wrong in four ways at once — a hash per read, a box per value, an allocation per write of a struct, and no cheap way to observe a key. A layout is authored once and compiled; an instance is then a byte range, a key reference is a UInt16, and a read is a span slice.
Immutable and shareable: a thousand agents on one tree share one layout and hold one Blackboard each. Build one with BlackboardLayoutBuilder.
Fields and properties (5)
public static BlackboardLayout EmptyA layout with no keys. What an agent that needs no data gets.
public int CountHow many keys there are.
public int SizeHow many bytes an instance of this layout holds.
public ReadOnlySpan<BlackboardKeyDefinition> KeysThe keys, in the order they were declared.
public BlackboardKeyDefinition this[BlackboardKey key]What a key holds and where.
Methods (2)
public bool TryGetKey(Symbol name, out BlackboardKey key)Looks a key up by name.
public BlackboardKey Key(string name)Looks a key up by name, and refuses to carry on without it.
Used by (67, showing 40)
- AgentRandomTestsVixen.Ai.Tests
- AgentTargetVixen.Ai.Nodes
- AiBreakpointTestsVixen.Ai.Tests
- AiDebugChannelTestsVixen.Ai.Tests
- AiDiagnosisExitCriteriaTestsVixen.Ai.Tests
- AiSchedulingTestsVixen.Ai.Tests
- AiSnapshotTestsVixen.Ai.Tests
- AiSnapshotsVixen.Ai
- AiSystemVixen.Ai
- AiSystemTestsVixen.Ai.Tests
- AiSystemTreeTestsVixen.Ai.Tests
- BehaviorBuildContextVixen.Ai
- BehaviorTreeAbortOrderingTestsVixen.Ai.Tests
- BehaviorTreeAbortTestsVixen.Ai.Tests
- BehaviorTreeCompilerVixen.Ai
- BehaviorTreeCompilerTestsVixen.Ai.Tests
- BehaviorTreeCompositeTestsVixen.Ai.Tests
- BehaviorTreeContentVixen.Ai
- BehaviorTreeContentCompilerVixen.Ai
- BehaviorTreeCostTestsVixen.Ai.Tests
- BehaviorTreeDecoratorTestsVixen.Ai.Tests
- BehaviorTreeDeterminismTestsVixen.Ai.Tests
- BehaviorTreeInstanceVixen.Ai
- BehaviorTreeServiceTestsVixen.Ai.Tests
- BehaviorTreeTaskTestsVixen.Ai.Tests
- BehaviorTreeTemplateVixen.Ai
- BindingTestsVixen.Ai.Perception.Tests
- BlackboardVixen.Ai
- BlackboardLayoutBuilderVixen.Ai
- BlackboardLayoutTestsVixen.Ai.Tests
- BlackboardTestsVixen.Ai.Tests
- BlackboardUtilityInputVixen.Ai
- BlackboardWorldSourceVixen.Ai
- BoardVixen.Ai.Nodes.Tests
- BuildStateVixen.Ai
- CompileStateVixen.Ai
- DistanceUtilityInputVixen.Ai
- FleetVixen.Ai.Tests
- GoapAgentTestsVixen.Ai.Tests
- GoapDomainContentVixen.Ai