1#ifndef UDS_SERVICE_ROUTER_H
2#define UDS_SERVICE_ROUTER_H
4#include "./routable_uds_service.h"
16 const uint8_t cNegativeResponseSid{0x7f};
17 const uint8_t cServiceNotSupportedNrc{0x11};
19 std::map<uint8_t, RoutableUdsService *> mServices;
39 std::future<OperationOutput>
Route(
40 const std::vector<std::uint8_t> &requestData,
A wrapper class around a conversation cancellation handler callback.
Definition: cancellation_handler.h:12
An UDS service to handle a diagnostic request by offering itself to a router.
Definition: routable_uds_service.h:28
A class to route an UDS request to the proper service for handling.
Definition: uds_service_router.h:14
std::future< OperationOutput > Route(const std::vector< std::uint8_t > &requestData, MetaInfo &metaInfo, CancellationHandler &&cancellationHandler) const
Route an UDS request message to a service.
Definition: uds_service_router.cpp:24
void RemoveService(uint8_t sid)
Remove a service from the router.
Definition: uds_service_router.cpp:14
void AddService(RoutableUdsService *service)
Add a service to the router.
Definition: uds_service_router.cpp:9