Vixen
caa30e12
csharp
public sealed class BlackboardLayout

A blackboard's shape, compiled once: names resolved to indices, indices to byte ranges.

Read the guide page for this →

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)

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