CIRCT 24.0.0git
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
esi::services::CustomService Class Reference

A service for which there are no standard services registered. More...

#include <Services.h>

Inheritance diagram for esi::services::CustomService:
Inheritance graph
[legend]
Collaboration diagram for esi::services::CustomService:
Collaboration graph
[legend]

Public Member Functions

 CustomService (AppIDPath idPath, AcceleratorConnection &, const ServiceImplDetails &details, const HWClientDetails &clients)
 
virtual ~CustomService ()=default
 
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
 

Protected Attributes

std::string serviceSymbol
 
AppIDPath id
 
- Protected Attributes inherited from esi::services::Service
AcceleratorConnection & conn
 

Additional Inherited Members

- Public Types inherited from esi::services::Service
using Type = const std::type_info &
 

Detailed Description

A service for which there are no standard services registered.

Requires ports be added to the design hierarchy instead of high level interfaces like the ones in StdServices.h.

Definition at line 94 of file Services.h.

Constructor & Destructor Documentation

◆ CustomService()

CustomService::CustomService ( AppIDPath  idPath,
AcceleratorConnection &  conn,
const ServiceImplDetails &  details,
const HWClientDetails &  clients 
)

Definition at line 186 of file Services.cpp.

References serviceSymbol.

◆ ~CustomService()

virtual esi::services::CustomService::~CustomService ( )
virtualdefault

Member Function Documentation

◆ getPort()

BundlePort * CustomService::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 197 of file Services.cpp.

References esi::services::Service::conn, esi::AcceleratorConnection::getEngineMapFor(), and esi::BundleEngineMap::requestPorts().

◆ getServiceSymbol()

virtual std::string esi::services::CustomService::getServiceSymbol ( ) const
inlineoverridevirtual

Implements esi::services::Service.

Definition at line 101 of file Services.h.

References serviceSymbol.

Member Data Documentation

◆ id

AppIDPath esi::services::CustomService::id
protected

Definition at line 109 of file Services.h.

Referenced by esiaccel.types.ESIType::__eq__().

◆ serviceSymbol

std::string esi::services::CustomService::serviceSymbol
protected

Definition at line 108 of file Services.h.

Referenced by CustomService(), and getServiceSymbol().


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