Sandia Home Sandia Home
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

APPSPACK::Executor::Interface Class Reference

#include <APPSPACK_Executor_Interface.hpp>

Inheritance diagram for APPSPACK::Executor::Interface:

Inheritance graph
[legend]
List of all members.

Detailed Description

Generic interface for an object that coordinates the execution of function evaluations.

Definition at line 50 of file APPSPACK_Executor_Interface.hpp.

Public Member Functions

 Interface ()
 Constructor.
virtual ~Interface ()
 Destructor.
virtual bool isWaiting () const =0
 Return true if the executor is waiting for more points to be spawned.
virtual bool spawn (const Vector &x_in, int tag_in)=0
 Start a function evaluation for the given point with the given integer tag.
virtual int recv (int &tag_out, bool &isF_out, double &f_out, string &msg_out)=0
 Check to see if any function evaluations have finished and return the relevant information.
virtual void print () const
 Optional print function to print out information about the executor.


Constructor & Destructor Documentation

APPSPACK::Executor::Interface::Interface  )  [inline]
 

Constructor.

Definition at line 55 of file APPSPACK_Executor_Interface.hpp.

virtual APPSPACK::Executor::Interface::~Interface  )  [inline, virtual]
 

Destructor.

Definition at line 58 of file APPSPACK_Executor_Interface.hpp.


Member Function Documentation

virtual bool APPSPACK::Executor::Interface::isWaiting  )  const [pure virtual]
 

Return true if the executor is waiting for more points to be spawned.

Implemented in APPSPACK::Executor::MPI, and APPSPACK::Executor::Serial.

Referenced by APPSPACK::Conveyor::exchange().

virtual bool APPSPACK::Executor::Interface::spawn const Vector x_in,
int  tag_in
[pure virtual]
 

Start a function evaluation for the given point with the given integer tag.

This function should not be called without checking isNotFull() first. However, if it is called but the executor is already full, this method will return false.

Implemented in APPSPACK::Executor::MPI, and APPSPACK::Executor::Serial.

Referenced by APPSPACK::Conveyor::exchange().

virtual int APPSPACK::Executor::Interface::recv int &  tag_out,
bool &  isF_out,
double &  f_out,
string &  msg_out
[pure virtual]
 

Check to see if any function evaluations have finished and return the relevant information.

If a function evaluation has completed, fill in the references that are passed to the function as follows.

Parameters:
tag_out - The tag corresponding to the x-vector that was evaluated
isF_out - True if there was a valid, finite function value
f_out - The function value (only has meaning if isF is true)
msg_out - Message about function evaluation
Return values:
Returns 0 (zero) if no function value is received. Otherwise, returns the worker id (any positive integer).

Implemented in APPSPACK::Executor::MPI, and APPSPACK::Executor::Serial.

Referenced by APPSPACK::Conveyor::exchange().

virtual void APPSPACK::Executor::Interface::print  )  const [inline, virtual]
 

Optional print function to print out information about the executor.

Reimplemented in APPSPACK::Executor::MPI, and APPSPACK::Executor::Serial.

Definition at line 88 of file APPSPACK_Executor_Interface.hpp.

Referenced by APPSPACK::Conveyor::print().


The documentation for this class was generated from the following file:

 

© Sandia Corporation | Site Contact | Privacy and Security

Generated on Wed Dec 14 18:41:05 2005 for APPSPACK 4.0.2 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2002