#include <generic_routine.h>
|
| | GenericRoutine (const ara::core::InstanceSpecifier &specifier, ReentrancyType reentrancyType) |
| | Class for an GenericRoutine. 更多...
|
| |
| virtual | ~GenericRoutine () noexcept |
| | Destructor of class GenericRoutine. 更多...
|
| |
| virtual ara::core::Future< OperationOutput > | Start (std::uint16_t routineId, ara::core::Span< std::uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &cancellationHandler)=0 |
| | Called for RoutineControl with SubFunction Start request for this DiagnosticRoutineIdentifier. 更多...
|
| |
| virtual ara::core::Future< OperationOutput > | Stop (std::uint16_t routineId, ara::core::Span< std::uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &cancellationHandler)=0 |
| | Called for RoutineControl with SubFunction Stop request for this DiagnosticRoutineIdentifier. 更多...
|
| |
| virtual ara::core::Future< OperationOutput > | RequestResults (std::uint16_t routineId, ara::core::Span< std::uint8_t > requestData, MetaInfo &metaInfo, CancellationHandler &cancellationHandler)=0 |
| | Called for RoutineControl with SubFunction RequestResults request for this DiagnosticRoutineIdentifier. 更多...
|
| |
| ara::core::Result< void > | Offer () |
| | This Offer will enable the DM to forward request messages to this handler. 更多...
|
| |
| void | StopOffer () |
| | This StopOffer will disable the forwarding of request messages from DM. 更多...
|
| |
@briefGeneric Routine interface.
- Swsid
- SWS_DM_00605
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- class
- 符号
- GenericRoutine
- 范围
- namespace ara::diag
- 基类
- N/A
- 分类
- ara
- 头文件
- ara/diag/generic_routine.h
- 注解
- The GenericRoutine service implements a generic Routine handler.
- 模板参数
-
在文件 第 行定义.
◆ GenericRoutine()
| ara::diag::GenericRoutine::GenericRoutine |
( |
const ara::core::InstanceSpecifier & |
specifier, |
|
|
ReentrancyType |
reentrancyType |
|
) |
| |
|
explicit |
Class for an GenericRoutine.
- 模板参数
-
- 参数
-
| [in] | specifier | InstanceSpecifier to an PortPrototype of an DiagnosticRoutineGenericInterface |
| [in] | reentrancyType | specifies if interface is callable fully- or non-reentrant |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- N/A
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00552
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- N/A
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
在文件 第 行定义.
◆ ~GenericRoutine()
| ara::diag::GenericRoutine::~GenericRoutine |
( |
| ) |
|
|
virtualnoexcept |
Destructor of class GenericRoutine.
- 模板参数
-
- 参数
-
| [in] | N/A | |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- N/A
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00553
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- N/A
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- noexcept
- 分类
- ara
在文件 第 行定义.
◆ Offer()
| ara::core::Result< void > ara::diag::GenericRoutine::Offer |
( |
| ) |
|
This Offer will enable the DM to forward request messages to this handler.
- 模板参数
-
- 参数
-
| [in] | N/A | |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result<void>
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00557
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- DiagErrorDomain::DiagReportingErrc::kGenericError
- 错误
- DiagErrorDomain::DiagOfferErrc:::kAlreadyOffered
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
在文件 第 行定义.
引用了 ara::diag::kAlreadyOffered.
◆ RequestResults()
| virtual ara::core::Future<OperationOutput> ara::diag::GenericRoutine::RequestResults |
( |
std::uint16_t |
routineId, |
|
|
ara::core::Span< std::uint8_t > |
requestData, |
|
|
MetaInfo & |
metaInfo, |
|
|
CancellationHandler & |
cancellationHandler |
|
) |
| |
|
pure virtual |
Called for RoutineControl with SubFunction RequestResults request for this DiagnosticRoutineIdentifier.
- 模板参数
-
- 参数
-
| [in] | routineId | the corresponding RoutineIdentifier |
| [in] | requestData | Content of request message (without RoutineIdentifier) |
| [in] | metaInfo | contains additional meta information |
| [in] | cancellationHandler | informs if the current conversation is canceled |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Future<OperationOutput>
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00556
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralReject
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubfunctionNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kIncorrectMessageLengthOrInvalidFormat
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kResponseTooLong
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBusyRepeatRequest
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kConditionsNotCorrect
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestSequenceError
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kNoResponseFromSubnetComponent
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kFailurePreventsExecutionOfRequestedAction
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestOutOfRange
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSecurityAccessDenied
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kInvalidKey
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kExceedNumberOfAttempts
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequiredTimeDelayNotExpired
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kUploadDownloadNotAccepted
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransferDataSuspended
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralProgrammingFailure
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kWrongBlockSequenceCounter
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubFunctionNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsNotRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineRunTimeTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInNeutral
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInGear
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBrakeSwitchNotClosed
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kShifterLeverNotInPark
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTorqueConverterClutchLocked
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooLow
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
◆ Start()
| virtual ara::core::Future<OperationOutput> ara::diag::GenericRoutine::Start |
( |
std::uint16_t |
routineId, |
|
|
ara::core::Span< std::uint8_t > |
requestData, |
|
|
MetaInfo & |
metaInfo, |
|
|
CancellationHandler & |
cancellationHandler |
|
) |
| |
|
pure virtual |
Called for RoutineControl with SubFunction Start request for this DiagnosticRoutineIdentifier.
- 模板参数
-
- 参数
-
| [in] | routineId | the corresponding RoutineIdentifier |
| [in] | requestData | Content of request message (without RoutineIdentifier) |
| [in] | metaInfo | contains additional meta information |
| [in] | cancellationHandler | informs if the current conversation is canceled |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Future<OperationOutput>
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00554
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralReject
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubfunctionNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kIncorrectMessageLengthOrInvalidFormat
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kResponseTooLong
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBusyRepeatRequest
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kConditionsNotCorrect
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestSequenceError
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kNoResponseFromSubnetComponent
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kFailurePreventsExecutionOfRequestedAction
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestOutOfRange
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSecurityAccessDenied
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kInvalidKey
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kExceedNumberOfAttempts
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequiredTimeDelayNotExpired
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kUploadDownloadNotAccepted
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransferDataSuspended
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralProgrammingFailure
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kWrongBlockSequenceCounter
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubFunctionNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsNotRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineRunTimeTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInNeutral
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInGear
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBrakeSwitchNotClosed
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kShifterLeverNotInPark
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTorqueConverterClutchLocked
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooLow
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
◆ Stop()
| virtual ara::core::Future<OperationOutput> ara::diag::GenericRoutine::Stop |
( |
std::uint16_t |
routineId, |
|
|
ara::core::Span< std::uint8_t > |
requestData, |
|
|
MetaInfo & |
metaInfo, |
|
|
CancellationHandler & |
cancellationHandler |
|
) |
| |
|
pure virtual |
Called for RoutineControl with SubFunction Stop request for this DiagnosticRoutineIdentifier.
- 模板参数
-
- 参数
-
| [in] | routineId | the corresponding RoutineIdentifier |
| [in] | requestData | Content of request message (without RoutineIdentifier) |
| [in] | metaInfo | contains additional meta information |
| [in] | cancellationHandler | informs if the current conversation is canceled |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Future< OperationOutput >
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00555
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralReject
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubfunctionNotSupported
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kIncorrectMessageLengthOrInvalidFormat
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kResponseTooLong
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBusyRepeatRequest
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kConditionsNotCorrect
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestSequenceError
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kNoResponseFromSubnetComponent
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kFailurePreventsExecutionOfRequestedAction
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequestOutOfRange
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSecurityAccessDenied
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kInvalidKey
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kExceedNumberOfAttempts
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRequiredTimeDelayNotExpired
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kUploadDownloadNotAccepted
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransferDataSuspended
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kGeneralProgrammingFailure
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kWrongBlockSequenceCounter
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kSubFunctionNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kServiceNotSupportedInActiveSession
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kRpmTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineIsNotRunning
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kEngineRunTimeTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTemperatureTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVehicleSpeedTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kThrottlePedalTooLow
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInNeutral
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTransmissionRangeNotInGear
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kBrakeSwitchNotClosed
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kShifterLeverNotInPark
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kTorqueConverterClutchLocked
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooHigh
- 错误
- DiagUdsNrcErrorDomain::DiagUdsNrcErrc::kVoltageTooLow
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
◆ StopOffer()
| void ara::diag::GenericRoutine::StopOffer |
( |
| ) |
|
This StopOffer will disable the forwarding of request messages from DM.
- 模板参数
-
- 参数
-
| [in] | N/A | |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- N/A
- 注解
- N/A
- 异常
-
- Swsid
- SWS_DM_00558
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- no
- Fireandforget
- no
- 错误
- N/A
- 头文件
- ara/diag/generic_routine.h
- 异常安全
- N/A
- 分类
- ara
在文件 第 行定义.