|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--operators.PredArgument
Diese Klasse repr?sentiert EIN Argument eines Pr?dikates einer Operatorbedingung.
Seit der Version 1.7 werden auch Mengen unterst?tzt. Dabei ist zu beachten,
dass es sich um Mengen von Instanzen handelt, die alle zu demselben Konzept
geh?ren.
Die Instanz in instance muss dabei nicht in
otherInstances vorhanden sein.
Operator,
Predicate, Serialized Form| Field Summary | |
private Concept |
concept
|
private boolean |
createsWorldObject
F?r ein PredArg, das Bestandteil eines Predicate in einer add-Liste ist, zeigt dieses Flag an, ob dieses PredArg bei Ausf"uhrung des zugeh"origen Operators mit einem NEUEN Weltobjekt instantiiert wird (true) oder nicht (false, Default). F"ur PredArgs in einer Precondition oder einer delete-Liste ist dieses Flag bedeutungslos. Der GraphPlan basierte PlannerTypeC braucht dieses Flag zur Erstellung von Pl"anen f"ur dynamisch wachsende Objektwelten. |
private boolean |
firstUse
Dieses Flag hilft dem Planausf?hrer festzustellen, ob er dieses PredArgument noch anders belegen darf oder nicht. |
private Instance |
instance
|
private java.lang.String |
name
|
protected java.util.LinkedList |
otherInstances
In dieser Liste werden die Instanzen abgelegt, die dieses PredArgument au?erdem noch annehmen kann. |
| Constructor Summary | |
PredArgument(Concept type,
java.lang.String name)
|
|
PredArgument(java.lang.String name)
Dieser Konstruktor ist fuer den Gebrauch in Zusammenarbeit mit der OperatorDB
geschrieben. |
|
| Method Summary | |
void |
addInstance(Instance inst)
Diese Methode f?gt otherInstances eine weitere Instanz
hinzu. |
java.lang.Object |
clone()
Diese Methode gibt ein Deepcopy des PredArgument zur?ck. |
PredArgument |
deepPointerClone(java.util.Hashtable name2PredArg)
|
void |
delete()
Diese Methode l?scht aus der instance die Zugehörigkeit
zum Konzept concept.
Bezieht sich nur auf die Instance in
instance!
Ist das PredArgument nicht belegt, so wird der
Aufruf ignoriert. |
void |
deleteInstance(Instance inst)
Diese Methode l?scht aus otherInstances eine Instanz. |
Concept |
getConcept()
|
boolean |
getCreatesWorldObject()
Get-Methode f"ur das Flag createsWorldObject. |
boolean |
getFirstUse()
|
Instance |
getInstance()
|
java.lang.String |
getName()
|
java.util.ListIterator |
getOtherInstancesIterator()
|
boolean |
instantiated()
|
boolean |
replaceable(PredArgument predArg2)
Testet ob das ?bergebene PredArgument dieses
PredArgument ersetzen kann, weil concept
das Concept des ?bergebenen PredArgument
subsumiert. |
void |
revert()
Diese Methode stellt die mit delete() gel?schte
onzeptzugehörigkeit wieder her. |
void |
setConcept(Concept c)
Diese Methode setzt die Variable concept auf den
?bergebenen Wert. |
boolean |
setCreatesWorldObject(boolean b)
Set-Methode f"ur das Flag createsWorldObject. |
void |
setFirstUse(boolean b)
|
Instance |
setInstance(Instance inst)
|
java.lang.String |
setName(java.lang.String s)
|
java.lang.String |
toString()
Diese Methode gibt einen String zur?ck, der das PredArgument
so repr?sentiert:name:Instance.name:Concept.name
|
| Methods inherited from class java.lang.Object |
|
| Field Detail |
private Concept concept
private boolean createsWorldObject
private Instance instance
private java.lang.String name
protected java.util.LinkedList otherInstances
PredArgument au?erdem noch annehmen kann. Die Liste hilft
beliebige Mengen darzustellen.private boolean firstUse
otherInstances den Zweck zu verhindern, dass der Planausf?hrer dieses PredArgument st?ndig neu belegt.| Constructor Detail |
public PredArgument(Concept type,
java.lang.String name)
type - Das Konzept -- der Typ -- des Parameters.name - Der Name des Argumentspublic PredArgument(java.lang.String name)
OperatorDB
geschrieben. Das Konzept wird dabei auf
null gesetzt.name - Der Name des Arguments| Method Detail |
public Concept getConcept()
Concept Das Konzept des Argumentespublic boolean getCreatesWorldObject()
boolean Wert des Flags createsWorldObject.public boolean setCreatesWorldObject(boolean b)
boolean Neuer Wert des Flags createsWorldObject.public java.lang.String getName()
String Der symbolische Name
des Pr?dikats.public java.lang.String setName(java.lang.String s)
s - der zu setzende Name.String der neu gesetzte Name.public Instance getInstance()
Instance Instanz zu dem Konzept.public Instance setInstance(Instance inst)
inst - die zu setzende InstanceInstance die neu gesetzte Instancepublic boolean instantiated()
true, wenn zu dem Konzept eine Instanz vorhanden ist. Sonst false.public java.lang.String toString()
PredArgument
so repr?sentiert:PredArgument repr?sentiert.public java.lang.Object clone()
PredArgument zur?ck.
Das concept und die instance werden
allerdings nicht geklont.PredArgumentpublic PredArgument deepPointerClone(java.util.Hashtable name2PredArg)
public void delete()
instance die Zugehörigkeit
zum Konzept concept.
Bezieht sich nur auf die Instance in
instance!
Ist das PredArgument nicht belegt, so wird der
Aufruf ignoriert.
public void revert()
delete() gel?schte
onzeptzugehörigkeit wieder her.
Ist das PredArgument nicht belegt, so wird der
Aufruf ignoriert.
Bezieht sich nur auf die Instance in
instance!
public void setConcept(Concept c)
concept auf den
?bergebenen Wert.c - das Konzept, das diesem PredArgument
zugrunde liegt.public void setFirstUse(boolean b)
b - setzt firstUse auf den ?bergebenen Wert.public boolean getFirstUse()
public void addInstance(Instance inst)
otherInstances eine weitere Instanz
hinzu. Doppelte Eintragungen werden ignoriert.inst - hinzuzuf?gende Instanzpublic void deleteInstance(Instance inst)
otherInstances eine Instanz.
Wenn sie nicht in der Liste enthalten war, wird der Befehl ignoriert.inst - zu l?schende Instanzpublic java.util.ListIterator getOtherInstancesIterator()
ListIterator ?ber die in diesem PredArgument
gespeicherten otherInstances.public boolean replaceable(PredArgument predArg2)
PredArgument dieses
PredArgument ersetzen kann, weil concept
das Concept des ?bergebenen PredArgument
subsumiert.predArg2 - PredArgument, das den Platz dieses
PredArgument einnehmen k?nnen soll.true, wenn concept vom Concept
des ?bergebenen PredArgument subsumiert wird, sonst
false.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||