CIRCT
20.0.0git
|
A function call which gets attached to a service port. More...
#include <Services.h>
Public Member Functions | |
void | connect () |
std::future< MessageData > | call (const MessageData &arg) |
virtual std::optional< std::string > | toString () const override |
Public Member Functions inherited from esi::services::ServicePort | |
virtual | ~ServicePort ()=default |
BundlePort (AppID id, std::map< std::string, ChannelPort & > channels) | |
Construct a port. More... | |
Public Member Functions inherited from esi::BundlePort | |
BundlePort (AppID id, std::map< std::string, ChannelPort & > channels) | |
Construct a port. More... | |
virtual | ~BundlePort ()=default |
AppID | getID () const |
Get the ID of the port. More... | |
WriteChannelPort & | getRawWrite (const std::string &name) const |
Get access to the raw byte streams of a channel. More... | |
ReadChannelPort & | getRawRead (const std::string &name) const |
const std::map< std::string, ChannelPort & > & | getChannels () const |
template<typename T > | |
T * | getAs () const |
Cast this Bundle port to a subclass which is actually useful. More... | |
bool | poll () |
Calls poll on all channels in the bundle and returns true if any of them returned true. More... | |
Static Public Member Functions | |
static Function * | get (AppID id, WriteChannelPort &arg, ReadChannelPort &result) |
Static Public Member Functions inherited from esi::BundlePort | |
static bool | isWrite (BundleType::Direction bundleDir) |
Compute the direction of a channel given the bundle direction and the bundle port's direction. More... | |
Private Member Functions | |
Function (AppID id, const std::map< std::string, ChannelPort & > &channels) | |
Private Attributes | |
std::mutex | callMutex |
WriteChannelPort & | arg |
ReadChannelPort & | result |
Friends | |
class | FuncService |
A function call which gets attached to a service port.
Definition at line 247 of file Services.h.
|
private |
Definition at line 196 of file Services.cpp.
References assert(), and esi::BundlePort::channels.
std::future< MessageData > FuncService::Function::call | ( | const MessageData & | arg | ) |
Definition at line 216 of file Services.cpp.
Referenced by esiaccel.types.FunctionPort::__call__().
void FuncService::Function::connect | ( | ) |
Definition at line 210 of file Services.cpp.
Referenced by PYBIND11_MODULE().
|
static |
Definition at line 204 of file Services.cpp.
|
inlineoverridevirtual |
Reimplemented from esi::services::ServicePort.
Definition at line 258 of file Services.h.
References arg, esi::Type::getID(), esi::ChannelPort::getType(), and result.
|
friend |
Definition at line 248 of file Services.h.
|
private |
Definition at line 268 of file Services.h.
Referenced by toString().
|
private |
Definition at line 267 of file Services.h.
|
private |
Definition at line 269 of file Services.h.
Referenced by toString().