|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The class that implements this interface is concerned with the connection and splitting of groups. This is a low level module, so it is just concerned with whether groups can be connected or split on a tactical level. It is not concerned with whether this weakens other groups, whether the connected group can live, or other higher level considerations.
Field Summary | |
static float |
CONFIDENCE
|
Method Summary | |
boolean |
areGroupsConnected(SingleGroup sg1,
SingleGroup sg2)
Determine if the two groups are connected. |
boolean |
areGroupsConnected(SingleLooseGroup slg1,
SingleLooseGroup slg2)
Determine if the two loose groups are be connected. |
boolean |
canGroupsConnect(SingleGroup sg1,
SingleGroup sg2)
Determine if the two groups can be connected. |
boolean |
canGroupsConnect(SingleLooseGroup slg1,
SingleLooseGroup slg2)
Determine if the two loose groups can be connected. |
boolean |
canSplitGroups(SingleGroup sg1,
SingleGroup sg2)
Determine if the two groups can be split. |
boolean |
canSplitGroups(SingleLooseGroup slg1,
SingleLooseGroup slg2)
Determine if the two loose groups can be split. |
MoveDescriptorForest |
connectGroups(SingleGroup sg1,
SingleGroup sg2)
Determine the sequence of moves to connect the two groups. |
MoveDescriptorForest |
connectGroups(SingleLooseGroup slg1,
SingleLooseGroup slg2)
Determine the sequence of moves to connect the two groups. |
SingleGroup[] |
getConnectedGroups(SingleGroup sg)
Get the groups which are connected to the group in question. |
SingleLooseGroup[] |
getConnectedGroups(SingleLooseGroup slg)
Get the loose groups which are connected to the loose group in question. |
MoveDescriptorForest |
splitGroups(SingleGroup sg1,
SingleGroup sg2)
Determine the sequence of moves for splitting the two groups. |
MoveDescriptorForest |
splitGroups(SingleLooseGroup slg1,
SingleLooseGroup slg2)
Determine the sequence of moves for splitting the two loose groups. |
Methods inherited from interface org.moyoman.module.ModuleInterface |
clone, getMoves, getScheduler |
Field Detail |
public static final float CONFIDENCE
Method Detail |
public boolean areGroupsConnected(SingleGroup sg1, SingleGroup sg2) throws IllegalArgumentException
sg1
- The first group.sg2
- The second group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public boolean areGroupsConnected(SingleLooseGroup slg1, SingleLooseGroup slg2) throws IllegalArgumentException
slg1
- The first loose group.slg2
- The second loose group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public boolean canGroupsConnect(SingleGroup sg1, SingleGroup sg2) throws IllegalArgumentException
sg1
- The first group.sg2
- The second group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public boolean canGroupsConnect(SingleLooseGroup slg1, SingleLooseGroup slg2) throws IllegalArgumentException
slg1
- The first loose group.slg2
- The second loose group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public MoveDescriptorForest connectGroups(SingleGroup sg1, SingleGroup sg2) throws IllegalArgumentException
sg1
- The first group.sg2
- The second group.
IllegalArgumentException
- Thrown if the two groups are not the same color,
or it is not the case that canGroupsConnect(sg1, sg2) is true and
areGroupsConnected(sg1, sg2) is false.public MoveDescriptorForest connectGroups(SingleLooseGroup slg1, SingleLooseGroup slg2) throws IllegalArgumentException
slg1
- The first loose group.slg2
- The second loose group.
IllegalArgumentException
- Thrown if the two groups are not the same color,
or it is not the case that canGroupsConnect(slg1, slg2) is true and
areGroupsConnected(slg1, slg2) is false.public SingleGroup[] getConnectedGroups(SingleGroup sg)
sg
- The group in question.
public SingleLooseGroup[] getConnectedGroups(SingleLooseGroup slg)
slg
- The loose group in question.
public boolean canSplitGroups(SingleGroup sg1, SingleGroup sg2) throws IllegalArgumentException
sg1
- The first group.sg2
- The second group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public boolean canSplitGroups(SingleLooseGroup slg1, SingleLooseGroup slg2) throws IllegalArgumentException
slg1
- The first loose group.slg2
- The second loose group.
IllegalArgumentException
- Thrown if the two groups are not the same color.public MoveDescriptorForest splitGroups(SingleGroup sg1, SingleGroup sg2) throws IllegalArgumentException
sg1
- The first group.sg2
- The second group.
IllegalArgumentException
- Thrown if the two groups are not the same color,
or if canSplitGroups(sg1, sg2) returns false.public MoveDescriptorForest splitGroups(SingleLooseGroup slg1, SingleLooseGroup slg2) throws IllegalArgumentException
slg1
- The first loose group.slg2
- The second loose group.
IllegalArgumentException
- Thrown if the two loose groups are not the same color,
or if canSplitGroups(slg1, slg2) returns false.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |