1#ifndef GENERIC_ROUTINE_H
2#define GENERIC_ROUTINE_H
4#include "./routing/routable_uds_service.h"
5#include "./reentrancy.h"
16 static const uint8_t cSid{0x31};
29 const std::vector<uint8_t> &requestData,
38 virtual std::future<OperationOutput>
Start(
40 std::vector<uint8_t> requestData,
49 virtual std::future<OperationOutput>
Stop(
51 std::vector<uint8_t> requestData,
62 std::vector<uint8_t> requestData,
AUTOSAR shortname-path wrapper.
Definition: instance_specifier.h:14
A wrapper class around a conversation cancellation handler callback.
Definition: cancellation_handler.h:12
A service to execute a specific sequence of instructions (routine) and obtain the result.
Definition: generic_routine.h:14
virtual std::future< OperationOutput > RequestResults(uint16_t routineId, std::vector< uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &&cancellationHandler)=0
Request the results of a routine.
std::future< OperationOutput > HandleMessage(const std::vector< uint8_t > &requestData, MetaInfo &metaInfo, CancellationHandler &&cancellationHandler) override
Handle an UDS request message.
Definition: generic_routine.cpp:16
GenericRoutine(const core::InstanceSpecifier &specifier, ReentrancyType reentrancyType)
Constructor.
Definition: generic_routine.cpp:9
virtual std::future< OperationOutput > Start(uint16_t routineId, std::vector< uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &&cancellationHandler)=0
Request starting a routine.
virtual std::future< OperationOutput > Stop(uint16_t routineId, std::vector< uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &&cancellationHandler)=0
Request stopping a routine.
An UDS service to handle a diagnostic request by offering itself to a router.
Definition: routable_uds_service.h:28
ReentrancyType
Reentrancy type of an instance.
Definition: reentrancy.h:12