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/Core/Agent/Includes/AgentTimingServiceImpl.hh

Go to the documentation of this file.
00001 // -*- Mode: c++ -*-
00002 //     File: $Source: /home/cvs/ISG-Repository/IDEA-DEV/Core/Agent/Includes/AgentTimingServiceImpl.hh,v $
00003 //      Tag: $Name: DR_01_11_06 $
00004 //      CVS: $Id: AgentTimingServiceImpl.hh,v 1.4 2005/12/30 22:05:31 rijsman Exp $
00005 //     Info: $CVSROOT/COPYRIGHT
00006 
00007 #ifndef IDEA_AGENTTIMING_SERVICE_IMPL_H
00008 #define IDEA_AGENTTIMING_SERVICE_IMPL_H
00009 
00010 #include <string>
00011 #include "TimeBasics.hh"
00012 #include "ThreadTools.hh"
00013 
00014 namespace IDEA
00015 {
00016   class TimeEventHandler;
00017 
00027   class AgentTimingServiceImpl
00028   {
00029   public:
00033     virtual ~AgentTimingServiceImpl();
00037     virtual RecursiveThreadMutex& getMutex() = 0;
00041     TimeEventHandler* setTimeEventHandler( TimeEventHandler* handler, bool deleteInstance );
00042     const TimeEventHandler* getTimeEventHandler() const;
00046     virtual bool getNextScheduledTime( Time& time )  = 0;
00050     virtual void setCancellableEventTimer(const Time& time) = 0;
00054     virtual void cancelEventTimer() = 0;
00058     virtual void setRebootTimer(const Time& time) = 0;
00063     virtual void cancelRebootTimer() = 0;
00067     virtual void setNonCancellableEventTimer(const Time& time) = 0;
00071     virtual void cancelAllTimers() = 0;
00075     virtual bool isInitialized() const = 0; 
00079     virtual Time getCurrentTime() = 0;
00084     virtual Time getElapsedTime() = 0;
00088     virtual Time getTimeOfDay() = 0;
00092     virtual void incrementTransitMessages( int numOfMsgs=1 ) = 0;
00096     virtual void decrementTransitMessages(int numOfMsgs=1) = 0;
00100     virtual void cancelTimer( const Time& time ) = 0;
00106     virtual void incrementNonWarpableCommands() = 0;
00112     virtual void decrementNonWarpableCommands() = 0;
00116     void stop();
00117   protected:
00121     AgentTimingServiceImpl( const std::string& name );
00122 
00123     TimeEventHandler* m_TimeEventHandler;
00124   private:
00128     std::string m_AgentName;
00129 
00130     bool  m_DeleteTimeEventHandler;
00131   };
00132 }
00133 
00134 #endif // IDEA_AGENTTIMING_SERVICE_IMPL_H
00135 

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