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

IDEA::ReactivePlannerRunner Class Reference

#include <ReactivePlannerRunner.hh>

Inheritance diagram for IDEA::ReactivePlannerRunner:

IDEA::TimeEventHandler List of all members.

Public Methods

 ReactivePlannerRunner (const AgentRelay *agentRelay, const AgentTimingService *timingService, const PslDatabase *database)
 Constructor.

 ~ReactivePlannerRunner ()
 Destructor.

const ReactivePlannergetReactivePlanner () const
bool isActive () const
 Returns true if the invoking plan runner is active, otherwise returns false.

void run ()
 Main loop of the plan-runner, invocation blocks untill the planrunner (agent) is done.

void stop ()
 Interrupts the main loop of the plan-runner.


Protected Methods

void handleWakeupCall (const Time &time)
 Invoked when a wakeup event happens. See Wakeup event.

void handleRebootCall (const Time &time)
 Invoked when a reboot event happens. See Wakeup event.


Private Types

typedef ACE_Thread_Mutex MutexLock
typedef ACE_Thread_Condition<
MutexLock
ConditionVariable

Private Methods

void handleReactivePlanningCycle ()
 Will handle the actual reactive planning cycle once the thread has received the start reactive planning cycle event via handleWakeupCall.

void activate ()
 Activates the invoking plan runner.

void deActivate ()
 De activates the invoking plan runner.

void scheduleNextWakeup () const
int svc (void)
 Main thread function.

void sendMessages () const
 ReactivePlannerRunner ()
 Not implemented by design.

 ReactivePlannerRunner (const ReactivePlannerRunner &)
 Not implemented by design.

ReactivePlannerRunner & operator= (const ReactivePlannerRunner &)
 Not implemented by design.


Private Attributes

bool m_Active
MutexLock m_Mutex
ConditionVariablem_StartCondition
ReactivePlannerm_ReactivePlanner
const PslDatabasem_Database
const AgentTimingServicem_AgentTimingService
const AgentRelaym_AgentRelay

Member Typedef Documentation

typedef ACE_Thread_Condition< MutexLock > IDEA::ReactivePlannerRunner::ConditionVariable [private]
 

typedef ACE_Thread_Mutex IDEA::ReactivePlannerRunner::MutexLock [private]
 


Constructor & Destructor Documentation

IDEA::ReactivePlannerRunner::ReactivePlannerRunner const AgentRelay   agentRelay,
const AgentTimingService   timingService,
const PslDatabase   database
 

Constructor.

IDEA::ReactivePlannerRunner::~ReactivePlannerRunner  
 

Destructor.

IDEA::ReactivePlannerRunner::ReactivePlannerRunner   [private]
 

Not implemented by design.

IDEA::ReactivePlannerRunner::ReactivePlannerRunner const ReactivePlannerRunner &    [private]
 

Not implemented by design.


Member Function Documentation

void IDEA::ReactivePlannerRunner::activate   [private]
 

Activates the invoking plan runner.

void IDEA::ReactivePlannerRunner::deActivate   [private]
 

De activates the invoking plan runner.

const ReactivePlanner * IDEA::ReactivePlannerRunner::getReactivePlanner  
 

void IDEA::ReactivePlannerRunner::handleReactivePlanningCycle   [private]
 

Will handle the actual reactive planning cycle once the thread has received the start reactive planning cycle event via handleWakeupCall.

void IDEA::ReactivePlannerRunner::handleRebootCall const Time   time [protected, virtual]
 

Invoked when a reboot event happens. See Wakeup event.

Default implementation is empty

Reimplemented from IDEA::TimeEventHandler.

void IDEA::ReactivePlannerRunner::handleWakeupCall const Time   time [protected, virtual]
 

Invoked when a wakeup event happens. See Wakeup event.

Default implementation is empty

Reimplemented from IDEA::TimeEventHandler.

bool IDEA::ReactivePlannerRunner::isActive  
 

Returns true if the invoking plan runner is active, otherwise returns false.

ReactivePlannerRunner& IDEA::ReactivePlannerRunner::operator= const ReactivePlannerRunner &    [private]
 

Not implemented by design.

void IDEA::ReactivePlannerRunner::run  
 

Main loop of the plan-runner, invocation blocks untill the planrunner (agent) is done.

void IDEA::ReactivePlannerRunner::scheduleNextWakeup   [private]
 

void IDEA::ReactivePlannerRunner::sendMessages   [private]
 

void IDEA::ReactivePlannerRunner::stop   [virtual]
 

Interrupts the main loop of the plan-runner.

Reimplemented from IDEA::TimeEventHandler.

int IDEA::ReactivePlannerRunner::svc void    [private]
 

Main thread function.


Member Data Documentation

bool IDEA::ReactivePlannerRunner::m_Active [private]
 

const AgentRelay* IDEA::ReactivePlannerRunner::m_AgentRelay [private]
 

const AgentTimingService* IDEA::ReactivePlannerRunner::m_AgentTimingService [private]
 

const PslDatabase* IDEA::ReactivePlannerRunner::m_Database [private]
 

MutexLock IDEA::ReactivePlannerRunner::m_Mutex [private]
 

ReactivePlanner* IDEA::ReactivePlannerRunner::m_ReactivePlanner [private]
 

ConditionVariable* IDEA::ReactivePlannerRunner::m_StartCondition [private]
 


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