|
CIRCT 22.0.0git
|
Instantiated when a backend does not know how to create a write channel. More...
#include <Ports.h>


Public Member Functions | |
| UnknownWriteChannelPort (const Type *type, std::string errmsg) | |
| void | connect (const ConnectOptions &options={}) override |
| Set up a connection to the accelerator. | |
Public Member Functions inherited from esi::WriteChannelPort | |
| virtual void | disconnect () override |
| virtual bool | isConnected () const override |
| void | write (const MessageData &data) |
| A very basic blocking write API. | |
| bool | tryWrite (const MessageData &data) |
| A basic non-blocking write API. | |
| bool | flush () |
| Flush any buffered data. | |
| ChannelPort (const Type *type) | |
Public Member Functions inherited from esi::ChannelPort | |
| ChannelPort (const Type *type) | |
| virtual | ~ChannelPort () |
| bool | poll () |
| Poll for incoming data. | |
| const Type * | getType () const |
Protected Member Functions | |
| void | writeImpl (const MessageData &) override |
| Implementation for write(). Subclasses must implement this. | |
| bool | tryWriteImpl (const MessageData &) override |
| Implementation for tryWrite(). Subclasses must implement this. | |
Protected Member Functions inherited from esi::WriteChannelPort | |
| void | translateOutgoing (const MessageData &data) |
| Translate outgoing data if the port type is a window type. | |
Protected Member Functions inherited from esi::ChannelPort | |
| virtual bool | pollImpl () |
| Method called by poll() to actually poll the channel if the channel is connected. | |
| virtual void | connectImpl (const ConnectOptions &options) |
| Called by all connect methods to let backends initiate the underlying connections. | |
Protected Attributes | |
| std::string | errmsg |
Protected Attributes inherited from esi::WriteChannelPort | |
| bool | translateMessages = false |
| Whether to translate outgoing data if the port type is a window type. | |
| std::vector< MessageData > | translationBuffer |
| If tryWrite cannot write all the messages of a windowed type at once, it stores them here and writes them out one by one on subsequent calls. | |
| size_t | translationBufferIdx = 0 |
| Index of the next message to write in translationBuffer. | |
Protected Attributes inherited from esi::ChannelPort | |
| const Type * | type |
| std::unique_ptr< TranslationInfo > | translationInfo |
Instantiated when a backend does not know how to create a write channel.
|
inline |
|
inlineoverridevirtual |
Set up a connection to the accelerator.
Reimplemented from esi::WriteChannelPort.
|
inlineoverrideprotectedvirtual |
Implementation for tryWrite(). Subclasses must implement this.
Implements esi::WriteChannelPort.
Definition at line 307 of file Ports.h.
References errmsg.
|
inlineoverrideprotectedvirtual |
Implementation for write(). Subclasses must implement this.
Implements esi::WriteChannelPort.
Definition at line 304 of file Ports.h.
References errmsg.
|
protected |
Definition at line 311 of file Ports.h.
Referenced by tryWriteImpl(), and writeImpl().