Diag-Client-Lib
|
Parent class to create Diagnostic Manager. More...
#include <diagnostic_manager.h>
Public Member Functions | |
DiagnosticManager () noexcept | |
Constructs an instance of DiagnosticManager. More... | |
DiagnosticManager (const DiagnosticManager &other) noexcept=delete | |
Deleted copy assignment and copy constructor. More... | |
DiagnosticManager & | operator= (const DiagnosticManager &other) noexcept=delete |
DiagnosticManager (DiagnosticManager &&other) noexcept=delete | |
Deleted move assignment and move constructor. More... | |
DiagnosticManager & | operator= (DiagnosticManager &&other) noexcept=delete |
virtual | ~DiagnosticManager () noexcept |
Destructs an instance of DiagnosticManager. More... | |
virtual void | Main () noexcept |
Function to manage the whole lifecycle of DiagnosticManager. More... | |
virtual Result< void > | SignalShutdown () noexcept |
Function to initiate shutdown of DiagnosticManager. More... | |
virtual void | Initialize () noexcept=0 |
Function to initialize the DiagnosticManager. More... | |
virtual void | Run () noexcept=0 |
Function to run DiagnosticManager. More... | |
virtual void | Shutdown () noexcept=0 |
Function to shutdown the DiagnosticManager. More... | |
virtual conversation::DiagClientConversation | GetDiagnosticClientConversation (std::string_view conversation_name) noexcept=0 |
Function to get required diag client conversation object based on conversation name. More... | |
virtual core_type::Result< diag::client::vehicle_info::VehicleInfoMessageResponseUniquePtr, DiagClient::VehicleInfoResponseError > | SendVehicleIdentificationRequest (diag::client::vehicle_info::VehicleInfoListRequestType vehicle_info_request) noexcept=0 |
Function to send vehicle identification request and get the Diagnostic Server list. More... | |
Private Attributes | |
bool | exit_requested_ |
Flag to terminate the main thread. More... | |
std::condition_variable | cond_var_ |
Conditional variable to block the thread. More... | |
std::mutex | mutex_ |
For locking critical section of code. More... | |
Parent class to create Diagnostic Manager.
Definition at line 31 of file diagnostic_manager.h.
|
noexcept |
Constructs an instance of DiagnosticManager.
Definition at line 14 of file diagnostic_manager.cpp.
|
deletenoexcept |
Deleted copy assignment and copy constructor.
|
deletenoexcept |
Deleted move assignment and move constructor.
|
virtualnoexcept |
Destructs an instance of DiagnosticManager.
Definition at line 16 of file diagnostic_manager.cpp.
References cond_var_, exit_requested_, and mutex_.
|
pure virtualnoexcept |
Function to get required diag client conversation object based on conversation name.
[in] | conversation_name | Name of conversation configured as json parameter "ConversationName" |
Implemented in diag::client::dcm::DCMClient.
|
pure virtualnoexcept |
Function to initialize the DiagnosticManager.
Implemented in diag::client::dcm::DCMClient.
Referenced by Main().
|
virtualnoexcept |
Function to manage the whole lifecycle of DiagnosticManager.
Definition at line 24 of file diagnostic_manager.cpp.
References cond_var_, exit_requested_, Initialize(), mutex_, Run(), and Shutdown().
|
deletenoexcept |
|
deletenoexcept |
|
pure virtualnoexcept |
Function to run DiagnosticManager.
Implemented in diag::client::dcm::DCMClient.
Referenced by Main().
|
pure virtualnoexcept |
Function to send vehicle identification request and get the Diagnostic Server list.
[in] | vehicle_info_request | Vehicle information sent along with request |
Implemented in diag::client::dcm::DCMClient.
|
pure virtualnoexcept |
Function to shutdown the DiagnosticManager.
Implemented in diag::client::dcm::DCMClient.
Referenced by Main().
|
virtualnoexcept |
Function to initiate shutdown of DiagnosticManager.
Definition at line 39 of file diagnostic_manager.cpp.
References cond_var_, exit_requested_, and mutex_.
|
private |
Conditional variable to block the thread.
Definition at line 111 of file diagnostic_manager.h.
Referenced by Main(), SignalShutdown(), and ~DiagnosticManager().
|
private |
Flag to terminate the main thread.
Definition at line 106 of file diagnostic_manager.h.
Referenced by Main(), SignalShutdown(), and ~DiagnosticManager().
|
private |
For locking critical section of code.
Definition at line 116 of file diagnostic_manager.h.
Referenced by Main(), SignalShutdown(), and ~DiagnosticManager().