Class AbstractColumnAggregatorNode.AggregatorOuterIdentityIndexer
java.lang.Object
tools.refinery.interpreter.rete.network.BaseNode
tools.refinery.interpreter.rete.index.StandardIndexer
tools.refinery.interpreter.rete.aggregation.AbstractColumnAggregatorNode.AggregatorOuterIdentityIndexer
- All Implemented Interfaces:
Indexer
,NetworkStructureChangeSensitiveNode
,Node
- Enclosing class:
AbstractColumnAggregatorNode<Domain,
Accumulator, AggregateResult>
A special non-iterable index that checks a suspected aggregate value for a given signature. The signature for
this index is the original 'group by' masked tuple, with the suspected result inserted at position
resultPositionInSignature.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final TupleMask
protected final TupleMask
protected final int
Fields inherited from class tools.refinery.interpreter.rete.index.StandardIndexer
mask, parent
Fields inherited from class tools.refinery.interpreter.rete.network.BaseNode
nodeId, reteContainer, tag, traceInfos
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionThis indexer will be updated whenever a Rete update is sent to the active node (or an equivalent time slot allotted to it).getTimeline
(Tuple signature) void
At the time of the invocation, the dependency graph has already been updated.void
Methods inherited from class tools.refinery.interpreter.rete.index.StandardIndexer
assignTraceInfo, attachListener, detachListener, getContainer, getListeners, getMask, getParent, propagate, toStringCore
Methods inherited from class tools.refinery.interpreter.rete.network.BaseNode
acceptPropagatedTraceInfo, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface tools.refinery.interpreter.rete.network.Node
acceptPropagatedTraceInfo, getCommunicationTracker, getNodeId, getTag, getTraceInfos, setTag
-
Field Details
-
resultPositionInSignature
protected final int resultPositionInSignature -
pruneResult
-
reorderMask
-
logic
- Since:
- 2.4
-
-
Constructor Details
-
AggregatorOuterIdentityIndexer
public AggregatorOuterIdentityIndexer(int resultPositionInSignature)
-
-
Method Details
-
networkStructureChanged
public void networkStructureChanged()Description copied from interface:NetworkStructureChangeSensitiveNode
At the time of the invocation, the dependency graph has already been updated.- Specified by:
networkStructureChanged
in interfaceNetworkStructureChangeSensitiveNode
- Overrides:
networkStructureChanged
in classStandardIndexer
-
get
- Returns:
- all stored tuples that conform to the specified signature, null if there are none such. CONTRACT: do not modify!
-
getTimeline
- Since:
- 2.4
-
propagate
- Since:
- 2.4
-
getActiveNode
Description copied from interface:Indexer
This indexer will be updated whenever a Rete update is sent to the active node (or an equivalent time slot allotted to it). The active node is typically the indexer itself, but it can be a different node such as its parent.- Returns:
- the active node that operates this indexer
-
createLogic
- Since:
- 2.4
-