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/PlanServer/Includes/PlasmaTimeConstraintImpl.hh

Go to the documentation of this file.
00001 // -*- Mode: C++ -*-
00002 //      CVS: $Id: PlasmaTimeConstraintImpl.hh,v 1.5 2005/11/08 18:32:50 rijsman Exp $
00003 //      Tag: $name$
00004 //     Info: $CVSROOT/IDEA-DEV/COPYRIGHT
00005 
00006 #ifndef PLANSERVER_PLASMA_TIME_CONSTRAINT_IMPLEMENTATION_HEADER_
00007 #define PLANSERVER_PLASMA_TIME_CONSTRAINT_IMPLEMENTATION_HEADER_
00008 
00009 #include "PslTimeConstraintImpl.hh"
00010 
00011 #include "Constraint.hh"
00012 
00013 namespace IDEA
00014 {
00020   #define TIMECONSTRAINT "TIMECONSTRAINT"
00021 
00027   class TimeConstraint:
00028     public EUROPA::Constraint
00029   {
00030   public:
00034     TimeConstraint( PslTimeConstraintImpl* impl,
00035                     const EUROPA::ConstraintEngineId& constraintEngine, 
00036                     const std::vector< EUROPA::ConstrainedVariableId >& variables);
00040     ~TimeConstraint();
00044     void handleExecute();
00045   private:
00046     PslTimeConstraintImpl* m_PslTimeConstraint;
00047   };
00048 
00054   class PlasmaTimeConstraintImpl:
00055     public PslTimeConstraintImpl
00056   {
00057   public:
00061     PlasmaTimeConstraintImpl( const PslToken* token, int authority );
00065     ~PlasmaTimeConstraintImpl();
00069     int getId() const;
00073     bool isActive() const;
00077     void deActivate() const;
00078   protected:
00082     void activateExtended( int authority ) const;
00083   private:
00084     EUROPA::ConstraintId m_ConstraintId;
00085   };
00086 
00090 }
00091 
00092 #endif // PLANSERVER_PLASMA_TIME_CONSTRAINT_IMPLEMENTATION_HEADER_
00093  

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