#include <cproxygate.h>
Inheritance diagram for cProxyGate:
Public Member Functions | |
Constructor, destructor, copying | |
cProxyGate (const char *name, char tp) | |
cProxyGate (const cProxyGate &gate) | |
virtual | ~cProxyGate () |
Redefined cObject member functions | |
virtual cPolymorphic * | dup () const |
cProxyGate & | operator= (const cProxyGate &gate) |
virtual std::string | info () const |
Redefined cGate member functions | |
virtual bool | deliver (cMessage *msg, simtime_t at) |
Address of remote gate | |
void | setRemoteGate (int procId, int moduleId, int gateId) |
int | getRemoteProcId () |
int | getRemoteModuleId () |
int | getRemoteGateId () |
cParsimPartition pointer | |
void | setPartition (cParsimPartition *seg) |
cParsimPartition * | getPartition () |
Generic associated data pointer | |
void | setSynchData (void *data) |
void * | getSynchData () |
cProxyGate's belong to cPlaceHolderModule objects, which represent a "remote" module in the local partition.
This class basically exists so that we can override the deliver() method of cGate so that it doesn't pass arriving messages to the module object but to parallel simulation layer (cParsimPartition) instead -- so cParsimPartition can deliver them to the remote partition.
cProxyGate contains the address of the corresponding remote gate as a (procId, moduleId, gateId) triplet:
|
Constructor.
|
|
Copy constructor.
|
|
Destructor.
|
|
Redefined to pass message to the parallel simulation layer, cParsimPartition. Invokes the cParsimPartition::processOutgoingMessage() method to transmit the message, then deletes the message object. Reimplemented from cGate. |
|
Duplicates the gate object.
Reimplemented from cGate. |
|
Returns pointer to cParsimPartition object.
|
|
Returns Id of remote gate in remote partition and remote module.
|
|
Returns module Id in remote partition where remote gate resides.
|
|
Returns partition where remote gate resides.
|
|
Returns the data pointer in this object.
|
|
Redefined here to display remoteProcId, remoteModId and remoteGateId.
Reimplemented from cGate. |
|
Assigment operator.
|
|
Sets cParsimPartition object.
|
|
Sets remote gate address.
|
|
Sets the data pointer in this object. This pointer is used by the parallel simulation synchronizaton layer (cParsimSynchronizer) to store additional information about the gate. |