@Override
@SuppressWarnings("serial")
public List<SingleParameter> getParameters() {
ArrayList<SingleParameter> liste = new ArrayList<SingleParameter>(10);
liste.add(new SingleParameter(
EAPlugin.UMGEBUNG_ATTR,
Datatypes.STRING,
EAPlugin.UMGEBUNG_DATNAME,
"Der Dateiname, aus dem die Umgebung gelesen wird.",
this.id().toUpperCase()) {
@Override
public BufferedImage getImage(final ParCollection params) {
BufferedImage img = null;
try {
img = ImageIO.read(new File(
params.getStdDirectory()
+ File.separator
+ this.getParValue()));
} catch (IOException e) {
img = new BufferedImage(
400,
100,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = img.createGraphics();
g.setColor(Color.red);
g.fillRect(0, 0, 400, 100);
g.setColor(Color.black);
g.drawString("Field bitmap not found: "
+ params.getStdDirectory()
+ File.separator
+ this.getParValue(), 50, 50);
}
return img;
}
});
ArrayListString fitList = new ArrayListString(1);
fitList.add(new FitnessNull().id());
liste.add(new SingleParameter(
EAPlugin.FIT_VERFAHREN_AT,
Datatypes.STRING_ARR,
fitList,
"Array der Fitnessverfahren (1 / Automat; siehe Klasse "
+ "OpsFactory): "
+ "die einzelnen Fitnessverfahren "
+ "müssen durch Kommas ohne Leerzeichen voneinander getrennt "
+ "werden. ACHTUNG: mindestens ein Verfahren erforderlich.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
EAPlugin.FIT_ZYK_ATTR,
Datatypes.LONG,
50l,
"Das Intervall für Fitness-Snapshots.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
EAPlugin.FIT_EVAP_ZYK_ATTR,
Datatypes.LONG,
300l,
"Das Intervall für Fitness-Evaporation.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
EAPlugin.FIT_EVAP_VAL_ATTR,
Datatypes.DOUBLE,
2.0,
"Der Divisionswert für die Fitness-Evaporation.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
EAPlugin.UNFALL_ABZUG,
Datatypes.DOUBLE,
3.0,
"Der Fitness-Abzug bei Kollisionen.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
"UseOnlyStandardDecoding?",
Datatypes.BOOLEAN,
new Boolean(false),
"Ob nur die Standardkodierung verwendet werden soll. "
+ "Der Translator wird dabei NICHT zum Übersetzen "
+ "verwendet.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
"showEALabels?",
Datatypes.BOOLEAN,
true,
"Ob die Labels (Knoten / Kanten) in der grafischen Darstellung eines MARBs angezeigt werden.",
this.id().toUpperCase()));
liste.add(new SingleParameter(
"UseTranslatorWITHCompletingTransitions",
Datatypes.BOOLEAN,
true,
"Selects the translator mode (with - WC or without - WOC completing transitions)",
this.id().toUpperCase()));