2 * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 /////////////////////////////////////////////////////////////////////////////
18 /// \file MM_DREC_API.h
19 /////////////////////////////////////////////////////////////////////////////
21 /*****************************************************************************
23 * @brief MM diag recorder function API definition
24 *****************************************************************************/
27 /*****************************************************************************
29 * - Die-Record Function API Operation -
32 * $$ Notes on Creation and Release $$
33 * - Submit and request the created headers and dummy libs (empty functions defined only for I/F)
34 * from DiagService to BaseSystem and build them from BaseSystem.
36 * - The created regular Lib (not dummy Lib) is built from DiagService.
38 * -> Since this API is also used in BaseSystem, the API must be inserted
39 * from the BaseSystem build to avoid errors in JointBuild.
41 * $$ Notes on change $$
42 * - When modifying a header without changing the I/F, submit and request only the header to the BaseSystem.
44 * - Submit header and source code for dummy Lib when the header is modified due to an I/F change.
46 * - When the legitimate lib is changed without changing headers and I/F, no need to submit or request to BaseSystem.
48 *****************************************************************************/
50 #if !defined( __MM_DREC_API_H__ )
51 #define __MM_DREC_API_H__
53 #include <native_service/frameworkunified_framework_if.h>
54 #include <stub/PFDREC_API.h>
60 /***********************************************************
62 ***********************************************************/
63 #define ENDIAN16(val) \
64 (((val << 8) & 0xFF00) | ((val >> 8) & 0x00FF)) //!< \~english ENDIAN conversion(16bit)
66 #define ENDIAN32(val) \
67 ((val << 24) & 0xFF000000) | ((val << 8) & 0x00FF0000) | ((val >> 8) & 0x0000FF00) | ((val >> 24) & 0x000000FF) //!< \~english ENDIAN conversion(32bit)
69 /***********************************************************
70 Data Frame/Size Definition
71 ***********************************************************/
73 /***********************************************************
74 Data Frame Related/Structure (Common)
75 ***********************************************************/
77 * \~english ACC OFF information
82 * This feature needs to be defined by the vendor.
87 * \~english GPS time information
92 * This feature needs to be defined by the vendor.
97 * \~english Frame for searching recording stop and start
102 * This feature needs to be defined by the vendor.
107 * \~english Common data frame
112 * This feature needs to be defined by the vendor.
114 } T_DREC_COMMON_DATAFRAME;
116 /***********************************************************
117 Data Frame/Structure Definition
118 ***********************************************************/
121 * \~english Power trace data frame
126 * This feature needs to be defined by the vendor.
131 * \~english Power trace data frame_system time attached
136 * This feature needs to be defined by the vendor.
138 } T_DREC_TRCPWR_WITHSYSTIME;
141 * \~english Mode control/vehicle signal trace (mode control)
146 * This feature needs to be defined by the vendor.
151 * \~english Mode control/vehicle signal trace (vehicle signal)
156 * This feature needs to be defined by the vendor.
158 } T_DREC_TRCVEHICLESIGNAL;
161 * \~english Key trace
166 * This feature needs to be defined by the vendor.
171 * \~english Key trace (key information for 23byte)
176 * This feature needs to be defined by the vendor.
181 * \~english Key trace(voice operation)
183 typedef struct _T_DREC_TRCKEY_VOICE {
186 * This feature needs to be defined by the vendor.
188 } T_DREC_TRCKEY_VOICE;
191 * \~english Error trace
196 * This feature needs to be defined by the vendor.
201 * \~english CAN communication trace
206 * This feature needs to be defined by the vendor.
211 * \~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)
216 * This feature needs to be defined by the vendor.
221 * \~english Bluetooth trace
226 * This feature needs to be defined by the vendor.
228 } T_DREC_TRCBTCONNECT;
231 * \~english Bluetooth trace
233 typedef struct _T_DREC_TRCBTINTERNAL {
236 * This feature needs to be defined by the vendor.
238 } T_DREC_TRCBTINTERNAL;
241 * \~english Bluetooth trace
243 typedef struct _T_DREC_TRCBT {
246 * This feature needs to be defined by the vendor.
251 * \~english SSID information
253 typedef struct _T_DREC_TRCWIFI_SSID_INFO {
256 * This feature needs to be defined by the vendor.
258 } T_DREC_TRCWIFI_SSID_INFO;
261 * \~english WiFi trace
263 typedef struct _T_DREC_TRCWIFI {
266 * This feature needs to be defined by the vendor.
271 * \~english Trace data of the version information
276 * This feature needs to be defined by the vendor.
281 * \~english Trace of the radio wave receipt
286 * This feature needs to be defined by the vendor.
291 * \~english GPS information
296 * This feature needs to be defined by the vendor.
301 * \~english ETC watch log trace
303 typedef struct _T_DREC_TRCETCWATCH {
306 * This feature needs to be defined by the vendor.
308 } T_DREC_TRCETCWATCH;
311 * \~english ROB log trace
313 typedef struct _T_DREC_TRCROB {
316 * This feature needs to be defined by the vendor.
321 * \~english Optical beacon down-link information trace
323 typedef struct _T_DREC_TRCOPTBEACON_DOWN_LINK {
326 * This feature needs to be defined by the vendor.
328 } T_DREC_TRCOPTBEACON_DOWN_LINK;
331 * \~english Optical beacon up-link information trace
333 typedef struct _T_DREC_TRCOPTBEACON_UP_LINK {
336 * This feature needs to be defined by the vendor.
338 } T_DREC_TRCOPTBEACON_UP_LINK;
340 /***********************************************************
341 Enumeration definitions
342 ***********************************************************/
345 * \~english Diag record API return value
348 RET_DREC_NORMAL = 0, //!< \~english Normal end
349 RET_DREC_ERROR, //!< \~english Abnormal end
350 RET_DREC_ERR_ARGUMENTS, //!< \~english Incorrect argument
354 * \~english Diag record ACC state
357 E_DREC_ACC_OFF = 0, //!< \~english ACC OFF
358 E_DREC_ACC_ON, //!< \~english ACC ON
362 * \~english Diag recording function state
365 E_DREC_REC_OFF = 0, //!< \~english Recording stop
366 E_DREC_REC_ON //!< \~english Recording start
370 * \~english Maker peculiarity trace output state
373 DREC_OUTPUT_STATE_START = 1, //!< \~english Output start
374 DREC_OUTPUT_STATE_END, //!< \~english Output end
378 * \~english Maker peculiarity trace output result
381 DREC_OUTPUT_NOTIFY_OK = 0, //!< \~english OK
382 DREC_OUTPUT_NOTIFY_NG, //!< \~english NG
383 } DREC_OUTPUT_RESULT;
386 * \~english Maker peculiarity trace function state
389 DREC_OUTPUT_FUNC_ON = 0, //!< \~english Function ON
390 DREC_OUTPUT_FUNC_OFF, //!< \~english Function OFF
394 * \~english Maker peculiarity trace notification restrict
397 DREC_NOTIFY_RESTRICT_API, //!< \~english restrict API
398 DREC_NOTIFY_RESTRICT_CAN, //!< \~english restrict CAN
399 DREC_NOTIFY_RESTRICT_NONE, //!< \~english non-restrict
400 } DREC_NOTIFY_RESTRICT;
402 /***********************************************************
404 ***********************************************************/
405 #define DREC_COM_GPS_ID_CORD 0xF0 //!< \~english GPS time information identification code
406 #define DREC_COM_RECORD_STOP 0xF1 //!< \~english Recording stop
407 #define DREC_COM_RECORD_START 0xF2 //!< \~english Recording start
409 /***********************************************************
411 ***********************************************************/
412 /** @addtogroup ApplicationManagement
415 /** @addtogroup Vehicle
416 * @ingroup ApplicationManagement
423 /** @addtogroup Diag_DrecOperate
427 /////////////////////////////////////////////////////////////////////////////////////
428 /// \ingroup DREC_ChangeRecording
429 /// \~english @par Brief
430 /// Instruct the record function start/stop and write the start/stop information.
431 /// \~english @param [in] state
432 /// \ref E_DREC_REC - Function start/stop state
434 /// - Set either in the following "Diag recording function states" for the argument (state) (Function start/stop state)
436 /// Diag recording function states
437 /// E_DREC_REC_OFF : Recording stop
438 /// E_DREC_REC_ON : Recording start
440 /// \~english @retval RET_DREC_NORMAL Normal end
441 /// \~english @par Prerequisite
442 /// - \ref PFDREC_OpenSession must be called prior to calling this API.
443 /// \~english @par Change of internal state
444 /// - The internal state is not changed.
445 /// \~english @par Conditions of processing failure
447 /// \~english @par Classification
449 /// \~english @par Type
450 /// Sync only(None communication)
451 /// \~english @par Detail
452 /// The log output of Diag Record is output in the following format by calling this API.\n
454 /// < Function ON >\n
455 /// Record "Recording start information" in each trace data. Notify the function start of the recording function to BaseSystem.\n
456 /// Register GPS time information from Diag service by \ref DREC_WriteTrcGPS.\n
458 /// < Function OFF >\n
459 /// Record "Recording stop information" in each trace data. Notify the function stop of the recording function to BaseSystem.\n
461 /// - include MM_DREC_API.h
462 /// - Library libMM_DREC_API.so
463 /// \~english @see None
464 ////////////////////////////////////////////////////////////////////////////////////
465 extern RET_DREC_API DREC_ChangeRecording(E_DREC_REC state);
467 /////////////////////////////////////////////////////////////////////////////////////
468 /// \ingroup DREC_AccOffOn
469 /// \~english @par Brief
470 /// Write ACCOFF time information to the memory at ACC OFF.
471 /// \~english @param [in] state
472 /// \ref E_DREC_ACC - ACCOFFON (reset) state
474 /// - Set either in the following "Diag record ACC state" for the argument (state) (ACCOFFON (reset) state)
476 /// Diag record ACC state
477 /// E_DREC_ACC_OFF : ACC OFF
478 /// E_DREC_ACC_ON : ACC ON
480 /// \~english @retval RET_DREC_NORMAL Normal end
481 /// \~english @par Prerequisite
482 /// - This API must be called only when Availability of PFDRECThread is TRUE.
483 /// \~english @par Change of internal state
484 /// - The internal state is not changed.
485 /// \~english @par Conditions of processing failure
487 /// \~english @par Classification
489 /// \~english @par Type
490 /// Sync only(None communication)
491 /// \~english @par Detail
492 /// Wrapper executes the following processes by calling this API. \n
493 /// This API must be called when this Diag service detects FrameworkunifiedOnStop. (Called only by the service having Diag recorder function.) \n
494 /// Wrapper writes ACCOFF information in each trace file. \n
495 /// Wrapper writes #power OFF state by the power trace output based on the notification from SYS. \n
496 /// 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
497 /// Wrapper does not reaquire GPS time if valid GPS time cannot be acquired at the startup. \n
499 /// - include MM_DREC_API.h
500 /// - Library libMM_DREC_API.so
501 /// \~english @see None
502 ////////////////////////////////////////////////////////////////////////////////////
503 extern RET_DREC_API DREC_AccOffOn(E_DREC_ACC state);
504 /** @}*/ // end of Diag_DrecOperate
505 /** @addtogroup Diag_DrecWriteTrc
509 /////////////////////////////////////////////////////////////////////////////////////
510 /// \ingroup DREC_WriteTrcPwr
511 /// \~english @par Brief
512 /// Write the power trace output information to the memory.
513 /// \~english @param [in] data
514 /// \ref T_DREC_TRCPWR* - Pointer to the power trace data
515 /// \~english @param [in] num
516 /// u_int32_t - Number of written frames (1 to 100)
517 /// \~english @retval RET_DREC_NORMAL Normal end
518 /// \~english @retval RET_DREC_ERROR Abnormal end
519 /// \~english @par Prerequisite
520 /// - This API must be called only when Availability of PFDRECThread is TRUE.
521 /// \~english @par Change of internal state
522 /// - The internal state is not changed.
523 /// \~english @par Conditions of processing failure
524 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
525 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
526 /// \~english @par Classification
528 /// \~english @par Type
529 /// Sync only(None communication)
530 /// \~english @par Detail
531 /// Write the power trace output information to the memory.
533 /// - include MM_DREC_API.h
534 /// - Library libMM_DREC_API.so
535 /// \~english @see None
536 ////////////////////////////////////////////////////////////////////////////////////
537 extern RET_DREC_API DREC_WriteTrcPwr(T_DREC_TRCPWR* data, u_int32_t num);
539 /////////////////////////////////////////////////////////////////////////////////////
540 /// \ingroup DREC_WriteTrcPwr_Tick
541 /// \~english @par Brief
542 /// Write the power trace output information to the memory (tick specification exists).
543 /// \~english @param [in] data
544 /// \ref T_DREC_TRCPWR_WITHSYSTIME* - Pointer to the power trace data (with the system time)
545 /// \~english @param [in] num
546 /// u_int32_t - Number of written frames (1 to 100)
547 /// \~english @param [in] tick
548 /// u_int32_t - TICK value of the current SYS internal
549 /// \~english @retval RET_DREC_NORMAL Normal end
550 /// \~english @retval RET_DREC_ERROR Abnormal end
551 /// \~english @par Prerequisite
552 /// - This API must be called only when Availability of PFDRECThread is TRUE.
553 /// \~english @par Change of internal state
554 /// - The internal state is not changed.
555 /// \~english @par Conditions of processing failure
556 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
557 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
558 /// \~english @par Classification
560 /// \~english @par Type
561 /// Sync only(None communication)
562 /// \~english @par Detail
563 /// Write the power trace output information to the memory (tick specification exists).
565 /// - include MM_DREC_API.h
566 /// - Library libMM_DREC_API.so
567 /// \~english @see None
568 ////////////////////////////////////////////////////////////////////////////////////
569 extern RET_DREC_API DREC_WriteTrcPwr_Tick(T_DREC_TRCPWR_WITHSYSTIME* data,
570 u_int32_t num, u_int32_t tick);
572 /////////////////////////////////////////////////////////////////////////////////////
573 /// \ingroup DREC_WriteTrcMode
574 /// \~english @par Brief
575 /// Write the mode control parts of the mode control/vehicle signal trace output information to the memory.
576 /// \~english @param [in] data
577 /// \ref T_DREC_TRCMODE* - The pointer to mode management trace data
578 /// \~english @param [in] num
579 /// u_int32_t - Number of written frames (1 to 100)
580 /// \~english @retval RET_DREC_NORMAL Normal end
581 /// \~english @retval RET_DREC_ERROR Abnormal end
582 /// \~english @par Prerequisite
583 /// - This API must be called only when Availability of PFDRECThread is TRUE.
584 /// \~english @par Change of internal state
585 /// - The internal state is not changed.
586 /// \~english @par Conditions of processing failure
587 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
588 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
589 /// \~english @par Classification
591 /// \~english @par Type
592 /// Sync only(None communication)
593 /// \~english @par Detail
594 /// Write the mode control parts of the mode control/vehicle signal trace output information to the memory.\n
595 /// The system time is gotten by wrapper library and added.\n
596 /// This API adds the vehicle signal state fixed at 0xFF.\n
598 /// - include MM_DREC_API.h
599 /// - Library libMM_DREC_API.so
602 ////////////////////////////////////////////////////////////////////////////////////
603 extern RET_DREC_API DREC_WriteTrcMode(T_DREC_TRCMODE* data, u_int32_t num);
605 /////////////////////////////////////////////////////////////////////////////////////
606 /// \ingroup DREC_WriteTrcVehicleSignal
607 /// \~english @par Brief
608 /// Write the vehicle signal parts of the mode control/vehicle signal trace output information to the memory.
609 /// \~english @param [in] data
610 /// \ref T_DREC_TRCVEHICLESIGNAL* - Pointer to the vehicle signal trace data
611 /// \~english @param [in] num
612 /// u_int32_t - Number of written frames (1 to 100)
613 /// \~english @retval RET_DREC_NORMAL Normal end
614 /// \~english @retval RET_DREC_ERROR Abnormal end
615 /// \~english @par Prerequisite
616 /// - This API must be called only when Availability of PFDRECThread is TRUE.
617 /// \~english @par Change of internal state
618 /// - The internal state is not changed.
619 /// \~english @par Conditions of processing failure
620 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
621 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
622 /// \~english @par Classification
624 /// \~english @par Type
625 /// Sync only(None communication)
626 /// \~english @par Detail
627 /// Write the vehicle signal parts of the mode control/vehicle signal trace output information to the memory.\n
629 /// - include MM_DREC_API.h
630 /// - Library libMM_DREC_API.so
631 /// \~english @see None
632 ////////////////////////////////////////////////////////////////////////////////////
633 extern RET_DREC_API DREC_WriteTrcVehicleSignal(T_DREC_TRCVEHICLESIGNAL* data,
636 /////////////////////////////////////////////////////////////////////////////////////
637 /// \ingroup DREC_WriteTrcKey
638 /// \~english @par Brief
639 /// Write the key trace output information to the memory (for 11byte key information).
640 /// \~english @param [in] data
641 /// \ref T_DREC_TRCKEY* - The pointer to key trace data (Key information for 11 bytes)
642 /// \~english @param [in] num
643 /// u_int32_t - Number of written frames (1 to 100)
644 /// \~english @retval RET_DREC_NORMAL Normal end
645 /// \~english @retval RET_DREC_ERROR Abnormal end
646 /// \~english @par Prerequisite
647 /// - This API must be called only when Availability of PFDRECThread is TRUE.
648 /// \~english @par Change of internal state
649 /// - The internal state is not changed.
650 /// \~english @par Conditions of processing failure
651 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
652 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
653 /// \~english @par Classification
655 /// \~english @par Type
656 /// Sync only(None communication)
657 /// \~english @par Detail
658 /// Write the key trace output information to the memory (for 11byte key information).\n
659 /// (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
661 /// - include MM_DREC_API.h
662 /// - Library libMM_DREC_API.so
665 ////////////////////////////////////////////////////////////////////////////////////
667 /////////////////////////////////////////////////////////////////////////////////////
668 /// \ingroup DREC_WriteTrcKey_Exp
669 /// \~english @par Brief
670 /// Write the key trace output information to the memory (for 23byte key information).
671 /// \~english @param [in] data
672 /// \ref T_DREC_TRCKEY_EXP* - The pointer to key trace data (Key information for 23 bytes)
673 /// \~english @param [in] num
674 /// u_int32_t - Number of written frames (1 to 50)
675 /// \~english @retval RET_DREC_NORMAL Normal end
676 /// \~english @retval RET_DREC_ERROR Abnormal end
677 /// \~english @par Prerequisite
678 /// - This API must be called only when Availability of PFDRECThread is TRUE.
679 /// \~english @par Change of internal state
680 /// - The internal state is not changed.
681 /// \~english @par Conditions of processing failure
682 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
683 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
684 /// \~english @par Classification
686 /// \~english @par Type
687 /// Sync only(None communication)
688 /// \~english @par Detail
689 /// Write the key trace output information to the memory (for 23byte key information).\n
690 /// (For data which key information is 11 bytes, the caller uses \ref DREC_WriteTrcKey .)\n
692 /// - include MM_DREC_API.h
693 /// - Library libMM_DREC_API.so
696 ////////////////////////////////////////////////////////////////////////////////////
697 extern RET_DREC_API DREC_WriteTrcKey_Exp(T_DREC_TRCKEY_EXP* data,
701 /////////////////////////////////////////////////////////////////////////////////////
702 /// \ingroup DREC_WriteTrcKey_Voice
703 /// \~english @par Brief
704 /// Write the voice trace output information to the memory(for voice operation).
705 /// \~english @param[in] data
706 /// T_DREC_TRCKEY_VOICE* - The pointer to key trace data()
707 /// \~english @param[in] num
708 /// u_int32_t - Number of written frames
710 /// Number of written frames (1 to 50)
711 /// \~english @retval RET_DREC_NORMAL Normal end
712 /// \~english @retval RET_DREC_ERROR Abnormal end
713 /// \~english @par Prerequisite
714 /// - This API must be called only when Availability of PFDRECThread is TRUE.
715 /// \~english @par Change of internal state
716 /// - The internal state is not changed.
717 /// \~english @par Conditions of processing failure
718 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
719 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
720 /// \~english @par Classification
722 /// \~english @par Type
723 /// Sync only(None communication)
724 /// \~english @par Detail
725 /// Write the voice trace output information to the memory(for voice operation).
727 /// - include MM_DREC_API.h
728 /// - Library libMM_DREC_API.so
731 /////////////////////////////////////////////////////////////////////////////////////
732 extern RET_DREC_API DREC_WriteTrcKey_Voice(T_DREC_TRCKEY_VOICE* data,
735 /////////////////////////////////////////////////////////////////////////////////////
736 /// \ingroup DREC_WriteTrcErr
737 /// \~english @par Brief
738 /// Write the error trace output information to the memory.
739 /// \~english @param [in] data
740 /// \ref T_DREC_TRCERR* - The pointer to error trace data
741 /// \~english @param [in] num
742 /// u_int32_t - Number of written frames (1 to 100)
743 /// \~english @retval RET_DREC_NORMAL Normal end
744 /// \~english @retval RET_DREC_ERROR Abnormal end
745 /// \~english @par Prerequisite
746 /// - This API must be called only when Availability of PFDRECThread is TRUE.
747 /// \~english @par Change of internal state
748 /// - The internal state is not changed.
749 /// \~english @par Conditions of processing failure
750 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
751 /// - Sending asynchronous data (McSend) failed. [RET_DIAG_API_DCCC_ERROR]
752 /// \~english @par Classification
754 /// \~english @par Type
755 /// Sync only(None communication)
756 /// \~english @par Detail
757 /// Write the error trace output information to the memory.
759 /// - include MM_DREC_API.h
760 /// - Library libMM_DREC_API.so
763 ////////////////////////////////////////////////////////////////////////////////////
764 extern RET_DREC_API DREC_WriteTrcErr(T_DREC_TRCERR* data, u_int32_t num);
767 /////////////////////////////////////////////////////////////////////////////////////
768 /// \ingroup DREC_WriteTrcCan
769 /// \~english @par Brief
770 /// Write CAN communication trace output information to the memory.
771 /// \~english @param [in] data
772 /// \ref T_DREC_TRCCAN* - Pointer to CAN communication trace data
773 /// \~english @param [in] num
774 /// u_int32_t - Number of written frames (1 to 100)
775 /// \~english @param [in] tick
776 /// u_int32_t - TICK value of the current SYS internal
777 /// \~english @retval RET_DREC_NORMAL Normal end
778 /// \~english @retval RET_DREC_ERROR Abnormal end
779 /// \~english @par Prerequisite
780 /// - This API must be called only when Availability of PFDRECThread is TRUE.
781 /// \~english @par Change of internal state
782 /// - The internal state is not changed.
783 /// \~english @par Conditions of processing failure
784 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
785 /// - Sending asynchronous data (McSend) failed. [RET_DIAG_API_DCCC_ERROR]
786 /// \~english @par Classification
788 /// \~english @par Type
789 /// Sync only(None communication)
790 /// \~english @par Detail
791 /// Write CAN communication trace output information to the memory.\n
793 /// - include MM_DREC_API.h
794 /// - Library libMM_DREC_API.so
795 /// \~english @see None
796 ////////////////////////////////////////////////////////////////////////////////////
797 extern RET_DREC_API DREC_WriteTrcCan(T_DREC_TRCCAN* data, u_int32_t num,
800 /////////////////////////////////////////////////////////////////////////////////////
801 /// \ingroup DREC_WriteTrcDeliveryPFWatchLog
802 /// \~english @par Brief
803 /// Write the monitoring trace log output information of the distributed application PF to the memory.
804 /// \~english @param [in] data
805 /// \ref T_DREC_TRCAWDATA* - The pointer to monitoring log data of the distribution application PF
806 /// \~english @retval RET_DREC_NORMAL Normal end
807 /// \~english @retval RET_DREC_ERROR Abnormal end
808 /// \~english @par Prerequisite
809 /// - This API must be called only when Availability of PFDRECThread is TRUE.
810 /// \~english @par Change of internal state
811 /// - The internal state is not changed.
812 /// \~english @par Conditions of processing failure
813 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
814 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
815 /// \~english @par Classification
817 /// \~english @par Type
818 /// Sync only(None communication)
819 /// \~english @par Detail
820 /// Write the monitoring trace log output information of the distributed application PF to the memory.\n
821 /// The library side adds the system time. The caller must call for each segment of data.\n
822 /// 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
823 /// This API adds the system time to the beginning with a single call and regarding data exceeding one frame, divides and registers it.\n
824 /// The caller must not call some headers and data record parts together. (Because system time can not be added for each section.)\n
826 /// - include MM_DREC_API.h
827 /// - Library libMM_DREC_API.so
830 ////////////////////////////////////////////////////////////////////////////////////
831 extern RET_DREC_API DREC_WriteTrcDeliveryPFWatchLog(T_DREC_TRCAWDATA* data);
834 /////////////////////////////////////////////////////////////////////////////////////
835 /// \ingroup DREC_WriteTrcDeliveryPFUseLog
836 /// \~english @par Brief
837 /// Write the usage trace log output information of the distributed application PF to the memory.
838 /// \~english @param [in] data
839 /// \ref T_DREC_TRCAWDATA* - The pointer to usage log data of the distribution application PF
840 /// \~english @retval RET_DREC_NORMAL Normal end
841 /// \~english @retval RET_DREC_ERROR Abnormal end
842 /// \~english @par Prerequisite
843 /// - This API must be called only when Availability of PFDRECThread is TRUE.
844 /// \~english @par Change of internal state
845 /// - The internal state is not changed.
846 /// \~english @par Conditions of processing failure
847 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
848 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
849 /// \~english @par Classification
851 /// \~english @par Type
852 /// Sync only(None communication)
853 /// \~english @par Detail
854 /// Write the usage trace log output information of the distributed application PF to the memory.\n
855 /// The library side adds the system time. The caller must call for each segment of data.\n
856 /// 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
857 /// This API adds the system time to the beginning with a single call and regarding data exceeding one frame, divides and registers it.\n
858 /// The caller must not call some headers and data record parts together. (Because system time can not be added for each section.)\n
860 /// - include MM_DREC_API.h
861 /// - Library libMM_DREC_API.so
864 ////////////////////////////////////////////////////////////////////////////////////
865 extern RET_DREC_API DREC_WriteTrcDeliveryPFUseLog(T_DREC_TRCAWDATA* data);
867 /////////////////////////////////////////////////////////////////////////////////////
868 /// \ingroup DREC_WriteTrcBT
869 /// \~english @par Brief
870 /// Write the trace output information of Bluetooth to the memory.
871 /// \~english @param[in] data
872 /// T_DREC_TRCBT* - The pointer to write data
873 /// \~english @param[in] num
874 /// u_int32_t - Number of written frames
875 /// \~english @retval RET_DREC_NORMAL Normal end
876 /// \~english @retval RET_DREC_ERROR Abnormal end
877 /// \~english @par Prerequisite
878 /// - This API must be called only when Availability of PFDRECThread is TRUE.
879 /// \~english @par Change of internal state
880 /// - The internal state is not changed.
881 /// \~english @par Conditions of processing failure
882 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
883 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
884 /// \~english @par Classification
886 /// \~english @par Type
887 /// Sync only(None communication)
888 /// \~english @par Detail
889 /// Write the trace output information of Bluetooth to the memory.
891 /// - include MM_DREC_API.h
892 /// - Library libMM_DREC_API.so
895 /////////////////////////////////////////////////////////////////////////////////////
896 extern RET_DREC_API DREC_WriteTrcBT(T_DREC_TRCBT* data, u_int32_t num);
898 /////////////////////////////////////////////////////////////////////////////////////
899 /// \ingroup DREC_WriteTrcBTInternal
900 /// \~english @par Brief
901 /// (Only in the specific Supplier) Write the trace output information of Bluetooth internal to the memory.
902 /// \~english @param [in] data
903 /// u_int8_t* - The pointer to write data
904 /// \~english @param [in] size
905 /// u_int32_t - Data size (1 to 1200bytes)
906 /// \~english @retval RET_DREC_NORMAL Normal end
907 /// \~english @retval RET_DREC_ERROR Abnormal end
908 /// \~english @par Prerequisite
909 /// - This API must be called only when Availability of PFDRECThread is TRUE.
910 /// \~english @par Change of internal state
911 /// - The internal state is not changed.
912 /// \~english @par Conditions of processing failure
913 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
914 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
915 /// \~english @par Classification
917 /// \~english @par Type
918 /// Sync only(None communication)
919 /// \~english @par Detail
920 /// This API is API for specific supplier.(TECHWG-443)\n
921 /// Write the trace output information of Bluetooth internal to the memory.\n
922 /// The log output of Diag Record is output in the following format.\n
923 /// This API registers system time from Byte1 to 3.\n
924 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
925 /// so that it does not overlap with that data.\n
926 /// This API registers specified data after Byte5.\n
927 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
928 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
929 /// It is filled with 0x00 if the data is less than 16 bytes.\n
930 /// This API adds the system time to the beginning with a single call.\n
931 /// Regarding data exceeding one frame, this API divides and registers it.\n
932 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
933 /// (The format is optional for the manufacturer.)
935 /// - include MM_DREC_API.h
936 /// - Library libMM_DREC_API.so
939 ////////////////////////////////////////////////////////////////////////////////////
940 extern RET_DREC_API DREC_WriteTrcBTInternal(u_int8_t* data,
943 /////////////////////////////////////////////////////////////////////////////////////
944 /// \ingroup DREC_WriteTrcWiFi
945 /// \~english @par Brief
946 /// Write the trace output information of WiFi to the memory.
947 /// \~english @param[in] data
948 /// T_DREC_TRCWIFI* - The pointer to write data
949 /// \~english @param[in] num
950 /// u_int32_t - Number of written frames
951 /// \~english @retval RET_DREC_NORMAL Normal end
952 /// \~english @retval RET_DREC_ERROR Abnormal end
953 /// \~english @par Prerequisite
954 /// - This API must be called only when Availability of PFDRECThread is TRUE.
955 /// \~english @par Change of internal state
956 /// - The internal state is not changed.
957 /// \~english @par Conditions of processing failure
958 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
959 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
960 /// \~english @par Classification
962 /// \~english @par Type
963 /// Sync only(None communication)
964 /// \~english @par Detail
965 /// Write the trace output information of WiFi to the memory.\n
966 /// \ref T_DREC_TRCWIFI Structure\n
967 /// Data frame format are different by setting value of WiFi setting state.\n
968 /// WiFi Setting state( \ref T_DREC_TRCWIFI.processing )\n
969 /// - Connection(0x00), Auto connection(0x01) and Disconnection(0x02) data format definition \ref notinitialdata used.\n
970 /// - Creation Mode(0x03) and Deletion Mode((0x04)) data format definition \ref modedata used.\n
971 /// - Initial is activation(0x10) format definition \ref initialdata used.
973 /// - include MM_DREC_API.h
974 /// - Library libMM_DREC_API.so
977 /////////////////////////////////////////////////////////////////////////////////////
978 extern RET_DREC_API DREC_WriteTrcWiFi(T_DREC_TRCWIFI* data, u_int32_t num);
981 /////////////////////////////////////////////////////////////////////////////////////
982 /// \ingroup DREC_WriteTrcWiFiInternal
983 /// \~english @par Brief
984 /// (Only in the specific Supplier) Write the trace output information of WiFi internal to the memory.
985 /// \~english @param [in] data
986 /// u_int8_t* - The pointer to write data
987 /// \~english @param [in] size
988 /// u_int32_t - Data size (1 to 1200bytes)
989 /// \~english @retval RET_DREC_NORMAL Normal end
990 /// \~english @retval RET_DREC_ERROR Abnormal end
991 /// \~english @par Prerequisite
992 /// - This API must be called only when Availability of PFDRECThread is TRUE.
993 /// \~english @par Change of internal state
994 /// - The internal state is not changed.
995 /// \~english @par Conditions of processing failure
996 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
997 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
998 /// \~english @par Classification
1000 /// \~english @par Type
1001 /// Sync only(None communication)
1002 /// \~english @par Detail
1003 /// This API is API for specific supplier.(TECHWG-443)\n
1004 /// Write the trace output information of WiFi internal to the memory.\n
1005 /// The log output of Diag Record is output in the following format.\n
1006 /// This API registers system time from Byte1 to 3.\n
1007 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1008 /// so that it does not overlap with that data.\n
1009 /// This API registers specified data after Byte5.\n
1010 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1011 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1012 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1013 /// This API adds the system time to the beginning with a single call.\n
1014 /// Regarding data exceeding one frame, this API divides and registers it.\n
1015 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1016 /// (The format is optional for the manufacturer.)
1018 /// - include MM_DREC_API.h
1019 /// - Library libMM_DREC_API.so
1022 ////////////////////////////////////////////////////////////////////////////////////
1023 extern RET_DREC_API DREC_WriteTrcWiFiInternal(u_int8_t* data, u_int32_t size);
1025 /////////////////////////////////////////////////////////////////////////////////////
1026 /// \ingroup DREC_WriteTrcCenter
1027 /// \~english @par Brief
1028 /// Write the trace output information of the communication with the center to the memory.
1029 /// \~english @param [in] data
1030 /// u_int8_t* - The pointer to write data
1031 /// \~english @param [in] size
1032 /// u_int32_t - Data size (1 to 1200bytes)
1033 /// \~english @retval RET_DREC_NORMAL Normal end
1034 /// \~english @retval RET_DREC_ERROR Abnormal end
1035 /// \~english @par Prerequisite
1036 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1037 /// \~english @par Change of internal state
1038 /// - The internal state is not changed.
1039 /// \~english @par Conditions of processing failure
1040 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1041 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1042 /// \~english @par Classification
1044 /// \~english @par Type
1045 /// Sync only(None communication)
1046 /// \~english @par Detail
1047 /// Write the trace output information of the communication with the center to the memory.\n
1048 /// The log output of Diag Record is output in the following format.\n
1049 /// This API registers system time from Byte1 to 3.\n
1050 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1051 /// so that it does not overlap with that data.\n
1052 /// This API registers specified data after Byte5.\n
1053 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1054 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1055 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1056 /// This API adds the system time to the beginning with a single call.\n
1057 /// Regarding data exceeding one frame, this API divides and registers it.\n
1058 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1059 /// (The format is optional for the manufacturer.)
1061 /// - include MM_DREC_API.h
1062 /// - Library libMM_DREC_API.so
1065 ////////////////////////////////////////////////////////////////////////////////////
1066 extern RET_DREC_API DREC_WriteTrcCenter(u_int8_t* data, u_int32_t size);
1068 /////////////////////////////////////////////////////////////////////////////////////
1069 /// \ingroup DREC_WriteTrcVersion
1070 /// \~english @par Brief
1071 /// Write the trace output information of the version information to the memory.
1072 /// \~english @param [in] data
1073 /// \ref T_DREC_TRCVERSION* - Pointer to the Trace data of the version information
1074 /// \~english @param [in] num
1075 /// u_int32_t - Number of written frames (1 to 25)
1076 /// \~english @retval RET_DREC_NORMAL Normal end
1077 /// \~english @retval RET_DREC_ERROR Abnormal end
1078 /// \~english @par Prerequisite
1079 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1080 /// \~english @par Change of internal state
1081 /// - The internal state is not changed.
1082 /// \~english @par Conditions of processing failure
1083 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1084 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1085 /// \~english @par Classification
1087 /// \~english @par Type
1088 /// Sync only(None communication)
1089 /// \~english @par Detail
1090 /// Write the trace output information of the version information to the memory.\n
1092 /// - include MM_DREC_API.h
1093 /// - Library libMM_DREC_API.so
1094 /// \~english @see None
1095 ////////////////////////////////////////////////////////////////////////////////////
1096 extern RET_DREC_API DREC_WriteTrcVersion(T_DREC_TRCVERSION* data,
1099 /////////////////////////////////////////////////////////////////////////////////////
1100 /// \ingroup DREC_WriteTrcDCM
1101 /// \~english @par Brief
1102 /// Write the trace output information of DCM communication to the memory.
1103 /// \~english @param [in] data
1104 /// u_int8_t* - The pointer to write data
1105 /// \~english @param [in] size
1106 /// u_int32_t - Data size (1 to 1200bytes)
1107 /// \~english @retval RET_DREC_NORMAL Normal end
1108 /// \~english @retval RET_DREC_ERROR Abnormal end
1109 /// \~english @par Prerequisite
1110 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1111 /// \~english @par Change of internal state
1112 /// - The internal state is not changed.
1113 /// \~english @par Conditions of processing failure
1114 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1115 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1116 /// \~english @par Classification
1118 /// \~english @par Type
1119 /// Sync only(None communication)
1120 /// \~english @par Detail
1121 /// Write the trace output information of DCM communication to the memory.\n
1122 /// The log output of Diag Record is output in the following format.\n
1123 /// This API registers system time from Byte1 to 3.\n
1124 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1125 /// so that it does not overlap with that data.\n
1126 /// This API registers specified data after Byte5.\n
1127 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1128 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1129 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1130 /// This API adds the system time to the beginning with a single call.\n
1131 /// Regarding data exceeding one frame, this API divides and registers it.\n
1132 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1133 /// (The format is optional for the manufacturer.)
1135 /// - include MM_DREC_API.h
1136 /// - Library libMM_DREC_API.so
1139 ////////////////////////////////////////////////////////////////////////////////////
1140 extern RET_DREC_API DREC_WriteTrcDCM(u_int8_t* data, u_int32_t size);
1142 /////////////////////////////////////////////////////////////////////////////////////
1143 /// \ingroup DREC_WriteTrcDSRC
1144 /// \~english @par Brief
1145 /// Write the trace output information of DSRC/ETC communication to the memory.
1146 /// \~english @param [in] data
1147 /// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data
1148 /// \~english @retval RET_DREC_NORMAL Normal end
1149 /// \~english @retval RET_DREC_ERROR Abnormal end
1150 /// \~english @par Prerequisite
1151 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1152 /// \~english @par Change of internal state
1153 /// - The internal state is not changed.
1154 /// \~english @par Conditions of processing failure
1155 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1156 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1157 /// \~english @par Classification
1159 /// \~english @par Type
1160 /// Sync only(None communication)
1161 /// \~english @par Detail
1162 /// Write the trace output information of DSRC/ETC communication to the memory.\n
1163 /// The log output of Diag Record is output in the following format.\n
1164 /// This API registers system time from Byte1 to 3.\n
1165 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1166 /// so that it does not overlap with that data.\n
1167 /// This API registers specified data after Byte5.\n
1168 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1169 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1170 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1171 /// This API adds the system time to the beginning with a single call.\n
1172 /// Regarding data exceeding one frame, this API divides and registers it.\n
1173 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1174 /// (The format is optional for the manufacturer.)
1176 /// - include MM_DREC_API.h
1177 /// - Library libMM_DREC_API.so
1180 ////////////////////////////////////////////////////////////////////////////////////
1181 extern RET_DREC_API DREC_WriteTrcDSRC(T_DREC_TRCAWDATA* data);
1183 /////////////////////////////////////////////////////////////////////////////////////
1184 /// \ingroup DREC_WriteTrc_CWORD17_
1185 /// \~english @par Brief
1186 /// Write the trace output information of _CWORD5_ communication to the memory.
1187 /// \~english @param [in] data
1188 /// \ref T_DREC_TRCCAN* - Pointer to the _CWORD5_ communication trace data
1189 /// \~english @param [in] num
1190 /// u_int32_t - Number of written frames (1 to 100)
1191 /// \~english @param [in] tick
1192 /// u_int32_t - TICK value of the current SYS internal
1193 /// \~english @retval RET_DREC_NORMAL Normal end
1194 /// \~english @retval RET_DREC_ERROR Abnormal end
1195 /// \~english @par Prerequisite
1196 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1197 /// \~english @par Change of internal state
1198 /// - The internal state is not changed.
1199 /// \~english @par Conditions of processing failure
1200 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1201 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1202 /// \~english @par Classification
1204 /// \~english @par Type
1205 /// Sync only(None communication)
1206 /// \~english @par Detail
1207 /// Write the trace output information of _CWORD5_ communication to the memory.\n
1209 /// - include MM_DREC_API.h
1210 /// - Library libMM_DREC_API.so
1213 ////////////////////////////////////////////////////////////////////////////////////
1214 extern RET_DREC_API DREC_WriteTrc_CWORD17_(T_DREC_TRCCAN* data, u_int32_t num,
1217 /////////////////////////////////////////////////////////////////////////////////////
1218 /// \ingroup DREC_WriteTrcWave
1219 /// \~english @par Brief
1220 /// Write the trace output information of the radio wave receipt to the memory.
1221 /// \~english @param [in] data
1222 /// \ref T_DREC_TRCWAVE* - The pointer to trace data of the electric wave reception
1223 /// \~english @param [in] num
1224 /// u_int32_t - Number of written frames (1 to 100)
1225 /// \~english @retval RET_DREC_NORMAL Normal end
1226 /// \~english @retval RET_DREC_ERROR Abnormal end
1227 /// \~english @par Prerequisite
1228 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1229 /// \~english @par Change of internal state
1230 /// - The internal state is not changed.
1231 /// \~english @par Conditions of processing failure
1232 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1233 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1234 /// \~english @par Classification
1236 /// \~english @par Type
1237 /// Sync only(None communication)
1238 /// \~english @par Detail
1239 /// Write the trace output information of the radio wave receipt to the memory.\n
1241 /// - include MM_DREC_API.h
1242 /// - Library libMM_DREC_API.so
1245 ////////////////////////////////////////////////////////////////////////////////////
1246 extern RET_DREC_API DREC_WriteTrcWave(T_DREC_TRCWAVE* data, u_int32_t num);
1248 /////////////////////////////////////////////////////////////////////////////////////
1249 /// \ingroup DREC_WriteTrcUSB
1250 /// \~english @par Brief
1251 /// Write the trace output information of USB I/F connected application internal to the memory.
1252 /// \~english @param [in] data
1253 /// u_int8_t* - The pointer to wrire data
1254 /// \~english @param [in] size
1255 /// u_int32_t - Data size (1 to 1200bytes)
1256 /// \~english @retval RET_DREC_NORMAL Normal end
1257 /// \~english @retval RET_DREC_ERROR Abnormal end
1258 /// \~english @par Prerequisite
1259 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1260 /// \~english @par Change of internal state
1261 /// - The internal state is not changed.
1262 /// \~english @par Conditions of processing failure
1263 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1264 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1265 /// \~english @par Classification
1267 /// \~english @par Type
1268 /// Sync only(None communication)
1269 /// \~english @par Detail
1270 /// Write the trace output information of USB I/F connected application internal to the memory.\n
1271 /// The log output of Diag Record is output in the following format.\n
1272 /// This API registers system time from Byte1 to 3.\n
1273 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1274 /// so that it does not overlap with that data.\n
1275 /// This API registers specified data after Byte5.\n
1276 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1277 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1278 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1279 /// This API adds the system time to the beginning with a single call.\n
1280 /// Regarding data exceeding one frame, this API divides and registers it.\n
1281 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1282 /// (The format is optional for the manufacturer.)
1284 /// - include MM_DREC_API.h
1285 /// - Library libMM_DREC_API.so
1288 ////////////////////////////////////////////////////////////////////////////////////
1289 extern RET_DREC_API DREC_WriteTrcUSB(u_int8_t* data, u_int32_t size);
1292 /** @}*/ // end of Diag_DrecWriteTrc
1293 /** @addtogroup Diag_DrecOperate
1298 /////////////////////////////////////////////////////////////////////////////////////
1299 /// \ingroup DREC_GetRecordSize
1300 /// \~english @par Brief
1301 /// Acquire the number of Diag record registration whose type is specified.
1302 /// \~english @param [in] type
1303 /// \ref E_PFDREC_CATEGORY_TYPE - Type to acquire the record size
1304 /// \~english @param [out] num
1305 /// u_int32_t * - Pointer to the number of registered records.
1306 /// \~english @retval RET_DREC_NORMAL Normal end
1307 /// \~english @retval RET_DREC_ERROR Abnormal end
1308 /// \~english @par Prerequisite
1309 /// - \ref PFDREC_OpenSession must be called prior to calling this API.
1310 /// \~english @par Change of internal state
1311 /// - The internal state is not changed.
1312 /// \~english @par Conditions of processing failure
1313 /// - The argument (num) is NULL. [RET_DREC_ERROR]
1314 /// - The argument (type) is not the defined value. [RET_DREC_ERROR]
1315 /// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR]
1316 /// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR]
1317 /// \~english @par Classification
1319 /// \~english @par Type
1320 /// Sync only(None communication)
1321 /// \~english @par Detail
1322 /// Acquire the number of record registration whose type is specified.\n
1323 /// In BaseSystem, returns the number of records of the specified type. \n
1324 /// The caller determines the total size with the number of records and each record length.\n
1326 /// - include MM_DREC_API.h
1327 /// - Library libMM_DREC_API.so
1329 ////////////////////////////////////////////////////////////////////////////////////
1330 extern RET_DREC_API DREC_GetRecordSize(E_PFDREC_CATEGORY_TYPE type,
1333 /////////////////////////////////////////////////////////////////////////////////////
1334 /// \ingroup DREC_GetRecordData
1335 /// \~english @par Brief
1336 /// Acquire the registered Diag record whose type is specified.
1337 /// \~english @param [in] type
1338 /// \ref E_PFDREC_CATEGORY_TYPE - Type to acquire the record size (\ref E_PFDREC_CATEGORY_TRC_PWR - ref E_PFDREC_CATEGORY_TRC_TRAF )
1339 /// \~english @param [in] num
1340 /// u_int32_t - The number of records to acquire (1 to 100)
1341 /// \~english @param [in] record_ptr
1342 /// u_int32_t - The start point of the record to acquire
1343 /// \~english @param [out] data
1344 /// u_int8_t *- Pointer to the storage area for the record to acquire
1345 /// \~english @param [out] out_num
1346 /// u_int32_t *- Pointer to the size of the stored record
1347 /// \~english @retval RET_DREC_NORMAL Normal end
1348 /// \~english @retval RET_DREC_ERROR Abnormal end
1349 /// \~english @par Prerequisite
1350 /// - \ref PFDREC_OpenSession must be called prior to calling this API.
1351 /// \~english @par Change of internal state
1352 /// - The internal state is not changed.
1353 /// \~english @par Conditions of processing failure
1354 /// - The argument (data) is NULL [RET_DREC_ERROR]
1355 /// - The argument (out_num) is NULL [RET_DREC_ERROR]
1356 /// - The argument (type) is not the defined value [RET_DREC_ERROR]
1357 /// - The argument (num) is 0 or greater than 100. [RET_DREC_ERROR]
1358 /// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR]
1359 /// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR]
1360 /// \~english @par Classification
1362 /// \~english @par Type
1363 /// Sync only(None communication)
1364 /// \~english @par Detail
1365 /// Acquire the record whose type is specified. \n
1366 /// 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
1367 /// The caller is supposed to acquire data in order from the beginning in several batches.\n
1368 /// When the number of record requested to acquire is more than that of registered records, acquire the registered number only and returns it. \n
1370 /// - include MM_DREC_API.h
1371 /// - Library libMM_DREC_API.so
1372 /// \~english @see None
1373 ////////////////////////////////////////////////////////////////////////////////////
1374 extern RET_DREC_API DREC_GetRecordData(E_PFDREC_CATEGORY_TYPE type,
1375 u_int32_t num, u_int32_t record_ptr,
1376 u_int8_t *data, u_int32_t *out_num);
1378 /////////////////////////////////////////////////////////////////////////////////////
1379 /// \ingroup DREC_GetRecordState
1380 /// \~english @par Brief
1381 /// Acquire the start/stop state of the record function.
1382 /// \~english @param [out] state
1383 /// \ref E_DREC_REC* - Pointer to the start/stop state of the record function.
1384 /// \~english @retval RET_DREC_NORMAL Normal end
1385 /// \~english @retval RET_DREC_ERROR Abnormal end
1386 /// \~english @par Prerequisite
1387 /// - \ref PFDREC_OpenSession must be called prior to calling this API.
1388 /// \~english @par Change of internal state
1389 /// - The internal state is not changed.
1390 /// \~english @par Conditions of processing failure
1391 /// - The argument (state) is NULL [RET_DREC_ERROR]
1392 /// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR]
1393 /// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR]
1394 /// \~english @par Classification
1396 /// \~english @par Type
1397 /// Sync only(None communication)
1398 /// \~english @par Detail
1399 /// Acquire the start/stop state of the record function.
1401 /// - include MM_DREC_API.h
1402 /// - Library libMM_DREC_API.so
1404 ////////////////////////////////////////////////////////////////////////////////////
1405 extern RET_DREC_API DREC_GetRecordState(E_DREC_REC* state);
1406 /** @}*/ // end of Diag_DrecOperate
1407 /** @addtogroup Diag_DrecOperate
1411 /////////////////////////////////////////////////////////////////////////////////////
1412 /// \ingroup DREC_SetSysemTimeDifference
1413 /// \~english @par Brief
1414 /// Set the system time difference.
1415 /// \~english @param [in] data
1416 /// u_int32_t - System time difference
1417 /// \~english @retval RET_DREC_NORMAL Normal end
1418 /// \~english @par Prerequisite
1420 /// \~english @par Change of internal state
1421 /// - The internal state is not changed.
1422 /// \~english @par Conditions of processing failure
1424 /// \~english @par Classification
1426 /// \~english @par Type
1427 /// Sync only(None communication)
1428 /// \~english @par Detail
1429 /// Store the system time difference in the shared memory.\n
1430 /// Reflect the stored value in the addition process of the system time.\n
1432 /// - include MM_DREC_API.h
1433 /// - Library libMM_DREC_API.so
1434 /// \~english @see None
1435 ////////////////////////////////////////////////////////////////////////////////////
1436 extern RET_DREC_API DREC_SetSysemTimeDifference(u_int32_t data);
1437 /** @}*/ // end of Diag_DrecOperate
1438 /** @addtogroup Diag_DrecWriteTrc
1442 /////////////////////////////////////////////////////////////////////////////////////
1443 /// \ingroup DREC_WriteTrcGPS
1444 /// \~english @par Brief
1445 /// Set GPS time information to each trace data.
1446 /// \~english @param [in] data
1447 /// \ref T_DREC_TRCGPS* - Pointer to the GPS information
1448 /// \~english @retval RET_DREC_NORMAL Normal end
1449 /// \~english @par Prerequisite
1450 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1451 /// \~english @par Change of internal state
1452 /// - The internal state is not changed.
1453 /// \~english @par Conditions of processing failure
1454 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1455 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1456 /// \~english @par Classification
1458 /// \~english @par Type
1459 /// Sync only(None communication)
1460 /// \~english @par Detail
1461 /// Set the GPS time information \n
1462 /// The target is all trace outputs belonging to the unit in which this API is called. \n
1463 /// 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
1464 /// After Function ON, when a valid GPS time can be acquired after ACCON, the Diag service must register it.\n
1465 /// During Function ON, when a valid GPS time cannot be acquired, retry must be performed until the acquired time is registered.\n
1467 /// - include MM_DREC_API.h
1468 /// - Library libMM_DREC_API.so
1469 /// \~english @see None
1470 ////////////////////////////////////////////////////////////////////////////////////
1471 extern RET_DREC_API DREC_WriteTrcGPS(T_DREC_TRCGPS* data);
1473 /////////////////////////////////////////////////////////////////////////////////////
1474 /// \ingroup DREC_WriteTrcUSBETC
1475 /// \~english @par Brief
1476 /// Write USB log information of DSRC/ETC communication trace output into the memory.
1477 /// \~english @param [in] data
1478 /// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data
1479 /// \~english @retval RET_DREC_NORMAL Normal end
1480 /// \~english @retval RET_DREC_ERROR Abnormal end
1481 /// \~english @par Prerequisite
1482 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1483 /// \~english @par Change of internal state
1484 /// - The internal state is not changed.
1485 /// \~english @par Conditions of processing failure
1486 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1487 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1488 /// \~english @par Classification
1490 /// \~english @par Type
1491 /// Sync only(None communication)
1492 /// \~english @par Detail
1493 /// Write USB log information of DSRC/ETC communication trace output into the memory.\n
1494 /// The log output of Diag Record is output in the following format.\n
1495 /// This API registers system time from Byte1 to 3.\n
1496 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1497 /// so that it does not overlap with that data.\n
1498 /// This API registers specified data after Byte5.\n
1499 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1500 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1501 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1502 /// This API adds the system time to the beginning with a single call.\n
1503 /// Regarding data exceeding one frame, this API divides and registers it.\n
1504 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1505 /// (The format is optional for the manufacturer.)
1507 /// - include MM_DREC_API.h
1508 /// - Library libMM_DREC_API.so
1511 ////////////////////////////////////////////////////////////////////////////////////
1512 extern RET_DREC_API DREC_WriteTrcUSBETC(T_DREC_TRCAWDATA* data);
1514 /////////////////////////////////////////////////////////////////////////////////////
1515 /// \ingroup DREC_WriteTrcUplink
1516 /// \~english @par Brief
1517 /// Write the uplink log information of DSRC/ETC communication trace output into the memory.
1518 /// \~english @param [in] data
1519 /// \ref T_DREC_TRCAWDATA* - The pointer to DSRC/ETC communication trace data
1520 /// \~english @retval RET_DREC_NORMAL Normal end
1521 /// \~english @retval RET_DREC_ERROR Abnormal end
1522 /// \~english @par Prerequisite
1523 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1524 /// \~english @par Change of internal state
1525 /// - The internal state is not changed.
1526 /// \~english @par Conditions of processing failure
1527 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1528 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1529 /// \~english @par Classification
1531 /// \~english @par Type
1532 /// Sync only(None communication)
1533 /// \~english @par Detail
1534 /// Write the uplink log information of DSRC/ETC communication trace output into the memory.\n
1535 /// The log output of Diag Record is output in the following format.\n
1536 /// This API registers system time from Byte1 to 3.\n
1537 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1538 /// so that it does not overlap with that data.\n
1539 /// This API registers specified data after Byte5.\n
1540 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1541 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1542 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1543 /// This API adds the system time to the beginning with a single call.\n
1544 /// Regarding data exceeding one frame, this API divides and registers it.\n
1545 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1546 /// (The format is optional for the manufacturer.)
1548 /// - include MM_DREC_API.h
1549 /// - Library libMM_DREC_API.so
1552 ////////////////////////////////////////////////////////////////////////////////////
1553 extern RET_DREC_API DREC_WriteTrcUplink(T_DREC_TRCAWDATA* data);
1555 /////////////////////////////////////////////////////////////////////////////////////
1556 /// \ingroup DREC_WriteTrcETCWatch
1557 /// \~english @par Brief
1558 /// Write trace output of the ETC watch to the memory.
1559 /// \~english @param[in] data
1560 /// T_DREC_TRCETCWATCH* - Pointer to the trace data of the ETC watch.
1561 /// \~english @param[in] num
1562 /// u_int32_t - Number of written frames
1563 /// \~english @retval RET_DREC_NORMAL Normal end
1564 /// \~english @retval RET_DREC_ERROR Abnormal end
1565 /// \~english @par Prerequisite
1566 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1567 /// \~english @par Change of internal state
1568 /// - The internal state is not changed.
1569 /// \~english @par Conditions of processing failure
1570 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1571 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1572 /// \~english @par Classification
1574 /// \~english @par Type
1575 /// Sync only(None communication)
1576 /// \~english @par Detail
1577 /// Write the monitoring trace output information of the ETC to the memory.\n
1578 /// \ref T_DREC_TRCETCWATCH structure\n
1579 /// Data format is different by device type / frame type( \ref T_DREC_TRCETCWATCH.frameType )\n
1580 /// 0:ETC status notification log \n
1581 /// 1:ETC latest charge notification log \n
1582 /// 2:ETC operation response log \n
1583 /// Use the \ref T_DREC_TRCETCWATCH.command format destination.\n
1584 /// 3:ETC communication log \n
1585 /// Use the \ref T_DREC_TRCETCWATCH.com_command format destination.\n
1586 /// 4:Diag Clear event log \n
1587 /// 5:Diagnosis detection event log \n
1588 /// 6:Diagnosis recovery event log \n
1589 /// Use the \ref T_DREC_TRCETCWATCH.diag format destination.
1591 /// - include MM_DREC_API.h
1592 /// - Library libMM_DREC_API.so
1595 /////////////////////////////////////////////////////////////////////////////////////
1596 extern RET_DREC_API DREC_WriteTrcETCWatch(T_DREC_TRCETCWATCH* data,
1599 /////////////////////////////////////////////////////////////////////////////////////
1600 /// \ingroup DREC_WriteTrcRoB
1601 /// \~english @par Brief
1602 /// Write the trace output information of RoB log to the memory.
1603 /// \~english @param[in] data
1604 /// T_DREC_TRCROB* - The pointer to write data
1605 /// \~english @param[in] num
1606 /// u_int32_t - Number of written frames
1607 /// \~english @retval RET_DREC_NORMAL Normal end
1608 /// \~english @retval RET_DREC_ERROR Abnormal end
1609 /// \~english @par Prerequisite
1610 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1611 /// \~english @par Change of internal state
1612 /// - The internal state is not changed.
1613 /// \~english @par Conditions of processing failure
1614 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1615 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1616 /// \~english @par Classification
1618 /// \~english @par Type
1619 /// Sync only(None communication)
1620 /// \~english @par Detail
1621 /// Write the trace output information of RoB log to the memory.
1623 /// - include MM_DREC_API.h
1624 /// - Library libMM_DREC_API.so
1627 /////////////////////////////////////////////////////////////////////////////////////
1628 extern RET_DREC_API DREC_WriteTrcRoB(T_DREC_TRCROB* data,
1631 /////////////////////////////////////////////////////////////////////////////////////
1632 /// \ingroup DREC_WriteTrcEvaluation
1633 /// \~english @par Brief
1634 /// Write the evaluation trace output information to the memory.
1635 /// \~english @param[in] data
1636 /// u_int8_t* - The pointer to write data
1637 /// \~english @param[in] size
1638 /// u_int32_t - Data size (1 to 1200bytes)
1639 /// \~english @retval RET_DREC_NORMAL Normal end
1640 /// \~english @retval RET_DREC_ERROR Abnormal end
1641 /// \~english @par Prerequisite
1642 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1643 /// \~english @par Change of internal state
1644 /// - The internal state is not changed.
1645 /// \~english @par Conditions of processing failure
1646 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1647 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1648 /// \~english @par Classification
1650 /// \~english @par Type
1651 /// Sync only(None communication)
1652 /// \~english @par Detail
1653 /// Write the evaluation trace output information to the memory.\n
1654 /// The log output of Diag Record is output in the following format.\n
1655 /// This API registers system time from Byte1 to 3.\n
1656 /// As there is data reserved for each format, this API registers the value defined in the wrapper layer at Byte4\n
1657 /// so that it does not overlap with that data.\n
1658 /// This API registers specified data after Byte5.\n
1659 /// Regarding data exceeding 12 bytes at a time, this API divides records and registers it.\n
1660 /// Regarding data after Byte13, this API registers 0x00 from Byte1 to 4 and registers the specified data after Byte5.\n
1661 /// It is filled with 0x00 if the data is less than 16 bytes.\n
1662 /// This API adds the system time to the beginning with a single call.\n
1663 /// Regarding data exceeding one frame, this API divides and registers it.\n
1664 /// The caller must not call some data by connecting them. (Because system time can not be added for each section.)\n
1665 /// (The format is optional for the manufacturer.)
1667 /// - include MM_DREC_API.h
1668 /// - Library libMM_DREC_API.so
1671 /////////////////////////////////////////////////////////////////////////////////////
1672 extern RET_DREC_API DREC_WriteTrcEvaluation(u_int8_t* data,
1675 /////////////////////////////////////////////////////////////////////////////////////
1676 /// \ingroup DREC_DeleteTrcDeliveryPFUseLog
1677 /// \~english @par Brief
1678 /// Delete the trace of distribution application PF usage log.
1679 /// \~english @param None
1680 /// \~english @retval RET_DREC_NORMAL Normal end
1681 /// \~english @retval RET_DREC_ERROR Abnormal end
1682 /// \~english @par Prerequisite
1683 /// - \ref PFDREC_OpenSession must be called prior to calling this API.
1684 /// \~english @par Change of internal state
1685 /// - The internal state is not changed.
1686 /// \~english @par Conditions of processing failure
1687 /// - The argument (func) is NULL [RET_DREC_ERROR]
1688 /// - The caller is not calling \ref PFDREC_OpenSession in advance. [RET_DREC_ERROR]
1689 /// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR]
1690 /// \~english @par Classification
1692 /// \~english @par Type
1693 /// Sync only(None communication)
1694 /// \~english @par Detail
1695 /// Delete the trace of distribution application PF usage log.
1697 /// - include MM_DREC_API.h
1698 /// - Library libMM_DREC_API.so
1700 ////////////////////////////////////////////////////////////////////////////////////
1701 extern RET_DREC_API DREC_DeleteTrcDeliveryPFUseLog(void);
1703 /////////////////////////////////////////////////////////////////////////////////////
1704 /// \ingroup DREC_DeleteTrcDeliveryPFUseLog_inSession
1705 /// \~english @par Brief
1706 /// Delete the trace of distribution application PF usage log.
1707 /// - Execute "Session start(\ref PFDREC_OpenSession)" before the deletion.
1708 /// - Execute "Session termination(\ ref PFDREC_CloseSession)" after the deletion.
1709 /// \~english @param None
1710 /// \~english @retval RET_DREC_NORMAL Normal end
1711 /// \~english @retval RET_DREC_ERROR Abnormal end
1712 /// \~english @par Prerequisite
1713 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1714 /// \~english @par Change of internal state
1715 /// - The internal state is not changed.
1716 /// \~english @par Conditions of processing failure
1717 /// - \ref PFDREC_OpenSession failed. [RET_DREC_ERROR]
1718 /// - \ref PFDREC_CloseSession failed. [RET_DREC_ERROR]
1719 /// - Message synchronous communication (FrameworkunifiedInvokeSync) failed. [RET_DREC_ERROR]
1720 /// \~english @par Classification
1722 /// \~english @par Type
1723 /// Sync only(None communication)
1724 /// \~english @par Detail
1725 /// Execute "Session starti(\ref PFDREC_OpenSession)" before the deletion.\n
1726 /// Delete the trace of distribution application PF usage log \n
1727 /// Execute "Session termination(\ref PFDREC_CloseSession)" after the deletion. \n
1729 /// - include MM_DREC_API.h
1730 /// - Library libMM_DREC_API.so
1733 ////////////////////////////////////////////////////////////////////////////////////
1734 extern RET_DREC_API DREC_DeleteTrcDeliveryPFUseLog_inSession(HANDLE hThread);
1736 /////////////////////////////////////////////////////////////////////////////////////
1737 /// \ingroup DREC_WriteTrcOptBeaconDownLink
1738 /// \~english @par Brief
1739 /// Write Optical beacon down-link information trace to the memory.
1740 /// \~english @param[in] data
1741 /// T_DREC_TRCOPTBEACON_DOWN_LINK* - Pointer to the trace data of the Optical beacon down-link information.
1742 /// \~english @param[in] num
1743 /// u_int32_t - Number of written frames
1744 /// \~english @retval RET_DREC_NORMAL Normal end
1745 /// \~english @retval RET_DREC_ERROR Abnormal end
1746 /// \~english @par Prerequisite
1747 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1748 /// \~english @par Change of internal state
1749 /// - The internal state is not changed.
1750 /// \~english @par Conditions of processing failure
1751 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1752 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1753 /// \~english @par Classification
1755 /// \~english @par Type
1756 /// Sync only(None communication)
1757 /// \~english @par Detail
1758 /// Write the Optical beacon down-link information trace to the memory.\n
1759 /// \ref T_DREC_TRCOPTBEACON_DOWN_LINK structure\n
1760 /// Data format is different by rcv type( \ref T_DREC_TRCOPTBEACON_DOWN_LINK.rcvkind )\n
1761 /// 01h : Route signal information \n
1762 /// Use the \ref T_DREC_TRCOPTBEACON_DOWN_LINK.downlinkinfo format destination.\n
1763 /// 02h : Lack route signal information\n
1764 /// 03h : No route signal information \n
1765 /// Use the \ref T_DREC_TRCOPTBEACON_DOWN_LINK.rcvgpspositioningdata format destination.\n
1767 /// - include MM_DREC_API.h
1768 /// - Library libMM_DREC_API.so
1771 /////////////////////////////////////////////////////////////////////////////////////
1772 extern RET_DREC_API DREC_WriteTrcOptBeaconDownLink(
1773 T_DREC_TRCOPTBEACON_DOWN_LINK* data, u_int32_t num);
1775 /////////////////////////////////////////////////////////////////////////////////////
1776 /// \ingroup DREC_WriteTrcOptBeaconUpLink
1777 /// \~english @par Brief
1778 /// Write Optical beacon up-link information trace to the memory.
1779 /// \~english @param[in] data
1780 /// T_DREC_TRCOPTBEACON_UP_LINK* - Pointer to the trace data of the Optical beacon up-link information.
1781 /// \~english @param[in] num
1782 /// u_int32_t - Number of written frames
1783 /// \~english @retval RET_DREC_NORMAL Normal end
1784 /// \~english @retval RET_DREC_ERROR Abnormal end
1785 /// \~english @par Prerequisite
1786 /// - This API must be called only when Availability of PFDRECThread is TRUE.
1787 /// \~english @par Change of internal state
1788 /// - The internal state is not changed.
1789 /// \~english @par Conditions of processing failure
1790 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1791 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1792 /// \~english @par Classification
1794 /// \~english @par Type
1795 /// Sync only(None communication)
1796 /// \~english @par Detail
1797 /// Write the Optical beacon up-link information trace to the memory.
1799 /// - include MM_DREC_API.h
1800 /// - Library libMM_DREC_API.so
1803 /////////////////////////////////////////////////////////////////////////////////////
1804 extern RET_DREC_API DREC_WriteTrcOptBeaconUpLink(T_DREC_TRCOPTBEACON_UP_LINK* data,
1807 /** @}*/ // end of Diag_DrecWriteTrc
1808 /** @addtogroup Diag_Drec_MakerTrace
1812 /////////////////////////////////////////////////////////////////////////////////////
1813 /// \ingroup DREC_MakerTrace_DeliveryEntry
1814 /// \~english @par Brief
1815 /// Register the delivery destination application for Maker peculiarity trace
1816 /// \~english @param[in] hApp
1817 /// HANDLE - The handle for the delivery source application
1818 /// \~english @param[in] notifyName
1819 /// PCSTR - The thread name of the delivery source
1820 /// \~english @retval RET_DREC_NORMAL Normal end
1821 /// \~english @retval RET_DREC_ERROR Abnormal end
1822 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
1823 /// \~english @par Prerequisite
1824 /// - This API must be called only when Availability of Diag Service is TRUE.
1825 /// \~english @par Change of internal state
1826 /// - The internal state is not changed.
1827 /// \~english @par Conditions of processing failure
1828 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
1829 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1830 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1831 /// \~english @par Classification
1833 /// \~english @par Type
1834 /// Fire and Forget only
1835 /// \~english @par Detail
1836 /// Registers the handle and thread name for the delivery destination application in the delivery registration table.\n
1837 /// The client must call this API on a thread that needs to receive that are related to the Maker peculiarity trace in advance.
1839 /// - include MM_DREC_API.h
1840 /// - Library libMM_DREC_API.so
1843 /////////////////////////////////////////////////////////////////////////////////////
1844 extern RET_DREC_API DREC_MakerTrace_DeliveryEntry(HANDLE hApp,
1847 /////////////////////////////////////////////////////////////////////////////////////
1848 /// \ingroup DREC_MakerTrace_SizeRequest
1849 /// \~english @par Brief
1850 /// Request to get record size of Maker peculiarity trace.
1851 /// \~english @param[in] hApp
1852 /// HANDLE - The handle for the delivery source application
1853 /// \~english @param[in] notifyName
1854 /// PCSTR - The thread name of the delivery source
1855 /// \~english @retval RET_DREC_NORMAL Normal end
1856 /// \~english @retval RET_DREC_ERROR Abnormal end
1857 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
1858 /// \~english @par Prerequisite
1860 /// \~english @par Change of internal state
1861 /// - The internal state is not changed.
1862 /// \~english @par Conditions of processing failure
1863 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
1864 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1865 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1866 /// \~english @par Classification
1868 /// \~english @par Type
1869 /// Fire and Forget only
1870 /// \~english @par Detail
1871 /// Request to get record size of Maker peculiarity trace to the registered application for delivery.\n
1872 /// Message ID sended by DiagService is as follows\n
1873 /// MSGID_DREC_MAKERTRACE_SIZEREQUEST
1875 /// - include MM_DREC_API.h
1876 /// - Library libMM_DREC_API.so
1879 /////////////////////////////////////////////////////////////////////////////////////
1880 extern RET_DREC_API DREC_MakerTrace_SizeRequest(HANDLE hApp,
1883 /////////////////////////////////////////////////////////////////////////////////////
1884 /// \ingroup DREC_MakerTrace_SizeResponce
1885 /// \~english @par Brief
1886 /// Send record size of Maker peculiarity trace to DiagService.
1887 /// \~english @param[in] hApp
1888 /// HANDLE - The handle for the delivery source application
1889 /// \~english @param[in] notifyName
1890 /// PCSTR - The thread name of the delivery source
1891 /// \~english @param[in] size
1892 /// u_int32_t - Data size (Unit: Byte)
1893 /// \~english @retval RET_DREC_NORMAL Normal end
1894 /// \~english @retval RET_DREC_ERROR Abnormal end
1895 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
1896 /// \~english @par Prerequisite
1897 /// - This API must be called only when Availability of Diag Service is TRUE.
1898 /// \~english @par Change of internal state
1899 /// - The internal state is not changed.
1900 /// \~english @par Conditions of processing failure
1901 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
1902 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1903 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1904 /// \~english @par Classification
1906 /// \~english @par Type
1907 /// Fire and Forget only
1908 /// \~english @par Detail
1909 /// Send record size of Maker peculiarity trace to DiagService.
1911 /// - include MM_DREC_API.h
1912 /// - Library libMM_DREC_API.so
1915 /////////////////////////////////////////////////////////////////////////////////////
1916 extern RET_DREC_API DREC_MakerTrace_SizeResponce(HANDLE hApp,
1920 /////////////////////////////////////////////////////////////////////////////////////
1921 /// \ingroup DREC_MakerTrace_OutputRequest
1922 /// \~english @par Brief
1923 /// Request to output of Maker peculiarity trace.
1924 /// \~english @param[in] hApp
1925 /// HANDLE - The handle for the delivery source application
1926 /// \~english @param[in] notifyName
1927 /// PCSTR - The thread name of the delivery source
1928 /// \~english @param[in] output
1929 /// PCSTR - Output destination
1930 /// \~english @param[in] state
1931 /// DREC_OUTPUT_STATE - Status (output start or output stop)
1932 /// \~english @retval RET_DREC_NORMAL Normal end
1933 /// \~english @retval RET_DREC_ERROR Abnormal end
1934 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
1935 /// \~english @par Prerequisite
1937 /// \~english @par Change of internal state
1938 /// - The internal state is not changed.
1939 /// \~english @par Conditions of processing failure
1940 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
1941 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1942 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1943 /// \~english @par Classification
1945 /// \~english @par Type
1946 /// Fire and Forget only
1947 /// \~english @par Detail
1948 /// Request to output of Maker peculiarity trace to the registered application for delivery.\n
1949 /// Message ID sended by DiagService is as follows\n
1950 /// MSGID_DREC_MAKERTRACE_OUTPUTREQUEST
1952 /// - include MM_DREC_API.h
1953 /// - Library libMM_DREC_API.so
1956 /////////////////////////////////////////////////////////////////////////////////////
1957 extern RET_DREC_API DREC_MakerTrace_OutputRequest(HANDLE hApp,
1960 DREC_OUTPUT_STATE state);
1962 /////////////////////////////////////////////////////////////////////////////////////
1963 /// \ingroup DREC_MakerTrace_OutputResponce
1964 /// \~english @par Brief
1965 /// Send output status of Maker peculiarity trace to DiagService.
1966 /// \~english @param[in] hApp
1967 /// HANDLE - The handle for the delivery source application
1968 /// \~english @param[in] notifyName
1969 /// PCSTR - The thread name of the delivery source
1970 /// \~english @param[in] progress
1971 /// u_int8_t - Progress rate (0 to 100)
1972 /// \~english @param[in] state
1973 /// DREC_OUTPUT_RESULT - Status (OK or NG)
1974 /// \~english @retval RET_DREC_NORMAL Normal end
1975 /// \~english @retval RET_DREC_ERROR Abnormal end
1976 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
1977 /// \~english @par Prerequisite
1978 /// - This API must be called only when Availability of Diag Service is TRUE.
1979 /// \~english @par Change of internal state
1980 /// - The internal state is not changed.
1981 /// \~english @par Conditions of processing failure
1982 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
1983 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
1984 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
1985 /// \~english @par Classification
1987 /// \~english @par Type
1988 /// Fire and Forget only
1989 /// \~english @par Detail
1990 /// Send output status of Maker peculiarity trace to DiagService.
1992 /// - include MM_DREC_API.h
1993 /// - Library libMM_DREC_API.so
1996 /////////////////////////////////////////////////////////////////////////////////////
1997 extern RET_DREC_API DREC_MakerTrace_OutputResponce(HANDLE hApp,
2000 DREC_OUTPUT_RESULT state);
2002 /////////////////////////////////////////////////////////////////////////////////////
2003 /// \ingroup DREC_MakerTrace_DeleteRequest
2004 /// \~english @par Brief
2005 /// Request to delete of Maker peculiarity trace.
2006 /// \~english @param[in] hApp
2007 /// HANDLE - The handle for the delivery source application
2008 /// \~english @param[in] notifyName
2009 /// PCSTR - The thread name of the delivery source
2010 /// \~english @retval RET_DREC_NORMAL Normal end
2011 /// \~english @retval RET_DREC_ERROR Abnormal end
2012 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
2013 /// \~english @par Prerequisite
2015 /// \~english @par Change of internal state
2016 /// - The internal state is not changed.
2017 /// \~english @par Conditions of processing failure
2018 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
2019 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
2020 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
2021 /// \~english @par Classification
2023 /// \~english @par Type
2024 /// Fire and Forget only
2025 /// \~english @par Detail
2026 /// Request to delete of Maker peculiarity trace to the registered application for delivery.\n
2027 /// Message ID sended by DiagService is as follows\n
2028 /// MSGID_DREC_MAKERTRACE_DELETEREQUEST
2030 /// - include MM_DREC_API.h
2031 /// - Library libMM_DREC_API.so
2034 /////////////////////////////////////////////////////////////////////////////////////
2035 extern RET_DREC_API DREC_MakerTrace_DeleteRequest(HANDLE hApp,
2038 /////////////////////////////////////////////////////////////////////////////////////
2039 /// \ingroup DREC_MakerTrace_DeleteResponce
2040 /// \~english @par Brief
2041 /// Send result of delete Maker peculiarity trace to DiagService.
2042 /// \~english @param[in] hApp
2043 /// HANDLE - The handle for the delivery source application
2044 /// \~english @param[in] notifyName
2045 /// PCSTR - The thread name of the delivery source
2046 /// \~english @param[in] state
2047 /// DREC_OUTPUT_RESULT - Status (OK or NG)
2048 /// \~english @retval RET_DREC_NORMAL Normal end
2049 /// \~english @retval RET_DREC_ERROR Abnormal end
2050 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
2051 /// \~english @par Prerequisite
2052 /// - This API must be called only when Availability of Diag Service is TRUE.
2053 /// \~english @par Change of internal state
2054 /// - The internal state is not changed.
2055 /// \~english @par Conditions of processing failure
2056 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
2057 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
2058 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
2059 /// \~english @par Classification
2061 /// \~english @par Type
2062 /// Fire and Forget only
2063 /// \~english @par Detail
2064 /// Send result of delete Maker peculiarity trace to DiagService.
2066 /// - include MM_DREC_API.h
2067 /// - Library libMM_DREC_API.so
2070 /////////////////////////////////////////////////////////////////////////////////////
2071 extern RET_DREC_API DREC_MakerTrace_DeleteResponce(HANDLE hApp,
2073 DREC_OUTPUT_RESULT state);
2075 /////////////////////////////////////////////////////////////////////////////////////
2076 /// \ingroup DREC_MakerTrace_FuncStatusRequest
2077 /// \~english @par Brief
2078 /// Request to change function status of Maker peculiarity trace.
2079 /// \~english @param[in] hApp
2080 /// HANDLE - The handle for the delivery source application
2081 /// \~english @param[in] notifyName
2082 /// PCSTR - The thread name of the delivery source
2083 /// \~english @param[in] func
2084 /// DREC_OUTPUT_FUNC - Function status (function ON or ffunction OFF)
2085 /// \~english @retval RET_DREC_NORMAL Normal end
2086 /// \~english @retval RET_DREC_ERROR Abnormal end
2087 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
2088 /// \~english @par Prerequisite
2090 /// \~english @par Change of internal state
2091 /// - The internal state is not changed.
2092 /// \~english @par Conditions of processing failure
2093 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
2094 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
2095 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
2096 /// \~english @par Classification
2098 /// \~english @par Type
2099 /// Fire and Forget only
2100 /// \~english @par Detail
2101 /// Request to change function status of Maker peculiarity trace to the registered application for delivery.\n
2102 /// Message ID sended by DiagService is as follows\n
2103 /// MSGID_DREC_MAKERTRACE_FUNCSTATUSREQUEST
2105 /// - include MM_DREC_API.h
2106 /// - Library libMM_DREC_API.so
2109 /////////////////////////////////////////////////////////////////////////////////////
2110 extern RET_DREC_API DREC_MakerTrace_FuncStatusRequest(HANDLE hApp,
2112 DREC_OUTPUT_FUNC func);
2114 /////////////////////////////////////////////////////////////////////////////////////
2115 /// \ingroup DREC_MakerTrace_FuncStatusResponce
2116 /// \~english @par Brief
2117 /// Send result of change function status of Maker peculiarity trace to DiagService.
2118 /// \~english @param[in] hApp
2119 /// HANDLE - The handle for the delivery source application
2120 /// \~english @param[in] notifyName
2121 /// PCSTR - The thread name of the delivery source
2122 /// \~english @param[in] state
2123 /// DREC_OUTPUT_RESULT - Status (OK or NG)
2124 /// \~english @retval RET_DREC_NORMAL Normal end
2125 /// \~english @retval RET_DREC_ERROR Abnormal end
2126 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
2127 /// \~english @par Prerequisite
2128 /// - This API must be called only when Availability of Diag Service is TRUE.
2129 /// \~english @par Change of internal state
2130 /// - The internal state is not changed.
2131 /// \~english @par Conditions of processing failure
2132 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
2133 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
2134 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
2135 /// \~english @par Classification
2137 /// \~english @par Type
2138 /// Fire and Forget only
2139 /// \~english @par Detail
2140 /// Send result of change function status of Maker peculiarity trace to DiagService.
2142 /// - include MM_DREC_API.h
2143 /// - Library libMM_DREC_API.so
2146 /////////////////////////////////////////////////////////////////////////////////////
2147 extern RET_DREC_API DREC_MakerTrace_FuncStatusResponce(HANDLE hApp,
2149 DREC_OUTPUT_RESULT state);
2151 /////////////////////////////////////////////////////////////////////////////////////
2152 /// \ingroup DREC_MakerTrace_NotifyRestrict
2153 /// \~english @par Brief
2154 /// Restrict notify of Maker peculiarity trace
2155 /// \~english @param[in] hApp
2156 /// HANDLE - The handle for the delivery source application
2157 /// \~english @param[in] notifyName
2158 /// PCSTR - The thread name of the delivery source
2159 /// \~english @param[in] notifyRestrict
2160 /// DREC_NOTIFY_RESTRICT - Restrict kind of Maker peculiarity trace
2161 /// \~english @retval RET_DREC_NORMAL Normal end
2162 /// \~english @retval RET_DREC_ERROR Abnormal end
2163 /// \~english @retval RET_DREC_ERR_ARGUMENTS Incorrect argument
2164 /// \~english @par Prerequisite
2165 /// - This API must be called only when Availability of Diag Service is TRUE.
2166 /// \~english @par Change of internal state
2167 /// - The internal state is not changed.
2168 /// \~english @par Conditions of processing failure
2169 /// - The argument (notifyName) is NULL. [RET_DREC_ERR_ARGUMENTS]
2170 /// - Opening the sending message queue (McOpenSender) failed. [RET_DREC_ERROR]
2171 /// - Sending asynchronous data (McSend) failed. [RET_DREC_ERROR]
2172 /// \~english @par Classification
2174 /// \~english @par Type
2175 /// Fire and Forget only
2176 /// \~english @par Detail
2177 /// Restrict trace notifications triggered by the specified notifyRestrict.
2178 /// Restrict notification(MessageID) are as follows.
2179 /// - MSGID_DREC_MAKERTRACE_SIZEREQUEST
2180 /// - MSGID_DREC_MAKERTRACE_OUTPUTREQUEST
2181 /// - MSGID_DREC_MAKERTRACE_DELETEREQUEST
2182 /// - MSGID_DREC_MAKERTRACE_FUNCSTATUSREQUEST
2184 /// if this API is not called, not restrict(Status is DREC_NOTIFY_RESTRICT_NONE).
2186 /// - include MM_DREC_API.h
2187 /// - Library libMM_DREC_API.so
2189 /// DREC_MakerTrace_FuncStatusRequest, DREC_MakerTrace_DeleteRequest,
2190 /// DREC_MakerTrace_OutputRequest, DREC_MakerTrace_SizeRequest
2191 /////////////////////////////////////////////////////////////////////////////////////
2192 extern RET_DREC_API DREC_MakerTrace_NotifyRestrict(HANDLE hApp,
2194 DREC_NOTIFY_RESTRICT notifyRestrict);
2197 #endif // __cplusplus
2198 /** @}*/ // end of Diag_Drec_MakerTrace
2199 /** @}*/ // end of Diag
2200 /** @}*/ // end of Vehicle
2201 /** @}*/ // end of ApplicationManagement
2202 #endif // __MM_DREC_API_H__