EmbASP-CSharp
Plan.cs
1 using it.unical.mat.parsers.pddl;
2 using System;
3 using System.Collections.Generic;
4 using System.Collections.ObjectModel;
5 
7 {
8  using Output = it.unical.mat.embasp.@base.Output;
9 
10  public abstract class Plan : Output, IPDDLDataCollection
11  {
12  protected internal IList<Action> actionSequence;
13  private IList<object> actionsObjects;
14 
15  public Plan(string plan, string error) : base(plan, error) { }
16 
17  public virtual IList<Action> Actions
18  {
19  get
20  {
21  if (actionSequence == null)
22  {
23  actionSequence = new List<Action>();
24  Parse();
25  }
26  return new ReadOnlyCollection<Action>(actionSequence);
27  }
28  }
29 
30  public virtual IList<object> ActionsObjects
31  {
32  get
33  {
34  if (actionsObjects == null)
35  {
36  actionsObjects = new List<object>();
37  PDDLMapper mapper = PDDLMapper.Instance;
38  //Console.WriteLine("OK");
39  foreach (Action a in Actions)
40  {
41  object obj = mapper.GetObject(a.Name);
42  //Console.WriteLine(obj.ToString());
43  if (obj != null)
44  actionsObjects.Add(obj);
45  }
46  }
47  //Console.WriteLine(actionsObjects.ToString());
48  return actionsObjects;
49  }
50  }
51 
52  public void StoreAction(string action)
53  {
54  actionSequence.Add(new Action(action));
55  }
56  }
57 }
base
Definition: Callback.cs:1
it.unical.mat.embasp
Definition: AnswerSet.cs:5
it.unical.mat.embasp.languages.pddl.Plan
Definition: Plan.cs:10
it.unical
Definition: AnswerSet.cs:5
it.unical.mat.embasp.languages.pddl.Action
Definition: Action.cs:3
it.unical.mat.parsers.pddl
Definition: IPDDLDataCollection.cs:1
it
Definition: AnswerSet.cs:5
it.unical.mat.embasp.languages.pddl.PDDLMapper
Definition: PDDLMapper.cs:10
it.unical.mat.parsers.pddl.IPDDLDataCollection
Definition: IPDDLDataCollection.cs:3
it.unical.mat.embasp.languages.pddl
Definition: Action.cs:1
it.unical.mat.parsers
Definition: ASPParser.cs:6
base.Output
Definition: Output.cs:5
it.unical.mat
Definition: AnswerSet.cs:5