AtomLeafAgentManager.AgentSource<AtomTestChainLength.LengthAgent>
, AtomTest
, AtomTestCollective
, java.util.function.Predicate<IAtom>
public class AtomTestChainLength extends java.lang.Object implements AtomTestCollective, AtomLeafAgentManager.AgentSource<AtomTestChainLength.LengthAgent>
Modifier and Type | Class | Description |
---|---|---|
static class |
AtomTestChainLength.LengthAgent |
Modifier and Type | Field | Description |
---|---|---|
protected AtomLeafAgentManager<IAtom[]> |
agentManager |
|
protected Box |
box |
|
protected AtomLeafAgentManager<AtomTestChainLength.LengthAgent> |
chainLengthManager |
|
protected int |
maxChainLength |
Constructor | Description |
---|---|
AtomTestChainLength(AtomLeafAgentManager<IAtom[]> aam) |
Modifier and Type | Method | Description |
---|---|---|
Box |
getBox() |
|
AtomTestChainLength.LengthAgent |
makeAgent(IAtom a,
Box agentBox) |
Returns an agent for the given Atom.
|
protected int |
recursiveTag(IAtom a,
int chainLength) |
|
void |
releaseAgent(AtomTestChainLength.LengthAgent agent,
IAtom atom,
Box agentBox) |
This informs the agent source that the agent is going away and that
the agent source should disconnect the agent from other elements.
|
void |
resetTest() |
Informs the AtomTest that something in the system has changed (atom
positions, velocityies, etc) has changed and the status of the
atoms should be determined.
|
void |
setBox(Box box) |
|
boolean |
test(IAtom a) |
Returns true if atom passes the test.
|
protected Box box
protected AtomLeafAgentManager<AtomTestChainLength.LengthAgent> chainLengthManager
protected AtomLeafAgentManager<IAtom[]> agentManager
protected int maxChainLength
public AtomTestChainLength(AtomLeafAgentManager<IAtom[]> aam)
public AtomTestChainLength.LengthAgent makeAgent(IAtom a, Box agentBox)
AtomLeafAgentManager.AgentSource
makeAgent
in interface AtomLeafAgentManager.AgentSource<AtomTestChainLength.LengthAgent>
agentBox
- TODOpublic void releaseAgent(AtomTestChainLength.LengthAgent agent, IAtom atom, Box agentBox)
AtomLeafAgentManager.AgentSource
releaseAgent
in interface AtomLeafAgentManager.AgentSource<AtomTestChainLength.LengthAgent>
public void resetTest()
AtomTestCollective
resetTest
in interface AtomTestCollective
protected int recursiveTag(IAtom a, int chainLength)
public Box getBox()
public void setBox(Box box)