| SST 15.0
    Structural Simulation Toolkit | 
Tunneling class between two processes, connected by shared memory. More...
#include <ipctunnel.h>
| Public Member Functions | |
| IPCTunnel (uint32_t comp_id, size_t numBuffers, size_t bufferSize, uint32_t expectedChildren=1) | |
| Construct a new Tunnel for IPC Communications. | |
| IPCTunnel (const std::string ®ion_name) | |
| Access an existing Tunnel. | |
| virtual | ~IPCTunnel () | 
| Destructor. | |
| void | shutdown (bool all=false) | 
| Shutdown. | |
| const std::string & | getRegionName () const | 
| ShareDataType * | getSharedData () | 
| return a pointer to the ShareDataType region | |
| void | writeMessage (size_t core, const MsgType &command) | 
| Blocks until space is available. | |
| MsgType | readMessage (size_t buffer) | 
| Blocks until a command is available. | |
| bool | readMessageNB (size_t buffer, MsgType *result) | 
| Non-blocking version of readMessage. | |
| void | clearBuffer (size_t core) | 
| Empty the messages in the buffer. | |
| Protected Attributes | |
| ShareDataType * | sharedData | 
| Pointer to the Shared Data Region. | |
Tunneling class between two processes, connected by shared memory.
Supports multiple circular-buffer queues, and a generic region of memory for shared data.
| ShareDataType | Type to put in the shared data region | 
| MsgType | Type of messages being sent in the circular buffers | 
| 
 | inline | 
Construct a new Tunnel for IPC Communications.
| comp_id | Component ID of owner | 
| numBuffers | Number of buffers for which we should tunnel | 
| bufferSize | How large each core's buffer should be | 
References sharedData.
| 
 | inlineexplicit | 
Access an existing Tunnel.
| region_name | Name of the shared-memory region to access | 
References sharedData.