CIRCT 24.0.0git
Loading...
Searching...
No Matches
esi::services::ChannelService Class Reference

Service for raw communication channels to/from the accelerator. More...

#include <Services.h>

Inheritance diagram for esi::services::ChannelService:
Collaboration diagram for esi::services::ChannelService:

Classes

class  ToHost
 A port which reads data from the accelerator (to_host). More...
class  FromHost
 A port which writes data to the accelerator (from_host). More...

Public Member Functions

 ChannelService (AppIDPath id, AcceleratorConnection &, ServiceImplDetails details, HWClientDetails clients)
virtual std::string getServiceSymbol () const override
virtual BundlePort * getPort (AppIDPath id, const BundleType *type) const override
 Get specialized port for this service to attach to the given appid path.
Public Member Functions inherited from esi::services::Service
 Service (AcceleratorConnection &conn)
virtual ~Service ()=default
virtual Service * getChildService (Service::Type service, AppIDPath id={}, std::string implName={}, ServiceImplDetails details={}, HWClientDetails clients={})
 Create a "child" service of this service.
AcceleratorConnection & getConnection () const

Private Attributes

std::string symbol

Additional Inherited Members

Public Types inherited from esi::services::Service
using Type = const std::type_info &
Protected Attributes inherited from esi::services::Service
AcceleratorConnection & conn

Detailed Description

Service for raw communication channels to/from the accelerator.

Definition at line 313 of file Services.h.

Constructor & Destructor Documentation

◆ ChannelService()

ChannelService::ChannelService ( AppIDPath id,
AcceleratorConnection & conn,
ServiceImplDetails details,
HWClientDetails clients )

Member Function Documentation

◆ getPort()

BundlePort * ChannelService::getPort ( AppIDPath id,
const BundleType * type ) const
overridevirtual

Get specialized port for this service to attach to the given appid path.

Null returns mean nothing to attach.

Reimplemented from esi::services::Service.

Definition at line 235 of file Services.cpp.

References esi::services::Service::conn, esi::BundleType::findChannel(), and esi::BundleType::From.

◆ getServiceSymbol()

std::string ChannelService::getServiceSymbol ( ) const
overridevirtual

Implements esi::services::Service.

Definition at line 233 of file Services.cpp.

References symbol.

Member Data Documentation

◆ symbol

std::string esi::services::ChannelService::symbol
private

Definition at line 371 of file Services.h.

Referenced by ChannelService(), and getServiceSymbol().


The documentation for this class was generated from the following files: