CIRCT 21.0.0git
|
A telemetry port which gets attached to a service port. More...
#include <Services.h>
Public Member Functions | |
void | connect () |
Connect to a particular telemetry port. | |
std::future< MessageData > | read () |
virtual std::optional< std::string > | toString () const override |
![]() | |
virtual | ~ServicePort ()=default |
BundlePort (AppID id, const BundleType *type, PortMap channels) | |
Construct a port. | |
![]() | |
BundlePort (AppID id, const BundleType *type, PortMap channels) | |
Construct a port. | |
virtual | ~BundlePort ()=default |
AppID | getID () const |
Get the ID of the port. | |
WriteChannelPort & | getRawWrite (const std::string &name) const |
Get access to the raw byte streams of a channel. | |
ReadChannelPort & | getRawRead (const std::string &name) const |
const PortMap & | getChannels () const |
template<typename T > | |
T * | getAs () const |
Cast this Bundle port to a subclass which is actually useful. | |
bool | poll () |
Calls poll on all channels in the bundle and returns true if any of them returned true. | |
Static Public Member Functions | |
static Telemetry * | get (AppID id, BundleType *type, WriteChannelPort &get, ReadChannelPort &data) |
![]() | |
static bool | isWrite (BundleType::Direction bundleDir) |
Compute the direction of a channel given the bundle direction and the bundle port's direction. | |
Private Member Functions | |
Telemetry (AppID id, const BundleType *type, PortMap channels) | |
Private Attributes | |
WriteChannelPort * | get_req |
ReadChannelPort * | data |
Friends | |
class | TelemetryService |
Additional Inherited Members | |
![]() | |
AppID | id |
const BundleType * | type |
PortMap | channels |
A telemetry port which gets attached to a service port.
Definition at line 353 of file Services.h.
|
private |
Definition at line 287 of file Services.cpp.
void TelemetryService::Telemetry::connect | ( | ) |
Connect to a particular telemetry port.
The bundle should have two channels – get and data. Get should have type 'i0' and data can be anything.
Definition at line 299 of file Services.cpp.
Referenced by hostmemTest(), and PYBIND11_MODULE().
|
static |
Definition at line 292 of file Services.cpp.
std::future< MessageData > TelemetryService::Telemetry::read | ( | ) |
Definition at line 313 of file Services.cpp.
References empty.
Referenced by hostmemTest(), and PYBIND11_MODULE().
|
inlineoverridevirtual |
Reimplemented from esi::services::ServicePort.
Definition at line 364 of file Services.h.
References esi::BundleType::findChannel(), esi::Type::getID(), and esi::BundlePort::type.
|
friend |
Definition at line 354 of file Services.h.
|
private |
Definition at line 373 of file Services.h.
|
private |
Definition at line 372 of file Services.h.