LsaNeighborhoodCondition
class LsaNeighborhoodCondition(reaction: NodeReaction<List<ILsaMolecule>>, molecule: ILsaMolecule, environment: Environment<List<ILsaMolecule>, *>) : LsaStandardCondition
An LSA condition searching an instance of the molecule template in the neighbors of the node.
Constructors
Link copied to clipboard
constructor(reaction: NodeReaction<List<ILsaMolecule>>, molecule: ILsaMolecule, environment: Environment<List<ILsaMolecule>, *>)
Properties
Link copied to clipboard
The live validity of this condition.
Link copied to clipboard
Link copied to clipboard
The NodeReaction owning this condition, hosted by targetNode.
Link copied to clipboard
Functions
Link copied to clipboard
Signals that the owning reaction is about to fire. Used to implement conditions latched to changes that occur in-between reaction executions.
Link copied to clipboard
override fun cloneCondition(newReaction: Reaction<List<ILsaMolecule>>): Condition<List<ILsaMolecule>>
Creates an equivalent condition owned by newReaction, such as a reaction cloned onto a new node. A condition targeting the host of its reaction targets the host of newReaction, which must then be a Node; a condition targeting any other node keeps its target.
Link copied to clipboard
open override fun filter(matchesList: MutableList<MutableMap<HashString, ITreeNode<*>>>, validNodes: MutableList<ILsaNode>, retrieved: MutableList<MutableMap<ILsaNode, MutableList<ILsaMolecule>>>): Boolean
When this method is called, the condition must filter the current matches and allowed nodes.
Link copied to clipboard
Observable LSA state used to compute matches for this condition.
Link copied to clipboard