Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

/home/pauldt/projects/IDEA/IDEA-ALL/IDEA-DEV/Modules/PLASMA/GoalLoader/Includes/GoalLoaderDecisionManager.hh

Go to the documentation of this file.
00001 // -*- Mode: C++ -*-
00002 //      CVS: $Id: GoalLoaderDecisionManager.hh,v 1.9 2005/10/13 16:53:48 rijsman Exp $
00003 //      Tag: $name$
00004 //     Info: $CVSROOT/COPYRIGHT
00005 
00006 #ifndef GOAL_LOADER_DECISION_MANAGER_HEADER_
00007 #define GOAL_LOADER_DECISION_MANAGER_HEADER_
00008 
00009 #include "PlasmaOpenDecisionManager.hh"
00010 
00011 #include "PlanReader.hh"
00012 
00013 #include "HeuristicsEngine.hh"
00014 #include "TokenDecisionPoint.hh"
00015 #include "DbClient.hh"
00016 
00017 #include "PslDatabase.hh"
00018 
00019 #include "PlannerImpl.hh"
00020 
00021 namespace IDEA
00022 {
00028   class GoalLoaderDecisionManager: 
00029     public PlasmaOpenDecisionManager
00030   {
00031   public:
00035     GoalLoaderDecisionManager(const EUROPA::HeuristicsEngineId& heur, 
00036                               const PslDatabase *db,
00037                               const EUROPA::PlanDatabaseId plasmaDb,
00038                               const int plannerAuthority,
00039                               const PlannerHorizonPolicy * horizon, 
00040                               bool controlTimes=true, 
00041                               bool mergeFirstToken = true,
00042                               bool freezeTokenStartEndTimes = true,
00043                               bool useGeneralTimelines = false);
00048     void setGoals(PlanReader::ObjectToTimelines const & planBranch);
00049   protected:
00054     virtual EUROPA::DecisionPointId getNextDecision();
00058     virtual void printOpenDecisions(std::ostream& os = std::cout);
00059   private:
00060 
00061     EUROPA::DbClientId m_dbClient;
00062     const PslDatabase *m_db;
00063     std::list<EUROPA::DecisionPointId> m_goalDecisions;
00064     const int m_plannerAuthority;
00065     PlannerHorizonPolicy * m_plannerHorizon;
00066     bool m_controlTimes;
00067     bool  m_mergeFirstToken;
00068     bool m_restrictTokenTimesBaseDomains;
00069     bool m_useGeneralTimelines;
00070   };
00071 }
00072 
00073 #endif //GOAL_LOADER_DECISION_MANAGER_HEADER_

Contact information
© IDEA
Generated on Fri Feb 3 17:09:42 2006 for IDEA.