From 947c78887e791596d4a5ec2d1079f8b1a049628b Mon Sep 17 00:00:00 2001 From: takeshi_hoshina Date: Tue, 27 Oct 2020 11:16:21 +0900 Subject: basesystem 0.1 --- .../library_dummy_drec/include/stub/MM_DREC_API.h | 2203 ++++++++++++++++++++ 1 file changed, 2203 insertions(+) create mode 100644 stub/diag_record/library_dummy_drec/include/stub/MM_DREC_API.h (limited to 'stub/diag_record/library_dummy_drec/include/stub/MM_DREC_API.h') diff --git a/stub/diag_record/library_dummy_drec/include/stub/MM_DREC_API.h b/stub/diag_record/library_dummy_drec/include/stub/MM_DREC_API.h new file mode 100644 index 00000000..7d0568cc --- /dev/null +++ b/stub/diag_record/library_dummy_drec/include/stub/MM_DREC_API.h @@ -0,0 +1,2203 @@ +/* + * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +///////////////////////////////////////////////////////////////////////////// +/// \file MM_DREC_API.h +///////////////////////////////////////////////////////////////////////////// + +/***************************************************************************** + * @file MM_DREC_API.h + * @brief MM diag recorder function API definition +*****************************************************************************/ + + +/***************************************************************************** + * --------------- + * - Die-Record Function API Operation - + * --------------- + * + * $$ Notes on Creation and Release $$ + * - Submit and request the created headers and dummy libs (empty functions defined only for I/F) + * from DiagService to BaseSystem and build them from BaseSystem. + * + * - The created regular Lib (not dummy Lib) is built from DiagService. + * + * -> Since this API is also used in BaseSystem, the API must be inserted + * from the BaseSystem build to avoid errors in JointBuild. + * + * $$ Notes on change $$ + * - When modifying a header without changing the I/F, submit and request only the header to the BaseSystem. + * + * - Submit header and source code for dummy Lib when the header is modified due to an I/F change. + * + * - When the legitimate lib is changed without changing headers and I/F, no need to submit or request to BaseSystem. + * + *****************************************************************************/ + +#if !defined( __MM_DREC_API_H__ ) +#define __MM_DREC_API_H__ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +/*********************************************************** + Macro Functions +***********************************************************/ +#define ENDIAN16(val) \ + (((val << 8) & 0xFF00) | ((val >> 8) & 0x00FF)) //!< \~english ENDIAN conversion(16bit) + +#define ENDIAN32(val) \ + ((val << 24) & 0xFF000000) | ((val << 8) & 0x00FF0000) | ((val >> 8) & 0x0000FF00) | ((val >> 24) & 0x000000FF) //!< \~english ENDIAN conversion(32bit) + +/*********************************************************** + Data Frame/Size Definition +***********************************************************/ + +/*********************************************************** + Data Frame Related/Structure (Common) +***********************************************************/ +/** + * \~english ACC OFF information + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_ACC; + +/** + * \~english GPS time information + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_GPS; + +/** + * \~english Frame for searching recording stop and start + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_REC; + +/** + * \~english Common data frame + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_COMMON_DATAFRAME; + +/*********************************************************** + Data Frame/Structure Definition +***********************************************************/ + +/** + * \~english Power trace data frame + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCPWR; + +/** + * \~english Power trace data frame_system time attached + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCPWR_WITHSYSTIME; + +/** + * \~english Mode control/vehicle signal trace (mode control) + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCMODE; + +/** + * \~english Mode control/vehicle signal trace (vehicle signal) + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCVEHICLESIGNAL; + +/** + * \~english Key trace + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCKEY; + +/** + * \~english Key trace (key information for 23byte) + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCKEY_EXP; + +/** + * \~english Key trace(voice operation) + */ +typedef struct _T_DREC_TRCKEY_VOICE { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCKEY_VOICE; + +/** + * \~english Error trace + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCERR; + +/** + * \~english CAN communication trace + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCCAN; + +/** + * \~english AW Trace data (trace output of the own car position difference/ Monitoring trace log output of the distributed application PF/ Usage trace log output of the distributed application PF/ Trace output of DSRC/ETC communication) + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCAWDATA; + +/** + * \~english Bluetooth trace + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCBTCONNECT; + +/** + * \~english Bluetooth trace + */ +typedef struct _T_DREC_TRCBTINTERNAL { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCBTINTERNAL; + +/** + * \~english Bluetooth trace + */ +typedef struct _T_DREC_TRCBT { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCBT; + +/** + * \~english SSID information + */ +typedef struct _T_DREC_TRCWIFI_SSID_INFO { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCWIFI_SSID_INFO; + +/** + * \~english WiFi trace + */ +typedef struct _T_DREC_TRCWIFI { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCWIFI; + +/** + * \~english Trace data of the version information + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCVERSION; + +/** + * \~english Trace of the radio wave receipt + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCWAVE; + +/** + * \~english GPS information + */ +typedef struct { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCGPS; + +/** + * \~english ETC watch log trace + */ +typedef struct _T_DREC_TRCETCWATCH { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCETCWATCH; + +/** + * \~english ROB log trace + */ +typedef struct _T_DREC_TRCROB { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCROB; + +/** + * \~english Optical beacon down-link information trace + */ +typedef struct _T_DREC_TRCOPTBEACON_DOWN_LINK { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCOPTBEACON_DOWN_LINK; + +/** + * \~english Optical beacon up-link information trace + */ +typedef struct _T_DREC_TRCOPTBEACON_UP_LINK { + /* + * Note. + * This feature needs to be defined by the vendor. + */ +} T_DREC_TRCOPTBEACON_UP_LINK; + +/*********************************************************** + Enumeration definitions +***********************************************************/ + +/** + * \~english Diag record API return value + */ +typedef enum { + RET_DREC_NORMAL = 0, //!< \~english Normal end + RET_DREC_ERROR, //!< \~english Abnormal end + RET_DREC_ERR_ARGUMENTS, //!< \~english Incorrect argument +} RET_DREC_API; + +/** + * \~english Diag record ACC state + */ +typedef enum { + E_DREC_ACC_OFF = 0, //!< \~english ACC OFF + E_DREC_ACC_ON, //!< \~english ACC ON +} E_DREC_ACC; + +/** + * \~english Diag recording function state + */ +typedef enum { + E_DREC_REC_OFF = 0, //!< \~english Recording stop + E_DREC_REC_ON //!< \~english Recording start +} E_DREC_REC; + +/** + * \~english Maker peculiarity trace output state + */ +typedef enum { + DREC_OUTPUT_STATE_START = 1, //!< \~english Output start + DREC_OUTPUT_STATE_END, //!< \~english Output end +} DREC_OUTPUT_STATE; + +/** + * \~english Maker peculiarity trace output result + */ +typedef enum { + DREC_OUTPUT_NOTIFY_OK = 0, //!< \~english OK + DREC_OUTPUT_NOTIFY_NG, //!< \~english NG +} DREC_OUTPUT_RESULT; + +/** + * \~english Maker peculiarity trace function state + */ +typedef enum { + DREC_OUTPUT_FUNC_ON = 0, //!< \~english Function ON + DREC_OUTPUT_FUNC_OFF, //!< \~english Function OFF +} DREC_OUTPUT_FUNC; + +/** + * \~english Maker peculiarity trace notification restrict + */ +typedef enum { + DREC_NOTIFY_RESTRICT_API, //!< \~english restrict API + DREC_NOTIFY_RESTRICT_CAN, //!< \~english restrict CAN + DREC_NOTIFY_RESTRICT_NONE, //!< \~english non-restrict +} DREC_NOTIFY_RESTRICT; + +/*********************************************************** + Constant +***********************************************************/ +#define DREC_COM_GPS_ID_CORD 0xF0 //!< \~english GPS time information identification code +#define DREC_COM_RECORD_STOP 0xF1 //!< \~english Recording stop +#define DREC_COM_RECORD_START 0xF2 //!< \~english Recording start + +/*********************************************************** + API +***********************************************************/ +/** @addtogroup ApplicationManagement + * @{ + */ +/** @addtogroup Vehicle + * @ingroup ApplicationManagement + * @{ + */ +/** @addtogroup Diag + * @ingroup Vehicle + * @{ + */ +/** @addtogroup Diag_DrecOperate + * @ingroup Diag + * @{ + */ +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_ChangeRecording +/// \~english @par Brief +/// Instruct the record function start/stop and write the start/stop information. +/// \~english @param [in] state +/// \ref E_DREC_REC - Function start/stop state +/// \~english @par +/// - Set either in the following "Diag recording function states" for the argument (state) (Function start/stop state) +/// \~english @code +/// Diag recording function states +/// E_DREC_REC_OFF : Recording stop +/// E_DREC_REC_ON : Recording start +/// @endcode +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @par Prerequisite +/// - \ref PFDREC_OpenSession must be called prior to calling this API. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - None +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// The log output of Diag Record is output in the following format by calling this API.\n +/// \n +/// < Function ON >\n +/// Record "Recording start information" in each trace data. Notify the function start of the recording function to BaseSystem.\n +/// Register GPS time information from Diag service by \ref DREC_WriteTrcGPS.\n +/// \n +/// < Function OFF >\n +/// Record "Recording stop information" in each trace data. Notify the function stop of the recording function to BaseSystem.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_ChangeRecording(E_DREC_REC state); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_AccOffOn +/// \~english @par Brief +/// Write ACCOFF time information to the memory at ACC OFF. +/// \~english @param [in] state +/// \ref E_DREC_ACC - ACCOFFON (reset) state +/// \~english @par +/// - Set either in the following "Diag record ACC state" for the argument (state) (ACCOFFON (reset) state) +/// \~english @code +/// Diag record ACC state +/// E_DREC_ACC_OFF : ACC OFF +/// E_DREC_ACC_ON : ACC ON +/// @endcode +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - None +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Wrapper executes the following processes by calling this API. \n +/// This API must be called when this Diag service detects FrameworkunifiedOnStop. (Called only by the service having Diag recorder function.) \n +/// Wrapper writes ACCOFF information in each trace file. \n +/// Wrapper writes #power OFF state by the power trace output based on the notification from SYS. \n +/// Wrapper writes GPS time at Function OFF and at ACCOFF (reset) in preparation for a case that GPS time information cannot be acquired at the start up. \n +/// Wrapper does not reaquire GPS time if valid GPS time cannot be acquired at the startup. \n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_AccOffOn(E_DREC_ACC state); +/** @}*/ // end of Diag_DrecOperate +/** @addtogroup Diag_DrecWriteTrc + * @ingroup Diag + * @{ + */ +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcPwr +/// \~english @par Brief +/// Write the power trace output information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCPWR* - Pointer to the power trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the power trace output information to the memory. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcPwr(T_DREC_TRCPWR* data, u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcPwr_Tick +/// \~english @par Brief +/// Write the power trace output information to the memory (tick specification exists). +/// \~english @param [in] data +/// \ref T_DREC_TRCPWR_WITHSYSTIME* - Pointer to the power trace data (with the system time) +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @param [in] tick +/// u_int32_t - TICK value of the current SYS internal +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the power trace output information to the memory (tick specification exists). +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcPwr_Tick(T_DREC_TRCPWR_WITHSYSTIME* data, + u_int32_t num, u_int32_t tick); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcMode +/// \~english @par Brief +/// Write the mode control parts of the mode control/vehicle signal trace output information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCMODE* - The pointer to mode management trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the mode control parts of the mode control/vehicle signal trace output information to the memory.\n +/// The system time is gotten by wrapper library and added.\n +/// This API adds the vehicle signal state fixed at 0xFF.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcMode(T_DREC_TRCMODE* data, u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcVehicleSignal +/// \~english @par Brief +/// Write the vehicle signal parts of the mode control/vehicle signal trace output information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCVEHICLESIGNAL* - Pointer to the vehicle signal trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the vehicle signal parts of the mode control/vehicle signal trace output information to the memory.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcVehicleSignal(T_DREC_TRCVEHICLESIGNAL* data, + u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcKey +/// \~english @par Brief +/// Write the key trace output information to the memory (for 11byte key information). +/// \~english @param [in] data +/// \ref T_DREC_TRCKEY* - The pointer to key trace data (Key information for 11 bytes) +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the key trace output information to the memory (for 11byte key information).\n +/// (The caller uses only when size of the key information is 11 bytes. For data which it is 27 bytes, the caller uses \ref DREC_WriteTrcKey_Exp .)\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcKey_Exp +/// \~english @par Brief +/// Write the key trace output information to the memory (for 23byte key information). +/// \~english @param [in] data +/// \ref T_DREC_TRCKEY_EXP* - The pointer to key trace data (Key information for 23 bytes) +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 50) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the key trace output information to the memory (for 23byte key information).\n +/// (For data which key information is 11 bytes, the caller uses \ref DREC_WriteTrcKey .)\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcKey_Exp(T_DREC_TRCKEY_EXP* data, + u_int32_t num); + + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcKey_Voice +/// \~english @par Brief +/// Write the voice trace output information to the memory(for voice operation). +/// \~english @param[in] data +/// T_DREC_TRCKEY_VOICE* - The pointer to key trace data() +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @par +/// Number of written frames (1 to 50) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the voice trace output information to the memory(for voice operation). +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcKey_Voice(T_DREC_TRCKEY_VOICE* data, + u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcErr +/// \~english @par Brief +/// Write the error trace output information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCERR* - The pointer to error trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DIAG_API_DCCC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the error trace output information to the memory. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcErr(T_DREC_TRCERR* data, u_int32_t num); + + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcCan +/// \~english @par Brief +/// Write CAN communication trace output information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCCAN* - Pointer to CAN communication trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @param [in] tick +/// u_int32_t - TICK value of the current SYS internal +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DIAG_API_DCCC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write CAN communication trace output information to the memory.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcCan(T_DREC_TRCCAN* data, u_int32_t num, + u_int32_t tick); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcDeliveryPFWatchLog +/// \~english @par Brief +/// Write the monitoring trace log output information of the distributed application PF to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCAWDATA* - The pointer to monitoring log data of the distribution application PF +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the monitoring trace log output information of the distributed application PF to the memory.\n +/// The library side adds the system time. The caller must call for each segment of data.\n +/// The library side adds the system time to the beginning of the data and ALL 0 to from the head of the remaining data to 3 bytes.\n +/// This API adds the system time to the beginning with a single call and regarding data exceeding one frame, divides and registers it.\n +/// The caller must not call some headers and data record parts together. (Because system time can not be added for each section.)\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcDeliveryPFWatchLog(T_DREC_TRCAWDATA* data); + + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcDeliveryPFUseLog +/// \~english @par Brief +/// Write the usage trace log output information of the distributed application PF to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCAWDATA* - The pointer to usage log data of the distribution application PF +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the usage trace log output information of the distributed application PF to the memory.\n +/// The library side adds the system time. The caller must call for each segment of data.\n +/// The library side adds the system time to the beginning of the data and ALL 0 to from the head of the remaining data to 3 bytes.\n +/// This API adds the system time to the beginning with a single call and regarding data exceeding one frame, divides and registers it.\n +/// The caller must not call some headers and data record parts together. (Because system time can not be added for each section.)\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcDeliveryPFUseLog(T_DREC_TRCAWDATA* data); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcBT +/// \~english @par Brief +/// Write the trace output information of Bluetooth to the memory. +/// \~english @param[in] data +/// T_DREC_TRCBT* - The pointer to write data +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of Bluetooth to the memory. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcBT(T_DREC_TRCBT* data, u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcBTInternal +/// \~english @par Brief +/// (Only in the specific Supplier) Write the trace output information of Bluetooth internal to the memory. +/// \~english @param [in] data +/// u_int8_t* - The pointer to write data +/// \~english @param [in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// This API is API for specific supplier.(TECHWG-443)\n +/// Write the trace output information of Bluetooth internal to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcBTInternal(u_int8_t* data, + u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcWiFi +/// \~english @par Brief +/// Write the trace output information of WiFi to the memory. +/// \~english @param[in] data +/// T_DREC_TRCWIFI* - The pointer to write data +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of WiFi to the memory.\n +/// \ref T_DREC_TRCWIFI Structure\n +/// Data frame format are different by setting value of WiFi setting state.\n +/// WiFi Setting state( \ref T_DREC_TRCWIFI.processing )\n +/// - Connection(0x00), Auto connection(0x01) and Disconnection(0x02) data format definition \ref notinitialdata used.\n +/// - Creation Mode(0x03) and Deletion Mode((0x04)) data format definition \ref modedata used.\n +/// - Initial is activation(0x10) format definition \ref initialdata used. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcWiFi(T_DREC_TRCWIFI* data, u_int32_t num); + + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcWiFiInternal +/// \~english @par Brief +/// (Only in the specific Supplier) Write the trace output information of WiFi internal to the memory. +/// \~english @param [in] data +/// u_int8_t* - The pointer to write data +/// \~english @param [in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// This API is API for specific supplier.(TECHWG-443)\n +/// Write the trace output information of WiFi internal to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcWiFiInternal(u_int8_t* data, u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcCenter +/// \~english @par Brief +/// Write the trace output information of the communication with the center to the memory. +/// \~english @param [in] data +/// u_int8_t* - The pointer to write data +/// \~english @param [in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of the communication with the center to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcCenter(u_int8_t* data, u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcVersion +/// \~english @par Brief +/// Write the trace output information of the version information to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCVERSION* - Pointer to the Trace data of the version information +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 25) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of the version information to the memory.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcVersion(T_DREC_TRCVERSION* data, + u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcDCM +/// \~english @par Brief +/// Write the trace output information of DCM communication to the memory. +/// \~english @param [in] data +/// u_int8_t* - The pointer to write data +/// \~english @param [in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of DCM communication to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcDCM(u_int8_t* data, u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcDSRC +/// \~english @par Brief +/// Write the trace output information of DSRC/ETC communication to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of DSRC/ETC communication to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcDSRC(T_DREC_TRCAWDATA* data); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrc_CWORD17_ +/// \~english @par Brief +/// Write the trace output information of _CWORD5_ communication to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCCAN* - Pointer to the _CWORD5_ communication trace data +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @param [in] tick +/// u_int32_t - TICK value of the current SYS internal +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of _CWORD5_ communication to the memory.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrc_CWORD17_(T_DREC_TRCCAN* data, u_int32_t num, + u_int32_t tick); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcWave +/// \~english @par Brief +/// Write the trace output information of the radio wave receipt to the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCWAVE* - The pointer to trace data of the electric wave reception +/// \~english @param [in] num +/// u_int32_t - Number of written frames (1 to 100) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of the radio wave receipt to the memory.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcWave(T_DREC_TRCWAVE* data, u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcUSB +/// \~english @par Brief +/// Write the trace output information of USB I/F connected application internal to the memory. +/// \~english @param [in] data +/// u_int8_t* - The pointer to wrire data +/// \~english @param [in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of USB I/F connected application internal to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcUSB(u_int8_t* data, u_int32_t size); + + +/** @}*/ // end of Diag_DrecWriteTrc +/** @addtogroup Diag_DrecOperate + * @ingroup Diag + * @{ + */ + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_GetRecordSize +/// \~english @par Brief +/// Acquire the number of Diag record registration whose type is specified. +/// \~english @param [in] type +/// \ref E_PFDREC_CATEGORY_TYPE - Type to acquire the record size +/// \~english @param [out] num +/// u_int32_t * - Pointer to the number of registered records. +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - \ref PFDREC_OpenSession must be called prior to calling this API. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (num) is NULL. [RET_DREC_ERROR] +/// - The argument (type) is not the defined value. [RET_DREC_ERROR] +/// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR] +/// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Acquire the number of record registration whose type is specified.\n +/// In BaseSystem, returns the number of records of the specified type. \n +/// The caller determines the total size with the number of records and each record length.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_GetRecordSize(E_PFDREC_CATEGORY_TYPE type, + u_int32_t *num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_GetRecordData +/// \~english @par Brief +/// Acquire the registered Diag record whose type is specified. +/// \~english @param [in] type +/// \ref E_PFDREC_CATEGORY_TYPE - Type to acquire the record size (\ref E_PFDREC_CATEGORY_TRC_PWR - ref E_PFDREC_CATEGORY_TRC_TRAF ) +/// \~english @param [in] num +/// u_int32_t - The number of records to acquire (1 to 100) +/// \~english @param [in] record_ptr +/// u_int32_t - The start point of the record to acquire +/// \~english @param [out] data +/// u_int8_t *- Pointer to the storage area for the record to acquire +/// \~english @param [out] out_num +/// u_int32_t *- Pointer to the size of the stored record +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - \ref PFDREC_OpenSession must be called prior to calling this API. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (data) is NULL [RET_DREC_ERROR] +/// - The argument (out_num) is NULL [RET_DREC_ERROR] +/// - The argument (type) is not the defined value [RET_DREC_ERROR] +/// - The argument (num) is 0 or greater than 100. [RET_DREC_ERROR] +/// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR] +/// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Acquire the record whose type is specified. \n +/// In BaseSystem, acquire the records of the specified type and the specified number. In this case, the caller specifies from which number of record is acquired.\n +/// The caller is supposed to acquire data in order from the beginning in several batches.\n +/// When the number of record requested to acquire is more than that of registered records, acquire the registered number only and returns it. \n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_GetRecordData(E_PFDREC_CATEGORY_TYPE type, + u_int32_t num, u_int32_t record_ptr, + u_int8_t *data, u_int32_t *out_num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_GetRecordState +/// \~english @par Brief +/// Acquire the start/stop state of the record function. +/// \~english @param [out] state +/// \ref E_DREC_REC* - Pointer to the start/stop state of the record function. +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - \ref PFDREC_OpenSession must be called prior to calling this API. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (state) is NULL [RET_DREC_ERROR] +/// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR] +/// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Acquire the start/stop state of the record function. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_GetRecordState(E_DREC_REC* state); +/** @}*/ // end of Diag_DrecOperate +/** @addtogroup Diag_DrecOperate + * @ingroup Diag + * @{ + */ +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_SetSysemTimeDifference +/// \~english @par Brief +/// Set the system time difference. +/// \~english @param [in] data +/// u_int32_t - System time difference +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @par Prerequisite +/// - None +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - None +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Store the system time difference in the shared memory.\n +/// Reflect the stored value in the addition process of the system time.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_SetSysemTimeDifference(u_int32_t data); +/** @}*/ // end of Diag_DrecOperate +/** @addtogroup Diag_DrecWriteTrc + * @ingroup Diag + * @{ + */ +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcGPS +/// \~english @par Brief +/// Set GPS time information to each trace data. +/// \~english @param [in] data +/// \ref T_DREC_TRCGPS* - Pointer to the GPS information +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Set the GPS time information \n +/// The target is all trace outputs belonging to the unit in which this API is called. \n +/// When registering the trace data in BaseSystem, regarding the key trace, GPS information is separately passed as the argument (The second argument of PFDREC_ComDataBuckup).\n +/// After Function ON, when a valid GPS time can be acquired after ACCON, the Diag service must register it.\n +/// During Function ON, when a valid GPS time cannot be acquired, retry must be performed until the acquired time is registered.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcGPS(T_DREC_TRCGPS* data); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcUSBETC +/// \~english @par Brief +/// Write USB log information of DSRC/ETC communication trace output into the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write USB log information of DSRC/ETC communication trace output into the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcUSBETC(T_DREC_TRCAWDATA* data); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcUplink +/// \~english @par Brief +/// Write the uplink log information of DSRC/ETC communication trace output into the memory. +/// \~english @param [in] data +/// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the uplink log information of DSRC/ETC communication trace output into the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcUplink(T_DREC_TRCAWDATA* data); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcETCWatch +/// \~english @par Brief +/// Write trace output of the ETC watch to the memory. +/// \~english @param[in] data +/// T_DREC_TRCETCWATCH* - Pointer to the trace data of the ETC watch. +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the monitoring trace output information of the ETC to the memory.\n +/// \ref T_DREC_TRCETCWATCH structure\n +/// Data format is different by device type / frame type( \ref T_DREC_TRCETCWATCH.frameType )\n +/// 0:ETC status notification log \n +/// 1:ETC latest charge notification log \n +/// 2:ETC operation response log \n +/// Use the \ref T_DREC_TRCETCWATCH.command format destination.\n +/// 3:ETC communication log \n +/// Use the \ref T_DREC_TRCETCWATCH.com_command format destination.\n +/// 4:Diag Clear event log \n +/// 5:Diagnosis detection event log \n +/// 6:Diagnosis recovery event log \n +/// Use the \ref T_DREC_TRCETCWATCH.diag format destination. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcETCWatch(T_DREC_TRCETCWATCH* data, + u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcRoB +/// \~english @par Brief +/// Write the trace output information of RoB log to the memory. +/// \~english @param[in] data +/// T_DREC_TRCROB* - The pointer to write data +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the trace output information of RoB log to the memory. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcRoB(T_DREC_TRCROB* data, + u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcEvaluation +/// \~english @par Brief +/// Write the evaluation trace output information to the memory. +/// \~english @param[in] data +/// u_int8_t* - The pointer to write data +/// \~english @param[in] size +/// u_int32_t - Data size (1 to 1200bytes) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the evaluation trace output information to the memory.\n +/// The log output of Diag Record is output in the following format.\n +/// This API registers system time from Byte1 to 3.\n +/// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n +/// so that it does not overlap with that data.\n +/// This API registers specified data after Byte5.\n +/// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n +/// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n +/// It is filled with 0x00 if the data is less than 16 bytes.\n +/// This API adds the system time to the beginning with a single call.\n +/// Regarding data exceeding one frame, this API divides and registers it.\n +/// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n +/// (The format is optional for the manufacturer.) +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcEvaluation(u_int8_t* data, + u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_DeleteTrcDeliveryPFUseLog +/// \~english @par Brief +/// Delete the trace of distribution application PF usage log. +/// \~english @param None +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - \ref PFDREC_OpenSession must be called prior to calling this API. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (func) is NULL [RET_DREC_ERROR] +/// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR] +/// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Delete the trace of distribution application PF usage log. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_DeleteTrcDeliveryPFUseLog(void); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_DeleteTrcDeliveryPFUseLog_inSession +/// \~english @par Brief +/// Delete the trace of distribution application PF usage log. +/// - Execute "Session start(\ref PFDREC_OpenSession)" before the deletion. +/// - Execute "Session termination(\ ref PFDREC_CloseSession)" after the deletion. +/// \~english @param None +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - \ref PFDREC_OpenSession failed. [RET_DREC_ERROR] +/// - \ref PFDREC_CloseSession failed. [RET_DREC_ERROR] +/// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Execute "Session starti(\ref PFDREC_OpenSession)" before the deletion.\n +/// Delete the trace of distribution application PF usage log \n +/// Execute "Session termination(\ref PFDREC_CloseSession)" after the deletion. \n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +//////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_DeleteTrcDeliveryPFUseLog_inSession(HANDLE hThread); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcOptBeaconDownLink +/// \~english @par Brief +/// Write Optical beacon down-link information trace to the memory. +/// \~english @param[in] data +/// T_DREC_TRCOPTBEACON_DOWN_LINK* - Pointer to the trace data of the Optical beacon down-link information. +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the Optical beacon down-link information trace to the memory.\n +/// \ref T_DREC_TRCOPTBEACON_DOWN_LINK structure\n +/// Data format is different by rcv type( \ref T_DREC_TRCOPTBEACON_DOWN_LINK.rcvkind )\n +/// 01h : Route signal information \n +/// Use the \ref T_DREC_TRCOPTBEACON_DOWN_LINK.downlinkinfo format destination.\n +/// 02h : Lack route signal information\n +/// 03h : No route signal information \n +/// Use the \ref T_DREC_TRCOPTBEACON_DOWN_LINK.rcvgpspositioningdata format destination.\n +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcOptBeaconDownLink( + T_DREC_TRCOPTBEACON_DOWN_LINK* data, u_int32_t num); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_WriteTrcOptBeaconUpLink +/// \~english @par Brief +/// Write Optical beacon up-link information trace to the memory. +/// \~english @param[in] data +/// T_DREC_TRCOPTBEACON_UP_LINK* - Pointer to the trace data of the Optical beacon up-link information. +/// \~english @param[in] num +/// u_int32_t - Number of written frames +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @par Prerequisite +/// - This API must be called only when Availability of PFDRECThread is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Sync only(None communication) +/// \~english @par Detail +/// Write the Optical beacon up-link information trace to the memory. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_WriteTrcOptBeaconUpLink(T_DREC_TRCOPTBEACON_UP_LINK* data, + u_int32_t num); + +/** @}*/ // end of Diag_DrecWriteTrc +/** @addtogroup Diag_Drec_MakerTrace + * @ingroup Diag + * @{ + */ +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_DeliveryEntry +/// \~english @par Brief +/// Register the delivery destination application for Maker peculiarity trace +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Registers the handle and thread name for the delivery destination application in the delivery registration table.\n +/// The client must call this API on a thread that needs to receive that are related to the Maker peculiarity trace in advance. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_DeliveryEntry(HANDLE hApp, + PCSTR notifyName); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_SizeRequest +/// \~english @par Brief +/// Request to get record size of Maker peculiarity trace. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - None +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Private +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Request to get record size of Maker peculiarity trace to the registered application for delivery.\n +/// Message ID sended by DiagService is as follows\n +/// MSGID_DREC_MAKERTRACE_SIZEREQUEST +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_SizeRequest(HANDLE hApp, + PCSTR notifyName); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_SizeResponce +/// \~english @par Brief +/// Send record size of Maker peculiarity trace to DiagService. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] size +/// u_int32_t - Data size (Unit: Byte) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Send record size of Maker peculiarity trace to DiagService. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_SizeResponce(HANDLE hApp, + PCSTR notifyName, + u_int32_t size); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_OutputRequest +/// \~english @par Brief +/// Request to output of Maker peculiarity trace. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] output +/// PCSTR - Output destination +/// \~english @param[in] state +/// DREC_OUTPUT_STATE - Status (output start or output stop) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - None +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Private +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Request to output of Maker peculiarity trace to the registered application for delivery.\n +/// Message ID sended by DiagService is as follows\n +/// MSGID_DREC_MAKERTRACE_OUTPUTREQUEST +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_OutputRequest(HANDLE hApp, + PCSTR notifyName, + PCSTR output, + DREC_OUTPUT_STATE state); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_OutputResponce +/// \~english @par Brief +/// Send output status of Maker peculiarity trace to DiagService. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] progress +/// u_int8_t - Progress rate (0 to 100) +/// \~english @param[in] state +/// DREC_OUTPUT_RESULT - Status (OK or NG) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Send output status of Maker peculiarity trace to DiagService. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_OutputResponce(HANDLE hApp, + PCSTR notifyName, + u_int8_t progress, + DREC_OUTPUT_RESULT state); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_DeleteRequest +/// \~english @par Brief +/// Request to delete of Maker peculiarity trace. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - None +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Private +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Request to delete of Maker peculiarity trace to the registered application for delivery.\n +/// Message ID sended by DiagService is as follows\n +/// MSGID_DREC_MAKERTRACE_DELETEREQUEST +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_DeleteRequest(HANDLE hApp, + PCSTR notifyName); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_DeleteResponce +/// \~english @par Brief +/// Send result of delete Maker peculiarity trace to DiagService. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] state +/// DREC_OUTPUT_RESULT - Status (OK or NG) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Send result of delete Maker peculiarity trace to DiagService. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_DeleteResponce(HANDLE hApp, + PCSTR notifyName, + DREC_OUTPUT_RESULT state); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_FuncStatusRequest +/// \~english @par Brief +/// Request to change function status of Maker peculiarity trace. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] func +/// DREC_OUTPUT_FUNC - Function status (function ON or ffunction OFF) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - None +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Private +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Request to change function status of Maker peculiarity trace to the registered application for delivery.\n +/// Message ID sended by DiagService is as follows\n +/// MSGID_DREC_MAKERTRACE_FUNCSTATUSREQUEST +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_FuncStatusRequest(HANDLE hApp, + PCSTR notifyName, + DREC_OUTPUT_FUNC func); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_FuncStatusResponce +/// \~english @par Brief +/// Send result of change function status of Maker peculiarity trace to DiagService. +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] state +/// DREC_OUTPUT_RESULT - Status (OK or NG) +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Send result of change function status of Maker peculiarity trace to DiagService. +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// None +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_FuncStatusResponce(HANDLE hApp, + PCSTR notifyName, + DREC_OUTPUT_RESULT state); + +///////////////////////////////////////////////////////////////////////////////////// +/// \ingroup DREC_MakerTrace_NotifyRestrict +/// \~english @par Brief +/// Restrict notify of Maker peculiarity trace +/// \~english @param[in] hApp +/// HANDLE - The handle for the delivery source application +/// \~english @param[in] notifyName +/// PCSTR - The thread name of the delivery source +/// \~english @param[in] notifyRestrict +/// DREC_NOTIFY_RESTRICT - Restrict kind of Maker peculiarity trace +/// \~english @retval RET_DREC_NORMAL Normal end +/// \~english @retval RET_DREC_ERROR Abnormal end +/// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument +/// \~english @par Prerequisite +/// - This API must be called only when Availability of Diag Service is TRUE. +/// \~english @par Change of internal state +/// - The internal state is not changed. +/// \~english @par Conditions of processing failure +/// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS] +/// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR] +/// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR] +/// \~english @par Classification +/// Public +/// \~english @par Type +/// Fire and Forget only +/// \~english @par Detail +/// Restrict trace notifications triggered by the specified notifyRestrict. +/// Restrict notification(MessageID) are as follows. +/// - MSGID_DREC_MAKERTRACE_SIZEREQUEST +/// - MSGID_DREC_MAKERTRACE_OUTPUTREQUEST +/// - MSGID_DREC_MAKERTRACE_DELETEREQUEST +/// - MSGID_DREC_MAKERTRACE_FUNCSTATUSREQUEST +/// \n +/// if this API is not called, not restrict(Status is DREC_NOTIFY_RESTRICT_NONE). +/// \~english @par +/// - include MM_DREC_API.h +/// - Library libMM_DREC_API.so +/// \~english @see +/// DREC_MakerTrace_FuncStatusRequest, DREC_MakerTrace_DeleteRequest, +/// DREC_MakerTrace_OutputRequest, DREC_MakerTrace_SizeRequest +///////////////////////////////////////////////////////////////////////////////////// +extern RET_DREC_API DREC_MakerTrace_NotifyRestrict(HANDLE hApp, + PCSTR notifyName, + DREC_NOTIFY_RESTRICT notifyRestrict); +#ifdef __cplusplus +} +#endif // __cplusplus +/** @}*/ // end of Diag_Drec_MakerTrace +/** @}*/ // end of Diag +/** @}*/ // end of Vehicle +/** @}*/ // end of ApplicationManagement +#endif // __MM_DREC_API_H__ + -- cgit 1.2.3-korg