OMK::SvmLink Class Reference

defines a communication chanel More...

#include <OMKSvmLink.h>

Inheritance diagram for OMK::SvmLink:

Inheritance graph
[legend]
Collaboration diagram for OMK::SvmLink:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SvmLink ()
 Constructor.
virtual ~SvmLink ()
 Destructor.
virtual void send (PvmOutgoingMessage &m, PvmMessage::MessageTag tag)=0
 send a specific outgoing message along the link
virtual PvmIncomingMessagewaitForMessage (PvmMessage::MessageTag tag)=0
 wait for a message comming along the link and receive it
virtual PvmIncomingMessagetestForMessage (PvmMessage::MessageTag tag)=0
 testForMessage.
virtual PvmIncomingMessagetestIfRequestUpdateProcessTable (PvmMessage::MessageTag tag)=0
 CHADI.
virtual PvmMessage::MessageTag testForAnyMessage (PvmIncomingMessage &receiveBuffer)=0
 test for any message sent to this site from a specified site.
virtual PvmOutgoingMessagegetOutgoingBuffer ()=0
 get the outgoing buffer which will be sent at the next call of sendOutgoingBuffer
virtual void sendOutgoingBuffer (PvmMessage::MessageTag tag)=0
 send the outgoingBuffer
virtual int getTID ()=0
 get the site id of the process at the other end of the link
virtual void printDebuggingInformation ()=0
 printDebugging information

Detailed Description

defines a communication chanel

Author:
Siames
Version:
1.0

Definition at line 31 of file OMKSvmLink.h.


Constructor & Destructor Documentation

SvmLink::SvmLink (  ) 

Constructor.

Definition at line 3 of file OMKSvmLink.cxx.

00003                   : Packable() 
00004 {
00005 }

SvmLink::~SvmLink (  )  [virtual]

Destructor.

Definition at line 6 of file OMKSvmLink.cxx.

00007 {
00008 
00009 }


Member Function Documentation

virtual void OMK::SvmLink::send ( PvmOutgoingMessage m,
PvmMessage::MessageTag  tag 
) [pure virtual]

send a specific outgoing message along the link

Parameters:
m the message to send
the tag associated to the message

Implemented in OMK::PvmSvmLink.

virtual PvmIncomingMessage& OMK::SvmLink::waitForMessage ( PvmMessage::MessageTag  tag  )  [pure virtual]

wait for a message comming along the link and receive it

Parameters:
tag the tag of the message to wait for

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::connectToDistributedSimulation(), OMK::Svm::waitAndProcessMessages(), and OMK::Svm::waitForMessageFrom().

virtual PvmIncomingMessage* OMK::SvmLink::testForMessage ( PvmMessage::MessageTag  tag  )  [pure virtual]

testForMessage.

Test to see if a message has arrived and receive it

Parameters:
tag the tag of the message to wait for
Returns:
NULL if no message was present, a incoming buffer with the message otherwise. This incoming buffer should not be deleted

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::processReceivedMessages(), and OMK::Svm::waitForMessage().

virtual PvmIncomingMessage* OMK::SvmLink::testIfRequestUpdateProcessTable ( PvmMessage::MessageTag  tag  )  [pure virtual]

CHADI.

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::testIfNewProcessAdded().

virtual PvmMessage::MessageTag OMK::SvmLink::testForAnyMessage ( PvmIncomingMessage receiveBuffer  )  [pure virtual]

test for any message sent to this site from a specified site.

This call is non blocking

Parameters:
receiveBuffer : the user buffer to use to receive any message the tag of the received message

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::relaxedSynchroniseReceiveAndProcessMessages(), and OMK::Svm::synchroniseReceiveAndProcessMessages().

virtual PvmOutgoingMessage& OMK::SvmLink::getOutgoingBuffer (  )  [pure virtual]

get the outgoing buffer which will be sent at the next call of sendOutgoingBuffer

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::addNewSiteToSimulation(), OMK::PvmMirrorObjectHandle::cancelRegistrationForSignal(), OMK::Svm::createDistributedSimulation(), OMK::PvmMirrorObjectHandle::receiveEvent(), OMK::PvmMirrorObjectHandle::receiveRegistrationForSignal(), OMK::Svm::sendCurrentBuffersWithTag(), and OMK::PvmMirrorObjectHandle::sendRequestToReferenceObject().

virtual void OMK::SvmLink::sendOutgoingBuffer ( PvmMessage::MessageTag  tag  )  [pure virtual]

send the outgoingBuffer

Parameters:
tag the tag to send the outgoing message with

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::sendCurrentBuffersWithTag().

virtual int OMK::SvmLink::getTID (  )  [pure virtual]

get the site id of the process at the other end of the link

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::addNewSiteToSimulation(), OMK::Svm::createDistributedSimulation(), OMK::PvmMirrorObjectHandle::registerToReferenceObject(), OMK::PvmController::sendInitialValuesToMirror(), and OMK::PvmSvm::testIfSiteRecovered().

virtual void OMK::SvmLink::printDebuggingInformation (  )  [pure virtual]

printDebugging information

Implemented in OMK::PvmSvmLink.

Referenced by OMK::Svm::waitAndProcessMessages(), OMK::Svm::waitForMessage(), and OMK::Svm::waitForMessageFrom().


logo OpenMask

Documentation generated on Mon Jun 9 11:46:03 2008

Generated with doxygen by Dimitri van Heesch ,   1997-2007