CIRCT 24.0.0git
Loading...
Searching...
No Matches
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:
Collaboration diagram for esi::services::CustomService:

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 208 of file Services.cpp.

References esi::services::Service::conn, id, and esi::services::Service::Service().

◆ ~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 219 of file Services.cpp.

References esi::services::Service::conn.

◆ 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__(), and CustomService().

◆ serviceSymbol

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

Definition at line 108 of file Services.h.

Referenced by getServiceSymbol().


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