|
||||||||||
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 FormField 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 ArgumentsMethod 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 Instance
Instance
die neu gesetzte Instance
public 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.PredArgument
public 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 |