diff options
author | dmack <dmack@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2008-12-17 22:25:17 +0000 |
---|---|---|
committer | dmack <dmack@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2008-12-17 22:25:17 +0000 |
commit | b8604ee1674454c91c78773eb68c6279bacd8766 (patch) | |
tree | 68c5220f1993611de6f65f8c13af0fd8c632f15c | |
parent | 1035ee1cd9c7f963fb46b26740b9cf277539a580 (diff) | |
download | ATCD-b8604ee1674454c91c78773eb68c6279bacd8766.tar.gz |
-rw-r--r-- | SA_POP/SA_WorkingPlan.cpp | 108 | ||||
-rw-r--r-- | SA_POP/SA_WorkingPlan.h | 6 | ||||
-rw-r--r-- | SA_POP/WorkingPlan.h | 6 |
3 files changed, 120 insertions, 0 deletions
diff --git a/SA_POP/SA_WorkingPlan.cpp b/SA_POP/SA_WorkingPlan.cpp index 3c009856b04..b2f3c11ecee 100644 --- a/SA_POP/SA_WorkingPlan.cpp +++ b/SA_POP/SA_WorkingPlan.cpp @@ -244,6 +244,114 @@ SA_WorkingPlan::~SA_WorkingPlan (void) // Nothing to do. }; +//Reset Plan. + +void SA_WorkingPlan::reset_plan () +{ + + next_inst_id_ =1; + this->task_insts_.clear (); + this->task_impls_.clear (); + this->causal_links_.clear (); + + // Clear goal. + this->goal_.goal_id = "NULL"; + this->goal_.name = "NULL"; + this->goal_.abs_times.clear (); + this->goal_.rel_times.clear (); + this->goal_.goal_conds.clear (); + this->goal_.start_window = std::make_pair (0, 0); + + // Clear plan. + this->plan_.causal_links.clear (); + this->plan_.connections.clear (); + this->plan_.sched_links.clear (); + this->plan_.task_insts.clear (); + this->plan_.threat_links.clear (); + + this->precedence_graph_.clear(); + + this->init_start.clear(); + this->init_end.clear(); + + PrecedenceSet temp; + this->precedence_graph_.insert(std::make_pair(BEFORE,temp)); + this->precedence_graph_.insert(std::make_pair(AFTER,temp)); + this->precedence_graph_.insert(std::make_pair(SIMUL,temp)); + this->precedence_graph_.insert(std::make_pair(UNRANKED,temp)); + + + +this->init_start.insert(std::make_pair(1,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(1,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(2,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(2,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(3,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(3,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(4,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(4,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(5,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(5,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(6,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(6,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(7,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(7,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(8,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(8,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(9,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(9,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(10,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(10,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(11,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(11,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(12,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(12,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(13,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(13,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(14,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(14,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(15,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(15,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(16,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(16,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(17,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(17,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(17,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(17,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(18,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(18,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(19,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(19,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(20,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(20,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(21,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(21,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(22,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(22,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(23,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(23,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(24,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(24,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(25,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(25,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(26,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(26,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(27,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(27,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(28,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(28,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(29,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(29,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(30,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(30,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(31,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(31,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_start.insert(std::make_pair(32,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); +this->init_end.insert(std::make_pair(32,(TimeWindow)std::make_pair(NULL_TIME,NULL_TIME))); + + +} + // Set goal. void SA_WorkingPlan::set_goal (const SA_POP::Goal &goal) { diff --git a/SA_POP/SA_WorkingPlan.h b/SA_POP/SA_WorkingPlan.h index 9b31018fd65..0e9ca225f78 100644 --- a/SA_POP/SA_WorkingPlan.h +++ b/SA_POP/SA_WorkingPlan.h @@ -321,6 +321,12 @@ namespace SA_POP { */ virtual void undo (SA_AdjustMaxTimesCmd *cmd); + /// Reset a working plan + /** + * + */ + virtual void reset_plan (); + protected: // ************************************************************************ // State information. diff --git a/SA_POP/WorkingPlan.h b/SA_POP/WorkingPlan.h index 6921e94433a..3866bffc185 100644 --- a/SA_POP/WorkingPlan.h +++ b/SA_POP/WorkingPlan.h @@ -41,6 +41,12 @@ namespace SA_POP { /// Destructor. virtual ~WorkingPlan (void) { }; + /// Reset Working Plan. + /** + * + */ + virtual void reset_plan () = 0; + /// Set goal. /** * @param goal Goal of this working plan. |