Sandia Home Sandia Home
Main Page | Publications | Downloads | Configuration | Running the Code | Solver Parameters | FAQ | Namespace List | Class Hierarchy | 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, Vector &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, APPSPACK::Executor::Serial, and CustomExecutor.

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,
Vector 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
f_out - Vector of function values. An empty vector means that there is no value. Or use dne() as a vector entry to say that a particular value does not exist.
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, APPSPACK::Executor::Serial, and CustomExecutor.

Definition at line 89 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 Fri Feb 16 10:33:36 2007 for APPSPACK 5.0.1 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2002