📄 basicincnodepicker.java
字号:
/**
* Description:
*
* @ Author Create/Modi Note
* Xiaofeng Xie Dec 04, 2006
*
*/
package implement.common.behavior.elemPick.increment;
import Global.basic.data.collection.*;
import Global.basic.nodes.utilities.*;
import maosKernel.represent.landscape.*;
import maosKernel.behavior.*;
import implement.common.represent.*;
import implement.common.knowledge.*;
import implement.common.behavior.elemPick.increment.candidateBuild.*;
import implement.common.behavior.elemPick.increment.candidatePick.clueBased.pick.*;
import implement.common.behavior.elemPick.increment.candidatePick.clueBased.assign.*;
public class BasicIncNodePicker extends AbsBehavior implements IIncNodePickEngine {
//For candidate IDs
private AbsLECandidateSetBuilder candidateSetBuilder = new RepLECandidateSetBuilder();
private ICluePickEngine cluePicker;
private IDValueAssignEngine clueAssigner;
//temp
private IDynamicICollectionEngine candidateArray;
public BasicIncNodePicker() {}
protected void setRootInfo(AbsLandscape landscape) {
super.setRootInfo(landscape);
int nodeNumber = landscape.getSearchSpace().getNodeNumber();
candidateArray = new IArray(nodeNumber);
int[] consArray = new int[nodeNumber];
ConstraintKnowledge.getConstraintArray(consArray, (IConstraintEngine)(landscape));
candidateSetBuilder.initValueArray(consArray);
}
public void initUtilities() {
super.initUtilities();
initUtility(new BasicUtility("candidateSetBuilder", candidateSetBuilder));
initUtility(new BasicUtility("cluePicker", cluePicker));
initUtility(new BasicUtility("clueAssigner", clueAssigner));
}
public void shortcutInit() throws Exception {
super.shortcutInit();
candidateSetBuilder = (AbsLECandidateSetBuilder)getValue("candidateSetBuilder");
cluePicker = (ICluePickEngine)getValue("cluePicker");
clueAssigner = (IDValueAssignEngine)getValue("clueAssigner");
}
public int pickBehavior(IAlienICollectionEngine existElements, int consGap) {
candidateSetBuilder.initCandidateSet(candidateArray, existElements, consGap);
if (candidateArray.getSize()==0) return -1;
clueAssigner.setExistingElements(existElements);
cluePicker.setRealClue(clueAssigner);
return cluePicker.pickBehavior(candidateArray);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -