CIRCT 21.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 (std::optional< unsigned > bufferSize=std::nullopt) override |
Set up a connection to the accelerator. | |
void | write (const MessageData &) override |
A very basic blocking write API. | |
bool | tryWrite (const MessageData &) override |
A basic non-blocking write API. | |
![]() | |
virtual void | disconnect () override |
virtual bool | isConnected () const override |
ChannelPort (const Type *type) | |
![]() | |
ChannelPort (const Type *type) | |
virtual | ~ChannelPort () |
bool | poll () |
Poll for incoming data. | |
const Type * | getType () const |
Protected Attributes | |
std::string | errmsg |
![]() | |
const Type * | type |
Additional Inherited Members | |
![]() | |
virtual bool | pollImpl () |
Method called by poll() to actually poll the channel if the channel is connected. | |
virtual void | connectImpl (std::optional< unsigned > bufferSize) |
Called by all connect methods to let backends initiate the underlying connections. | |
Instantiated when a backend does not know how to create a write channel.
|
inline |
|
inlineoverridevirtual |
Set up a connection to the accelerator.
The buffer size is optional and should be considered merely a hint. Individual implementations use it however they like. The unit is number of messages of the port type.
Reimplemented from esi::WriteChannelPort.
Definition at line 108 of file Ports.h.
References errmsg.
|
inlineoverridevirtual |
A basic non-blocking write API.
Returns true if the data was written. It is invalid for backends to always return false (i.e. backends must eventually ensure that writes may succeed).
Implements esi::WriteChannelPort.
Definition at line 112 of file Ports.h.
References errmsg.
|
inlineoverridevirtual |
A very basic blocking write API.
Will likely change for performance reasons.
Implements esi::WriteChannelPort.
Definition at line 111 of file Ports.h.
References errmsg.
|
protected |
Definition at line 117 of file Ports.h.
Referenced by connect(), tryWrite(), and write().