Init basesystem source codes.
[staging/basesystem.git] / systemservice / interface_unified / library / include / system_service / ss_logger_service_ifc.h
1 /*
2  * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
3  *
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
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 /**
18  * @file ss_logger_service_ifc.h
19  * @brief \~english This file supports the the Logger Service.
20  */
21 /** @addtogroup BaseSystem
22  *  @{
23  */
24 /** @addtogroup system_service
25  *  @ingroup BaseSystem
26  *  @{
27  */
28 /** @addtogroup logger_service
29  *  @ingroup system_service
30  *  @{
31  */
32
33 #ifndef SS_LOGGER_SERVICE_IFC_H_  // NOLINT (build/header_guard)
34 #define SS_LOGGER_SERVICE_IFC_H_
35
36 #include <native_service/frameworkunified_types.h>
37 #include <native_service/frameworkunified_framework_types.h>
38 #include "system_service/ss_logger_service.h"
39 #include "system_service/ss_logger_service_protocol.h"
40
41 /**
42  * @class LoggerServiceIf
43  * \~english @brief logger_service
44  * \~english @par   Brief Introduction
45  *        Class to provide LoggerServiceIf
46  *
47  */
48 class LoggerServiceIf {
49  public:
50   /////////////////////////////////////////////////////////////////////////////////////
51   /// \ingroup LoggerServiceIf
52   /// \~english @par Summary
53   ///       Constructor of LoggerServiceIf class.
54   /// \~english @param None
55   /// \~english @retval None
56   /// \~english @par Preconditions
57   ///       - None.
58   /// \~english @par Change of the internal state
59   ///       - The internal state is not changed.
60   /// \~english @par Causes of failures
61   ///       None
62   /// \~english @par Classification
63   ///       Public
64   /// \~english @par Type
65   ///       None
66   /// \~english @par Detail
67   ///       To generate a LoggerServiceIf class, and initialize member variables(m_hApp, m_hService, m_hSession) to be
68   ///       NULL. \n
69   ///       After the constructor, be sure to call the Initialize.
70   /// \~english @see  ~LoggerServiceIf, Initialize
71   ////////////////////////////////////////////////////////////////////////////////////
72   LoggerServiceIf();
73
74   /////////////////////////////////////////////////////////////////////////////////////
75   /// \ingroup ~LoggerServiceIf
76   /// \~english @par Summary
77   ///       Destructor of LoggerServiceIf class.
78   /// \~english @param None
79   /// \~english @retval None
80   /// \~english @par Preconditions
81   ///       - None.
82   /// \~english @par Change of the internal state
83   ///       - The internal state is not changed.
84   /// \~english @par Causes of failures
85   ///       None
86   /// \~english @par Classification
87   ///       Public
88   /// \~english @par Type
89   ///       None
90   /// \~english @par Detail
91   ///       To generate a LoggerServiceIf class. \n
92   ///       If the service and the session is started (open) state, causing the end (closed).
93   /// \~english @see  LoggerServiceIf
94   ////////////////////////////////////////////////////////////////////////////////////
95   virtual ~LoggerServiceIf();
96
97   /////////////////////////////////////////////////////////////////////////////////////
98   /// \ingroup Initialize
99   /// \~english @par Summary
100   ///       API to initialize the LoggerServiceIf class.
101   /// \~english @param [in] hApp
102   ///        HANDLE   - HANDLE for Application
103   /// \~english @retval TRUE Success
104   /// \~english @retval FALSE Failure
105   /// \~english @par Preconditions
106   ///       - None.
107   /// \~english @par Change of the internal state
108   ///       - The internal state is not changed.
109   /// \~english @par Causes of failures
110   ///       - HANDLE(hApp) specified in the argument is NULL. [FALSE]
111   /// \~english @par Classification
112   ///       Public
113   /// \~english @par Type
114   ///       Sync only(None communication)
115   /// \~english @par Detail
116   ///       Application to use the services of SS_LoggerService is, after generating a LoggerServiceIf class, which is a
117   ///       method to be executed first. \n
118   ///       Member variable(m_hApp) of LoggerServiceIf class initialized with hApp that has been specified by the
119   ///       argument.
120   /// \~english @see  LoggerServiceIf
121   ////////////////////////////////////////////////////////////////////////////////////
122   BOOL Initialize(HANDLE hApp);
123
124   /////////////////////////////////////////////////////////////////////////////////////
125   /// \ingroup NotifyOnLoggerServiceAvailability
126   /// \~english @par Summary
127   ///       API to set the Callback function for Availability notification of SS_LoggerService.
128   /// \~english @param [in] f_pCallBackFn
129   ///        CbFuncPtr   - Pointer to function callback for SS_LoggerService Availability Notification
130   /// \~english @retval eFrameworkunifiedStatusOK Success
131   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
132   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
133   /// \~english @retval eFrameworkunifiedStatusInvldHndlType Invalid type of handle
134   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
135   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
136   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
137   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
138   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
139   /// \~english @retval eFrameworkunifiedStatusErrOther Other error has occurred(Cannot access shared memory, etc.)
140   /// \~english @par Preconditions
141   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
142   ///       done.
143   /// \~english @par Change of the internal state
144   ///       - The internal state is not changed.
145   /// \~english @par Causes of failures
146   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
147   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusInvldHandle]
148   ///       - Can not get the App/Thread name from HANDLE in the class member variables (m_hApp).
149   ///       [eFrameworkunifiedStatusInvldHandle]
150   ///       - HANDLE (m_hApp) in the class member variables are not appropriate(which is invalid).
151   ///       [eFrameworkunifiedStatusInvldParam]
152   ///       - The acquisition of the buffer that stores the Callback information specified in the argument failed.
153   ///       [eFrameworkunifiedStatusInvldParam]
154   ///       - Can not be acquired memory in the acquisition of the buffer of the message for transmission (malloc).
155   ///       [eFrameworkunifiedStatusFail]
156   ///       - Message queue HANDLE is NULL in the HANDLE of the class member variables (m_hApp). [eFrameworkunifiedStatusInvldParam]
157   ///       - Message queue HANDLE in HANDLE (m_hApp) of the class member variables are not appropriate(which is
158   ///       invalid). [eFrameworkunifiedStatusInvldParam]
159   ///       - It is not appropriate message queue name of HANDLE (m_hApp) in the class member variables(The name is
160   ///       NULL, more than 20byte). [eFrameworkunifiedStatusInvldHandle]
161   ///       - Is not a transmission type message queue type of HANDLE (m_hApp) in the class member variables.
162   ///       [eFrameworkunifiedStatusInvldHndlType]
163   ///       - Session message queue is full to SS_LoggerService. [eFrameworkunifiedStatusMsgQFull]
164   ///       - It is invalid transmission file descriptor of the session message to SS_LoggerService.
165   ///       [eFrameworkunifiedStatusErrNoEBADF]
166   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message for
167   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
168   ///       - Incorrect size of the transmit buffer of the session message to SS_LoggerService. [eFrameworkunifiedStatusInvldBufSize]
169   ///       - Any errors occur during the transmission of a session message to SS_LoggerService. [eFrameworkunifiedStatusFail]
170   ///       - It failed to shared memory access for transmission of the session message for SS_LoggerService.
171   ///       [eFrameworkunifiedStatusErrOther]
172   /// \~english @par Classification
173   ///       Public
174   /// \~english @par Type
175   ///       Pub-Sub x Pub-Sub
176   /// \~english @par Detail
177   ///       Which is a method to register a Callback function for the initialization of the SS_LoggerService receives
178   ///       the timing at which the start (open) is possible of completed service.\n
179   ///       (Using API:FrameworkunifiedSubscribeNotificationsWithCallback of Native Service, to register a Callback function for
180   ///       Availability notification of SS_LoggerService.)
181   /// \~english @see  None
182   ////////////////////////////////////////////////////////////////////////////////////
183   EFrameworkunifiedStatus NotifyOnLoggerServiceAvailability(CbFuncPtr f_pCallBackFn);
184
185   /////////////////////////////////////////////////////////////////////////////////////
186   /// \ingroup NotifyOnOpenSessionAck
187   /// \~english @par Summary
188   ///       API to set the Callback function for OpenSessionRequest response from SS_LoggerService.
189   /// \~english @param [in] f_pCallBackFn
190   ///        CbFuncPtr   - Callback function pointer for receiving the response of OpenSessionRequest
191   /// \~english @retval eFrameworkunifiedStatusOK Success
192   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
193   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
194   /// \~english @par Preconditions
195   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
196   ///       done.
197   /// \~english @par Change of the internal state
198   ///       - The internal state is not changed.
199   /// \~english @par Causes of failures
200   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
201   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusInvldHandle]
202   ///       - HANDLE (m_hApp) in the class member variables are not appropriate(which is invalid).
203   ///       [eFrameworkunifiedStatusInvldParam]
204   /// \~english @par Classification
205   ///       Public
206   /// \~english @par Type
207   ///       Sync only(None communication)
208   /// \~english @par Detail
209   ///       To register the Callback function for receiving a response of completion of OpenSessionRequest to
210   ///       Dispatcher. \n
211   ///       (Using API:FrameworkunifiedAttachCallbackToDispatcher of Native Service, to register a Callback function for receiving a
212   ///       response of completion of OpenSessionRequest to Dispatcher.)
213   /// \~english @see  NotifyOnCloseSessionAck
214   ////////////////////////////////////////////////////////////////////////////////////
215   EFrameworkunifiedStatus NotifyOnOpenSessionAck(CbFuncPtr f_pCallBackFn);
216
217   /////////////////////////////////////////////////////////////////////////////////////
218   /// \ingroup NotifyOnCloseSessionAck
219   /// \~english @par Summary
220   ///       API to set the Callback function for CloseSessionRequest response from SS_LoggerService.
221   /// \~english @param [in] f_pCallBackFn
222   ///        CbFuncPtr   - Callback function pointer for receiving the response of OpenSessionRequest
223   /// \~english @retval eFrameworkunifiedStatusOK Success
224   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
225   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
226   /// \~english @par Preconditions
227   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
228   ///       done.
229   /// \~english @par Change of the internal state
230   ///       - The internal state is not changed.
231   /// \~english @par Causes of failures
232   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
233   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusInvldHandle]
234   ///       - HANDLE (m_hApp) in the class member variables are not appropriate(which is invalid).
235   ///       [eFrameworkunifiedStatusInvldParam]
236   /// \~english @par Classification
237   ///       Public
238   /// \~english @par Type
239   ///       Sync only(None communication)
240   /// \~english @par Detail
241   ///       To register the Callback function for receiving a response of completion of CloseSessionRequest to
242   ///       Dispatcher. \n
243   ///       (Using API:FrameworkunifiedAttachCallbackToDispatcher of Native Service, to register a Callback function for receiving a
244   ///       response of completion of CloseSessionRequest to Dispatcher.) \n
245   /// \~english @see  NotifyOnOpenSessionAck
246   ////////////////////////////////////////////////////////////////////////////////////
247   EFrameworkunifiedStatus NotifyOnCloseSessionAck(CbFuncPtr f_pCallBackFn);
248
249   /////////////////////////////////////////////////////////////////////////////////////
250   /// \ingroup OpenSessionRequest
251   /// \~english @par Summary
252   ///       API to generate service/session of SS_LoggerService.
253   /// \~english @param None
254   /// \~english @retval eFrameworkunifiedStatusOK Success
255   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
256   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
257   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
258   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
259   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
260   /// \~english @retval eFrameworkunifiedStatusErrOther Other error has occurred(Cannot access shared memory, etc.)
261   /// \~english @par Preconditions
262   ///       - SS_LoggerService process has been started.
263   ///       - Availability of SS_LoggerService is TRUE.
264   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
265   ///       done, and Availability of SS_LoggerService is TRUE.
266   ///       - Use the NotifyOnOpenSessionAck(), that you register a callback function for receiving a completion
267   ///       response of OpenSessionRequest to Dispatcher
268   /// \~english @par Change of the internal state
269   ///       - The internal state is not changed.
270   /// \~english @par Causes of failures
271   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
272   ///       - SS_LoggerService is not Availability state. [eFrameworkunifiedStatusFail]
273   ///       - SS_LoggerService can not be opened (can not start). [eFrameworkunifiedStatusFail]
274   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
275   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
276   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
277   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
278   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
279   ///       [eFrameworkunifiedStatusInvldBufSize]
280   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
281   ///       [eFrameworkunifiedStatusFail]
282   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
283   ///       [eFrameworkunifiedStatusErrOther]
284   /// \~english @par Classification
285   ///       Public
286   /// \~english @par Type
287   ///       Method x Fire and Forget
288   /// \~english @par Detail
289   ///       Which is a method for generating service/session of SS_LoggerService.\n
290   ///       (To send the command of PROTOCOL_OPEN_SESSION_REQ to SS_LoggerService.)\n
291   ///       If you already service has been created, once to close the service, and to re-open.
292   /// \~english @see  CloseSessionRequest
293   ////////////////////////////////////////////////////////////////////////////////////
294   EFrameworkunifiedStatus OpenSessionRequest();
295
296   /////////////////////////////////////////////////////////////////////////////////////
297   /// \ingroup DecodeOpenSessionResponse
298   /// \~english @par Summary
299   ///       API to hold the session ID in SS_LoggerServiceIf class
300   /// \~english @param None
301   /// \~english @retval eFrameworkunifiedStatusOK Success
302   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
303   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
304   /// \~english @par Preconditions
305   ///       - SS_LoggerService process has been started.
306   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
307   ///       done, and Availability of SS_LoggerService is TRUE.
308   /// \~english @par Change of the internal state
309   ///       - The internal state is not changed.
310   /// \~english @par Causes of failures
311   ///       - HANDLES in the class member variables (m_hService/m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
312   ///       - Incorrect PROTOCOL_OPEN_SESSION_ACK message length of SS_LoggerService. [eFrameworkunifiedStatusFail]
313   ///       - PROTOCOL_OPEN_SESSION_ACK message of SS_LoggerService can not be acquired. [eFrameworkunifiedStatusFail]
314   ///       - Can not session generation of message transmission to SS_LoggerService. [eFrameworkunifiedStatusFail]
315   /// \~english @par Classification
316   ///       Public
317   /// \~english @par Type
318   ///       Sync only(None communication)
319   /// \~english @par Detail
320   ///       Get the session initiation response message(PROTOCOL_OPEN_SESSION_ACK) of SS_LoggerService, and get the
321   ///       session ID from the message. \n
322   ///       Acquired session ID, (after opening the message transmission queue) created after a session of message
323   ///       transmission, hold as the session information in the session HANDLE(m_hSession) of the class member
324   ///       variable.
325   /// \~english @see  OpenSessionRequest, CloseSessionRequest
326   ////////////////////////////////////////////////////////////////////////////////////
327   EFrameworkunifiedStatus DecodeOpenSessionResponse();
328
329   /////////////////////////////////////////////////////////////////////////////////////
330   /// \ingroup CloseSessionRequest
331   /// \~english @par Summary
332   ///       API to discard service/session of SS_LoggerService.
333   /// \~english @param None
334   /// \~english @retval eFrameworkunifiedStatusOK Success
335   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
336   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
337   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
338   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
339   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
340   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
341   /// \~english @retval eFrameworkunifiedStatusErrOther Other error has occurred(Cannot access shared memory, etc.)
342   /// \~english @par Preconditions
343   ///       - SS_LoggerService process has been started.
344   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
345   ///       done, and Availability of SS_LoggerService is TRUE.
346   ///       - Use the NotifyOnCloseSessionAck(), that you register a callback function for receiving a completion
347   ///       response of CloseSessionRequest to Dispatcher
348   /// \~english @par Change of the internal state
349   ///       - The internal state is not changed.
350   /// \~english @par Causes of failures
351   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
352   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
353   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
354   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
355   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
356   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
357   ///       [eFrameworkunifiedStatusInvldBufSize]
358   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
359   ///       [eFrameworkunifiedStatusFail]
360   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
361   ///       [eFrameworkunifiedStatusErrOther]
362   /// \~english @par Classification
363   ///       Public
364   /// \~english @par Type
365   ///       Pub-Sub x Pub-Sub
366   /// \~english @par Detail
367   ///       which is a method for discarding service/session of SS_LoggerService.\n
368   ///       (To send the command of PROTOCOL_CLOSE_SESSION_REQ to SS_LoggerService.)
369   /// \~english @see  OpenSessionRequest
370   ////////////////////////////////////////////////////////////////////////////////////
371   EFrameworkunifiedStatus CloseSessionRequest();
372
373   /////////////////////////////////////////////////////////////////////////////////////
374   /// \ingroup RegisterForLoggerEvent
375   /// \~english @par Summary
376   ///       API to register a Callback function for SS_LoggerService.
377   /// \~english @param  [in] f_eLoggerEvent
378   ///        SS_LoggerServerEvents   - Event type
379   /// \~english @param  [in] f_pCallBackFn
380   ///        CbFuncPtr   -  Pointer to a callback function that corresponds to the event
381   /// \~english @par
382   ///            SS_LoggerServerEvents  enum value
383   /// \~english @code
384   ///            typedef enum _LoggerServerEvents
385   ///            {
386   ///                  SS_LOGGER_SCREENCAPTURE_EVT = 0xA0, /* Event notification of the Screen Capture    */
387   ///                  SS_LOGGER_ERRORINFO_EVT,            /* Event notification of error log information */
388   ///                  SS_LOGGER_LOGINFO_EVT,              /* Event notification of log information       */
389   ///                  SS_LOGGER_LOGSTARTED_EVT            /* Event notification at the time of log start */
390   ///            }SS_LoggerServerEvents;
391   ///            @endcode
392   /// \~english @retval eFrameworkunifiedStatusOK Success
393   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
394   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
395   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
396   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
397   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
398   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
399   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
400   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
401   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
402   /// \~english @par Preconditions
403   ///       - SS_LoggerService process has been started.
404   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
405   ///       done, and Availability of SS_LoggerService is TRUE.
406   /// \~english @par Change of the internal state
407   ///       - The internal state is not changed.
408   /// \~english @par Causes of failures
409   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
410   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusInvldHandle]
411   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusInvldHandle]
412   ///       - HANDLE in the class member variables (m_hApp) is not appropriate (which is invalid) [eFrameworkunifiedStatusInvldParam]
413   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
414   ///       [eFrameworkunifiedStatusNullPointer]
415   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
416   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
417   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
418   ///       [eFrameworkunifiedStatusInvldHandle]
419   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
420   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
421   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
422   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
423   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
424   ///       [eFrameworkunifiedStatusInvldBufSize]
425   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
426   ///       [eFrameworkunifiedStatusFail]
427   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
428   ///       [eFrameworkunifiedStatusErrOther]
429   /// \~english @par Classification
430   ///       Public
431   /// \~english @par Type
432   ///       Sync only(None communication)
433   /// \~english @par Detail
434   ///       Which is a method to register a callback function for receiving the timing of the occurrence of an event in
435   ///       the SS_LoggerService to the Dispatcher. \n
436   ///       (To send the command of PROTOCOL_REGISTER_EVENTS to SS_LoggerService.)
437   /// \~english @see  UnRegisterForLoggerEvent
438   ////////////////////////////////////////////////////////////////////////////////////
439   EFrameworkunifiedStatus RegisterForLoggerEvent(SS_LoggerServerEvents f_eLoggerEvent, CbFuncPtr f_pCallBackFn);
440
441   /////////////////////////////////////////////////////////////////////////////////////
442   /// \ingroup UnRegisterForLoggerEvent
443   /// \~english @par Summary
444   ///       API to cancel a Callback function for SS_LoggerService.
445   /// \~english @param  [in] f_eLoggerEvent
446   ///        SS_LoggerServerEvents   - Event type
447   /// \~english @par
448   ///            SS_LoggerServerEvents  enum value
449   /// \~english @code
450   ///            typedef enum _LoggerServerEvents
451   ///            {
452   ///                  SS_LOGGER_SCREENCAPTURE_EVT = 0xA0, /* Event notification of the Screen Capture    */
453   ///                  SS_LOGGER_ERRORINFO_EVT,            /* Event notification of error log information */
454   ///                  SS_LOGGER_LOGINFO_EVT,              /* Event notification of log information       */
455   ///                  SS_LOGGER_LOGSTARTED_EVT            /* Event notification at the time of log start */
456   ///            }SS_LoggerServerEvents;
457   ///            @endcode
458   /// \~english @retval eFrameworkunifiedStatusOK Success
459   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
460   /// \~english @par Preconditions
461   ///       - SS_LoggerService process has been started.
462   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
463   ///       done, and Availability of SS_LoggerService is TRUE.
464   /// \~english @par Change of the internal state
465   ///       - The internal state is not changed.
466   /// \~english @par Causes of failures
467   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
468   /// \~english @par Classification
469   ///       Public
470   /// \~english @par Type
471   ///       Sync only(None communication)
472   /// \~english @par Detail
473   ///       Which is a method to cancel a callback function for receiving the timing of the occurrence of an event in
474   ///       the SS_LoggerService. \n
475   /// \~english @see  RegisterForLoggerEvent
476   ////////////////////////////////////////////////////////////////////////////////////
477   EFrameworkunifiedStatus UnRegisterForLoggerEvent(SS_LoggerServerEvents f_eLoggerEvent);
478
479   /////////////////////////////////////////////////////////////////////////////////////
480   /// \ingroup SendDiagStat
481   /// \~english @par Summary
482   ///       API to send CAN Diagnostic status data(it has mileage information) to SS_LoggerService.
483   /// \~english @param  [in] pCanDiagStat_t
484   ///        STLOGGER_CANDIAGSTAT   - Pointer to structure of CAN Diagnostic state data
485   /// \~english @par
486   ///            STLOGGER_CANDIAGSTAT Structure
487   /// \~english @code
488   ///            typedef struct _TInterfaceunifiedCANMileageInfo
489   ///            {
490   ///                  UI_8  DidA_ExtTest_Pres;    /* For extended test(unused)     */
491   ///                  UI_8  EngRun_Stat;          /* Engine run state(unused)      */
492   ///                  UI_8  Odo_MSB_H;            /* Mileage information(MSB:High) */
493   ///                  UI_8  Odo_MSB_L;            /* Mileage information(MSB:Low)  */
494   ///                  UI_8  Odo_LSB_H;            /* Mileage information(LSB:High) */
495   ///                  UI_8  Odo_LSB_L;            /* Mileage information(LSB:Low)  */
496   ///                  UI_8  PN14_SupBat_Volt;     /* Battery voltage(unused)       */
497   ///            }STLOGGER_CANDIAGSTAT;
498   ///            @endcode
499   /// \~english @retval eFrameworkunifiedStatusOK Success
500   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
501   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
502   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
503   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
504   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
505   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
506   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
507   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
508   /// \~english @par Preconditions
509   ///       - SS_LoggerService process has been started.
510   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
511   ///       done, and Availability of SS_LoggerService is TRUE.
512   /// \~english @par Change of the internal state
513   ///       - The internal state is not changed.
514   /// \~english @par Causes of failures
515   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
516   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
517   ///       [eFrameworkunifiedStatusNullPointer]
518   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
519   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
520   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
521   ///       [eFrameworkunifiedStatusInvldHandle]
522   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
523   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
524   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
525   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
526   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
527   ///       [eFrameworkunifiedStatusInvldBufSize]
528   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
529   ///       [eFrameworkunifiedStatusFail]
530   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
531   ///       [eFrameworkunifiedStatusErrOther]
532   /// \~english @par Classification
533   ///       Public
534   /// \~english @par Type
535   ///       Fire and Forget x Sync
536   /// \~english @par Detail
537   ///       Which is a method to send the mileage information in the CAN diagnostic state data to SS_LoggerService. \n
538   ///       Send a message in the command ID of SS_LOGGER_MILEAGE_DATA to SS_LoggerService. \n
539   ///       SS_LoggerService uses the log write thread, to output a log of the mileage information.
540   /// \~english @see  None
541   ////////////////////////////////////////////////////////////////////////////////////
542   EFrameworkunifiedStatus SendDiagStat(STLOGGER_CANDIAGSTAT *pCanDiagStat_t);
543
544   /////////////////////////////////////////////////////////////////////////////////////
545   /// \ingroup LoggerIf_CANGetCurrentDateAndTime
546   /// \~english @par Summary
547   ///       API to send the current date and time of the CAN to SS_LoggerService.
548   /// \~english @param  [in] stDateAndTime
549   ///        STCanCurrentDateTime   - Structure of CAN current date and time
550   /// \~english @par
551   ///            STCanCurrentDateTime Structure
552   /// \~english @code
553   ///            typedef struct __CWORD62_DateAndTime
554   ///            {
555   ///                  UI_8  DateTime_Stat;     /* Date and Time State */
556   ///                  UI_8  DateTimeDay;       /* Day                 */
557   ///                  UI_8  DateTimeHour;      /* Hour                */
558   ///                  UI_8  DateTimeMinute;    /* Minute              */
559   ///                  UI_8  DateTimeMonth;     /* Month               */
560   ///                  UI_8  DateTimeSecond;    /* Second              */
561   ///                  UI_8  DateTimeYear;      /* Year                */
562   ///                  UI_8  TimeFormat;        /* Time display format */
563   ///            }STCanCurrentDateTime;
564   ///            @endcode
565   /// \~english @retval eFrameworkunifiedStatusOK Success
566   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
567   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
568   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
569   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
570   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
571   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
572   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
573   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
574   /// \~english @par Preconditions
575   ///       - SS_LoggerService process has been started.
576   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
577   ///       done, and Availability of SS_LoggerService is TRUE.
578   /// \~english @par Change of the internal state
579   ///       - The internal state is not changed.
580   /// \~english @par Causes of failures
581   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
582   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
583   ///       [eFrameworkunifiedStatusNullPointer]
584   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
585   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
586   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
587   ///       [eFrameworkunifiedStatusInvldHandle]
588   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
589   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
590   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
591   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
592   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
593   ///       [eFrameworkunifiedStatusInvldBufSize]
594   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
595   ///       [eFrameworkunifiedStatusFail]
596   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
597   ///       [eFrameworkunifiedStatusErrOther]
598   /// \~english @par Classification
599   ///       Public
600   /// \~english @par Type
601   ///       Fire and Forget x Sync
602   /// \~english @par Detail
603   ///       Which is a method to send current date and time of the CAN to SS_LoggerService. \n
604   ///       Send a message in the command ID of SS_LOGGER_SET_DATETIME to SS_LoggerService.
605   /// \~english @see  None
606   ////////////////////////////////////////////////////////////////////////////////////
607   EFrameworkunifiedStatus LoggerIf_CANGetCurrentDateAndTime(STCanCurrentDateTime stDateAndTime);
608
609   /////////////////////////////////////////////////////////////////////////////////////
610   /// \ingroup LoggerIf_CANSetVIN
611   /// \~english @par Summary
612   ///       API to send the Vehicle Identification Number(VIN) to SS_LoggerService.
613   /// \~english @param  [in] stVinNumber
614   ///        STVIN_NUMBER&   - Structure of Vehicle Identification Number(VIN)
615   /// \~english @par
616   ///            STVIN_NUMBER Structure
617   /// \~english @code
618   ///            typedef struct _TVINnumber
619   ///            {
620   ///                  static const UI_8 VIN_LEN = 18;
621   ///                  CHAR   VINstr[VIN_LEN];        /* Vehicle Identification Number(VIN)  */
622   ///            }STVIN_NUMBER;
623   ///            @endcode
624   /// \~english @retval eFrameworkunifiedStatusOK Success
625   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
626   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
627   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
628   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
629   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
630   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
631   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
632   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
633   /// \~english @par Preconditions
634   ///       - SS_LoggerService process has been started.
635   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
636   ///       done, and Availability of SS_LoggerService is TRUE.
637   /// \~english @par Change of the internal state
638   ///       - The internal state is not changed.
639   /// \~english @par Causes of failures
640   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
641   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
642   ///       [eFrameworkunifiedStatusNullPointer]
643   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
644   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
645   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
646   ///       [eFrameworkunifiedStatusInvldHandle]
647   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
648   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
649   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
650   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
651   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
652   ///       [eFrameworkunifiedStatusInvldBufSize]
653   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
654   ///       [eFrameworkunifiedStatusFail]
655   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
656   ///       [eFrameworkunifiedStatusErrOther]
657   /// \~english @par Classification
658   ///       Public
659   /// \~english @par Type
660   ///       Fire and Forget x Sync
661   /// \~english @par Detail
662   ///       Which is a method to send the Vehicle Identification Number(VIN) to SS_LoggerService. \n
663   ///       Send a message in the command ID of SS_LOGGER_SET_VIN to Logger Service. \n
664   ///       SS_LoggerService uses the log write thread, to output a log of the Vehicle Identification Number(VIN).
665   /// \~english @see  None
666   ////////////////////////////////////////////////////////////////////////////////////
667   EFrameworkunifiedStatus LoggerIf_CANSetVIN(STVIN_NUMBER&  stVinNumber);  // NOLINT (runtime/references)
668
669   /////////////////////////////////////////////////////////////////////////////////////
670   /// \ingroup LoggerIf_SetLoggerParams
671   /// \~english @par Summary
672   ///       API to send the logging propriety information of the selected device to SS_LoggerService.
673   /// \~english @param  [in] eLoggerStatus
674   ///        ELOGGER_STAT   - Logging propriety information
675   /// \~english @param  [in] eDevType
676   ///        EDEV_TYPE   - Device type
677   /// \~english @par
678   ///            ELOGGER_STAT  enum value
679   /// \~english @code
680   ///            typedef enum _ELoggerState
681   ///            {
682   ///                  eDeactivate,          /* Logging impossible(Deativate) */
683   ///                  eActivate,            /* Logging possible(Activate)    */
684   ///                  eInvalid_LoggerState  /* Invalid logging state         */
685   ///            }ELOGGER_STAT;
686   ///            @endcode
687   /// \~english @par
688   ///            EDEV_TYPE  enum value
689   /// \~english @code
690   ///            typedef enum _ELoggerDeviceTypes
691   ///            {
692   ///                  eDevUSB1,             /* USB1                 */
693   ///                  eDevUSB2,             /* USB2                 */
694   ///                  eDevSD,               /* SD                   */
695   ///                  eTotalDevicesTypes,   /* Total device types   */
696   ///                  eInvalid_DevType      /* Invalid device type  */
697   ///            }EDEV_TYPE;
698   ///            @endcode
699   /// \~english @retval eFrameworkunifiedStatusOK Success
700   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
701   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
702   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
703   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
704   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
705   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
706   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
707   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
708   /// \~english @par Preconditions
709   ///       - SS_LoggerService process has been started.
710   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
711   ///       done, and Availability of SS_LoggerService is TRUE.
712   /// \~english @par Change of the internal state
713   ///       - The internal state is not changed.
714   /// \~english @par Causes of failures
715   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
716   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
717   ///       [eFrameworkunifiedStatusNullPointer]
718   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
719   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
720   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
721   ///       [eFrameworkunifiedStatusInvldHandle]
722   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
723   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
724   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
725   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
726   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
727   ///       [eFrameworkunifiedStatusInvldBufSize]
728   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
729   ///       [eFrameworkunifiedStatusFail]
730   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
731   ///       [eFrameworkunifiedStatusErrOther]
732   /// \~english @par Classification
733   ///       Public
734   /// \~english @par Type
735   ///       Fire and Forget x Sync
736   /// \~english @par Detail
737   ///       Which is a method to send the logging propriety information of the selected device to SS_LoggerService. \n
738   ///       Send a message in the command ID of SS_LOGGER_SET_PARAMS to SS_LoggerService. \n
739   ///       SS_LoggerService is based on the logging propriety information of the transmission selection device, and
740   ///       update as a member variable of the class.
741   /// \~english @see  None
742   ////////////////////////////////////////////////////////////////////////////////////
743   EFrameworkunifiedStatus LoggerIf_SetLoggerParams(ELOGGER_STAT eLoggerStatus, EDEV_TYPE eDevType);
744
745   /////////////////////////////////////////////////////////////////////////////////////
746   /// \ingroup LoggerIf_UDPLogging
747   /// \~english @par Summary
748   ///       API to send the logging propriety information of UDP to SS_LoggerService.
749   /// \~english @param  [in] eLoggerStatus
750   ///        ELOGGER_STAT   - Logging propriety information
751   /// \~english @par
752   ///            ELOGGER_STAT  enum value
753   /// \~english @code
754   ///            typedef enum _ELoggerState
755   ///            {
756   ///                  eDeactivate,          /* Logging impossible(Deativate) */
757   ///                  eActivate,            /* Logging possible(Activate)    */
758   ///                  eInvalid_LoggerState  /* Invalid logging state         */
759   ///            }ELOGGER_STAT;
760   ///            @endcode
761   /// \~english @retval eFrameworkunifiedStatusOK Success
762   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
763   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
764   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
765   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
766   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
767   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
768   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
769   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
770   /// \~english @par Preconditions
771   ///       - SS_LoggerService process has been started.
772   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
773   ///       done, and Availability of SS_LoggerService is TRUE.
774   /// \~english @par Change of the internal state
775   ///       - The internal state is not changed.
776   /// \~english @par Causes of failures
777   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
778   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
779   ///       [eFrameworkunifiedStatusNullPointer]
780   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
781   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
782   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
783   ///       [eFrameworkunifiedStatusInvldHandle]
784   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
785   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
786   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
787   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
788   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
789   ///       [eFrameworkunifiedStatusInvldBufSize]
790   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
791   ///       [eFrameworkunifiedStatusFail]
792   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
793   ///       [eFrameworkunifiedStatusErrOther]
794   /// \~english @par Classification
795   ///       Public
796   /// \~english @par Type
797   ///       Fire and Forget x Sync
798   /// \~english @par Detail
799   ///       Which is a method to send the logging propriety information of UDP to SS_LoggerService. \n
800   ///       Send a message in the command ID of SS_LOGGER_UDP_LOGGING to SS_LoggerService. \n
801   ///       SS_LoggerService is based on the logging propriety information of the transmission UDP, and update as a
802   ///       member variable of the class.
803   /// \~english @see  None
804   ////////////////////////////////////////////////////////////////////////////////////
805   EFrameworkunifiedStatus LoggerIf_UDPLogging(ELOGGER_STAT eLoggerStatus);
806
807   /////////////////////////////////////////////////////////////////////////////////////
808   /// \ingroup LoggerIf_ScreenCaptureEventACK
809   /// \~english @par Summary
810   ///       API to send the event response of screen capture to SS_LoggerService.
811   /// \~english @param  [in] stScreenCaptureInfo
812   ///        STScreenCaptureEvt   - Structure of event data of screen capture
813   /// \~english @par
814   ///            STScreenCaptureEvt Structure
815   /// \~english @code
816   ///            typedef struct _TInterfaceunifiedScreenCaptureEvt
817   ///            {
818   ///                  static const UI_16  STR_BUFF_LEN = 64;
819   ///                  BOOL                fSucessful;                       /* Success propriety flag        */
820   ///                  UI_32               uiSceenShotId;                    /* Screen capture ID             */
821   ///                  CHAR                strNameAndLocation[STR_BUFF_LEN]; /* Screen capture save file name */
822   ///                  UI_32               uiFaultReasonCode;                /* Failure reason code           */
823   ///            }STScreenCaptureEvt;
824   ///            @endcode
825   /// \~english @par
826   ///            uiFaultReasonCode : Failure reason code (plm::screen_shot::status List)
827   ///               - ok : Success
828   ///               - invalid_window_handle         : Invalid window handle
829   ///               - invalid_context_handle        : Invalid context handle
830   ///               - display_count_error           : Display count error
831   ///               - rgb_display_not_found         : RGB display not found
832   ///               - create_pixmap_error           : Create error of PIXMAP
833   ///               - usage_pixmap_property_error   : Usage error of PIXMAP property
834   ///               - format_pixmap_property_error  : Format error of PIXMAP property
835   ///               - buffer_pixmap_property_error  : Buffer error of PIXMAP property
836   ///               - create_pixmap_buffer_error    : Create error of PIXMAP buffer
837   ///               - render_pixmap_property_error  : Render error of PIXMAP property
838   ///               - pointer_pixmap_property_error : Pointer error of PIXMAP property
839   ///               - stride_pixmap_property_error  : Stride error of PIXMAP property
840   ///               - window_read_error             : Window read error
841   ///               - write_bitmap_file_error       : Writing error of bitmap files
842   ///               - window_post_error             : Window post error
843   ///               - window_property_error         : Window property error
844   /// \~english @retval eFrameworkunifiedStatusOK Success
845   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
846   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
847   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
848   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
849   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
850   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
851   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
852   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
853   /// \~english @par Preconditions
854   ///       - SS_LoggerService process has been started.
855   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
856   ///       done, and Availability of SS_LoggerService is TRUE.
857   /// \~english @par Change of the internal state
858   ///       - The internal state is not changed.
859   /// \~english @par Causes of failures
860   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
861   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
862   ///       [eFrameworkunifiedStatusNullPointer]
863   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
864   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
865   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
866   ///       [eFrameworkunifiedStatusInvldHandle]
867   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
868   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
869   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
870   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
871   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
872   ///       [eFrameworkunifiedStatusInvldBufSize]
873   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
874   ///       [eFrameworkunifiedStatusFail]
875   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
876   ///       [eFrameworkunifiedStatusErrOther]
877   /// \~english @par Classification
878   ///       Public
879   /// \~english @par Type
880   ///       Fire and Forget x Sync
881   /// \~english @par Detail
882   ///       As the data in the event the response of the screen capture to SS_LoggerService, which is a method for
883   ///       transmitting the information of the screen capture ID and screen capture save file name.\n
884   ///       Send a message in the command ID of SS_LOGGER_SCREENCAPTURE_EVT_ACK to SS_LoggerService. \n
885   ///       This API is an API for screen capture in PLM(Physical Layer Management) function support. In PLM
886   ///       non-support, to prohibit the use.
887   /// \~english @see  None
888   ////////////////////////////////////////////////////////////////////////////////////
889   EFrameworkunifiedStatus LoggerIf_ScreenCaptureEventACK(STScreenCaptureEvt stScreenCaptureInfo);
890
891   /////////////////////////////////////////////////////////////////////////////////////
892   /// \ingroup LoggerIf_EventLoggingCommonInfo
893   /// \~english @par Summary
894   ///       API to send the event information of the common log in SS_LoggerService.
895   /// \~english @param  [in] stEventCommonInfo
896   ///        STEventLoggerCommonInfo   - Event information structure of the common log
897   /// \~english @par
898   ///            STEventLoggerCommonInfo Structure
899   /// \~english @code
900   ///            typedef struct _SEventLoggerCommonInfo
901   ///            {
902   ///                  UI_8  BodyCAN_Stat:4;        /* CAN state of the body           */
903   ///                  UI_8  HeadUnitCAN_Stat:4;    /* CAN state of the Head Unit      */
904   ///                  UI_8  HMIInteraction:4;      /* HMI Interaction                 */
905   ///                  UI_8  IGN_Status:4;          /* Ignition state                  */
906   ///                  UI_8  FOT_Temp:2;            /* Field Operation Tests Temporary */
907   ///                  UI_8  SystemVoltage:6;       /* System Voltage                  */
908   ///            }STEventLoggerCommonInfo;
909   ///            @endcode
910   /// \~english @retval eFrameworkunifiedStatusOK Success
911   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
912   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
913   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
914   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
915   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
916   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
917   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
918   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
919   /// \~english @par Preconditions
920   ///       - SS_LoggerService process has been started.
921   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
922   ///       done, and Availability of SS_LoggerService is TRUE.
923   /// \~english @par Change of the internal state
924   ///       - The internal state is not changed.
925   /// \~english @par Causes of failures
926   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
927   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
928   ///       [eFrameworkunifiedStatusNullPointer]
929   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
930   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
931   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
932   ///       [eFrameworkunifiedStatusInvldHandle]
933   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
934   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
935   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
936   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
937   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
938   ///       [eFrameworkunifiedStatusInvldBufSize]
939   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
940   ///       [eFrameworkunifiedStatusFail]
941   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
942   ///       [eFrameworkunifiedStatusErrOther]
943   /// \~english @par Classification
944   ///       Public
945   /// \~english @par Type
946   ///       Fire and Forget x Fire and Forget
947   /// \~english @par Detail
948   ///       It is a method to send the event information of the common log to SS_LoggerService. \n
949   ///       Send a message in the command ID of SS_LOGGER_EVENT_COMMONINFO to SS_LoggerService. \n
950   ///       Using the log write thread, SS_LoggerService outputs the following log information.
951   ///       - CAN state of the body
952   ///       - CAN state of the Head Unit
953   ///       - HMI Interaction
954   ///       - Ignition state
955   ///       - System Voltage
956   /// \~english @see  None
957   ////////////////////////////////////////////////////////////////////////////////////
958   EFrameworkunifiedStatus LoggerIf_EventLoggingCommonInfo(STEventLoggerCommonInfo stEventCommonInfo);
959
960   /////////////////////////////////////////////////////////////////////////////////////
961   /// \ingroup LoggerIf_EventLoggingEventInfo
962   /// \~english @par Summary
963   ///       API to send the event information of the _CWORD56_ log to SS_LoggerService.
964   /// \~english @param  [in] stEventInfo
965   ///        STEventLoggerEventInfo   - Event information structure of _CWORD56_ log
966   /// \~english @par
967   ///            STEventLoggerEventInfo Structure
968   /// \~english @code
969   ///            typedef struct _SEventLoggerCommonInfo
970   ///            {
971   ///                  UI_8 NumberOfEvents;       /* Event count       */
972   ///                  UI_8 EventGroup;           /* Event group       */
973   ///                  UI_8 EventIdentifier;      /* Event identifier  */
974   ///                  UI_8 EventData[4];         /* Event data        */
975   ///            }STEventLoggerEventInfo;
976   ///            @endcode
977   /// \~english @retval eFrameworkunifiedStatusOK Success
978   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
979   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
980   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
981   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
982   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
983   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
984   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
985   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
986   /// \~english @par Preconditions
987   ///       - SS_LoggerService process has been started.
988   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
989   ///       done, and Availability of SS_LoggerService is TRUE.
990   /// \~english @par Change of the internal state
991   ///       - The internal state is not changed.
992   /// \~english @par Causes of failures
993   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
994   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
995   ///       [eFrameworkunifiedStatusNullPointer]
996   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
997   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
998   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
999   ///       [eFrameworkunifiedStatusInvldHandle]
1000   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1001   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1002   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1003   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1004   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1005   ///       [eFrameworkunifiedStatusInvldBufSize]
1006   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1007   ///       [eFrameworkunifiedStatusFail]
1008   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1009   ///       [eFrameworkunifiedStatusErrOther]
1010   /// \~english @par Classification
1011   ///       Public
1012   /// \~english @par Type
1013   ///       Fire and Forget x Fire and Forget
1014   /// \~english @par Detail
1015   ///       It is a method to send the event information of _CWORD56_ log to SS_LoggerService. \n
1016   ///       Send a message in the command ID of SS_LOGGER__CWORD56__EVENT_INFO to SS_LoggerService.\n
1017   ///       Using the log write thread, SS_LoggerService outputs the following log information.
1018   ///       - Event count
1019   ///       - Event group
1020   ///       - Event identifier
1021   ///       - Event data
1022   /// \~english @see  None
1023   ////////////////////////////////////////////////////////////////////////////////////
1024   EFrameworkunifiedStatus LoggerIf_EventLoggingEventInfo(STEventLoggerEventInfo stEventInfo);
1025
1026   /////////////////////////////////////////////////////////////////////////////////////
1027   /// \ingroup LoggerIf_EventLoggingResetInfo
1028   /// \~english @par Summary
1029   ///       API to send the event information of _CWORD56_ reset count to SS_LoggerService.
1030   /// \~english @param  [in] stResetInfo
1031   ///        STEventLoggerResetInfo   - Event information structure of _CWORD56_ reset counter
1032   /// \~english @par
1033   ///            STEventLoggerResetInfo Structure
1034   /// \~english @code
1035   ///            typedef struct _SEventLoggerResetInfo
1036   ///            {
1037   ///                  UI_8 _CWORD56__ResetInfo;      /* Reset counter information of _CWORD56_   */
1038   ///                  UI_8 _CWORD102__ResetInfo;        /* Reset counter information of _CWORD102_     */
1039   ///            }STEventLoggerResetInfo;
1040   ///            @endcode
1041   /// \~english @retval eFrameworkunifiedStatusOK Success
1042   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1043   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1044   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1045   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1046   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1047   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1048   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1049   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1050   /// \~english @par Preconditions
1051   ///       - SS_LoggerService process has been started.
1052   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1053   ///       done, and Availability of SS_LoggerService is TRUE.
1054   /// \~english @par Change of the internal state
1055   ///       - The internal state is not changed.
1056   /// \~english @par Causes of failures
1057   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1058   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1059   ///       [eFrameworkunifiedStatusNullPointer]
1060   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1061   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1062   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1063   ///       [eFrameworkunifiedStatusInvldHandle]
1064   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1065   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1066   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1067   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1068   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1069   ///       [eFrameworkunifiedStatusInvldBufSize]
1070   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1071   ///       [eFrameworkunifiedStatusFail]
1072   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1073   ///       [eFrameworkunifiedStatusErrOther]
1074   /// \~english @par Classification
1075   ///       Public
1076   /// \~english @par Type
1077   ///       Fire and Forget x Fire and Forget
1078   /// \~english @par Detail
1079   ///       It is a method to send the event information of _CWORD56_ reset counter to SS_LoggerService. \n
1080   ///       Send a message in the command ID of SS_LOGGER__CWORD56__RESET_INFO to SS_LoggerService. \n
1081   ///       Using the log write thread, SS_LoggerService outputs the following log information.
1082   ///       - Reset counter information of _CWORD56_
1083   ///       - Reset counter information of _CWORD102_
1084   /// \~english @see  None
1085   ////////////////////////////////////////////////////////////////////////////////////
1086   EFrameworkunifiedStatus LoggerIf_EventLoggingResetInfo(STEventLoggerResetInfo stResetInfo);
1087
1088   /////////////////////////////////////////////////////////////////////////////////////
1089   /// \ingroup LoggerIf_PersistEventLogOnActiveDTC
1090   /// \~english @par Summary
1091   ///       API to persist the event log on the DTC to SS_LoggerService.
1092   /// \~english @param  None
1093   /// \~english @retval eFrameworkunifiedStatusOK Success
1094   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1095   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1096   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1097   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1098   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1099   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1100   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1101   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1102   /// \~english @par Preconditions
1103   ///       - SS_LoggerService process has been started.
1104   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1105   ///       done, and Availability of SS_LoggerService is TRUE.
1106   /// \~english @par Change of the internal state
1107   ///       - The internal state is not changed.
1108   /// \~english @par Causes of failures
1109   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1110   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1111   ///       [eFrameworkunifiedStatusNullPointer]
1112   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1113   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1114   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1115   ///       [eFrameworkunifiedStatusInvldHandle]
1116   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1117   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1118   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1119   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1120   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1121   ///       [eFrameworkunifiedStatusInvldBufSize]
1122   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1123   ///       [eFrameworkunifiedStatusFail]
1124   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1125   ///       [eFrameworkunifiedStatusErrOther]
1126   /// \~english @par Classification
1127   ///       Public
1128   /// \~english @par Type
1129   ///       Fire and Forget x Sync
1130   /// \~english @par Detail
1131   ///       Which is a method to send a message of the order to immediately persist the event log on the DTC(Diagnostic
1132   ///       Trouble Code) to SS_LoggerService. \n
1133   ///       Send a message in the command ID of SS_LOGGER_DIAGDTC_ACTIVE to SS_LoggerService.
1134   /// \~english @see  None
1135   ////////////////////////////////////////////////////////////////////////////////////
1136   EFrameworkunifiedStatus LoggerIf_PersistEventLogOnActiveDTC(void);
1137
1138   /////////////////////////////////////////////////////////////////////////////////////
1139   /// \ingroup LoggerIf_Shutdown_Complete
1140   /// \~english @par Summary
1141   ///       API to send a shutdown completion message to SS_LoggerService.
1142   /// \~english @param  None
1143   /// \~english @retval eFrameworkunifiedStatusOK Success
1144   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1145   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1146   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1147   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1148   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1149   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1150   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1151   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1152   /// \~english @par Preconditions
1153   ///       - SS_LoggerService process has been started.
1154   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1155   ///       done, and Availability of SS_LoggerService is TRUE.
1156   /// \~english @par Change of the internal state
1157   ///       - The internal state is not changed.
1158   /// \~english @par Causes of failures
1159   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1160   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1161   ///       [eFrameworkunifiedStatusNullPointer]
1162   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1163   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1164   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1165   ///       [eFrameworkunifiedStatusInvldHandle]
1166   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1167   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1168   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1169   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1170   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1171   ///       [eFrameworkunifiedStatusInvldBufSize]
1172   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1173   ///       [eFrameworkunifiedStatusFail]
1174   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1175   ///       [eFrameworkunifiedStatusErrOther]
1176   /// \~english @par Classification
1177   ///       Public
1178   /// \~english @par Type
1179   ///       Fire and Forget x Fire and Forget
1180   /// \~english @par Detail
1181   ///       Which is a method to send a shutdown completion message to SS_LoggerService.\n
1182   ///       Send a message in the command ID of SS_LOGGER_SHUTDOWN_COMPLETE to SS_LoggerService.\n
1183   ///       SS_LoggerService stops the thread for the log writing, and the Availability of self-service is set to FALSE,
1184   ///       to disable the service.
1185   /// \~english @see  None
1186   ////////////////////////////////////////////////////////////////////////////////////
1187   EFrameworkunifiedStatus LoggerIf_Shutdown_Complete(void);
1188
1189   /////////////////////////////////////////////////////////////////////////////////////
1190   /// \ingroup StoreEventLogsToUSB
1191   /// \~english @par Summary
1192   ///       API to request an event log output to USB/SD to SS_LoggerService.
1193   /// \~english @param  [in] eUSBDevNumber
1194   ///        EEvtLogUSBDevNumber   - Event Log output destination USB/SD device number
1195   /// \~english @par
1196   ///            EEvtLogUSBDevNumber  enum value
1197   /// \~english @code
1198   ///            typedef enum  _EEventLoggerUSBDeviceNumber
1199   ///            {
1200   ///                  USB0=0,         /* USB0 */
1201   ///                  USB1=1,         /* USB1 */
1202   ///                  SD=2            /* SD   */
1203   ///            }EEvtLogUSBDevNumber;
1204   ///            @endcode
1205   /// \~english @retval eFrameworkunifiedStatusOK Success
1206   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1207   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1208   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1209   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1210   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1211   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1212   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1213   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1214   /// \~english @par Preconditions
1215   ///       - SS_LoggerService process has been started.
1216   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1217   ///       done, and Availability of SS_LoggerService is TRUE.
1218   /// \~english @par Change of the internal state
1219   ///       - The internal state is not changed.
1220   /// \~english @par Causes of failures
1221   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1222   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1223   ///       [eFrameworkunifiedStatusNullPointer]
1224   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1225   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1226   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1227   ///       [eFrameworkunifiedStatusInvldHandle]
1228   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1229   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1230   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1231   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1232   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1233   ///       [eFrameworkunifiedStatusInvldBufSize]
1234   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1235   ///       [eFrameworkunifiedStatusFail]
1236   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1237   ///       [eFrameworkunifiedStatusErrOther]
1238   /// \~english @par Classification
1239   ///       Public
1240   /// \~english @par Type
1241   ///       Method x Fire and Forget
1242   /// \~english @par Detail
1243   ///      Which is a method to request the event log output to USB/SD to SS_LoggerService.\n
1244   ///      To send a message in the command ID of SS_LOGGERCOPYEVENTUSB against SS_LoggerService. \n
1245   ///      Using the event log writing thread, SS_LoggerService output the event log to the specified device (USB/SD).
1246   ///      \n
1247   ///      As a result of the event output, the message is notified to the caller of the API in the command ID below.
1248   ///       - Success: SS_LOGGERCOPYEVENTUSB_SUCCESS_RESP
1249   ///       - Failure: SS_LOGGERCOPYEVENTUSB_ERROR_RESP
1250   /// \~english @see  None
1251   ////////////////////////////////////////////////////////////////////////////////////
1252   EFrameworkunifiedStatus StoreEventLogsToUSB(EEvtLogUSBDevNumber eUSBDevNumber);
1253
1254   /////////////////////////////////////////////////////////////////////////////////////
1255   /// \ingroup StoreEmergencyErrorLogsToUSB
1256   /// \~english @par Summary
1257   ///       API to request the emergency error log output to USB/SD to SS_LoggerService.
1258   /// \~english @param  [in] eDevNumber
1259   ///        EDevNumber    - Emergency error log output destination USB/SD device number
1260   /// \~english @par
1261   ///            EDevNumber   value of enum
1262   /// \~english @code
1263   ///            typedef enum  _EDevNumber
1264   ///            {
1265   ///                  eEEL_USB1=1,         /* USB0 */
1266   ///                  eEEL_USB2=2,         /* USB1 */
1267   ///                  eEEL_SD=3            /* SD   */
1268   ///            }EDevNumber ;
1269   ///            @endcode
1270   /// \~english @retval eFrameworkunifiedStatusOK Success
1271   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1272   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1273   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1274   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1275   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1276   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1277   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1278   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1279   /// \~english @par Preconditions
1280   ///       - SS_LoggerService process has been started.
1281   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1282   ///       done, and Availability of SS_LoggerService is TRUE.
1283   /// \~english @par Change of the internal state
1284   ///       - The internal state is not changed.
1285   /// \~english @par Causes of failures
1286   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1287   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1288   ///       [eFrameworkunifiedStatusNullPointer]
1289   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1290   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1291   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1292   ///       [eFrameworkunifiedStatusInvldHandle]
1293   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1294   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1295   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1296   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1297   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1298   ///       [eFrameworkunifiedStatusInvldBufSize]
1299   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1300   ///       [eFrameworkunifiedStatusFail]
1301   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1302   ///       [eFrameworkunifiedStatusErrOther]
1303   /// \~english @par Classification
1304   ///       Public
1305   /// \~english @par Type
1306   ///       Fire and Forget x Fire and Forget
1307   /// \~english @par Detail
1308   ///      Which is a method to request the emergency error log output to USB/SD to SS_LoggerService.\n
1309   ///      To send a message in the command ID of SS_LOGGERCOPYEMERGENCYLOGS against SS_LoggerService. \n
1310   ///      Using the diagnostic log output function of System Manager, SS_LoggerService output the emergency error log
1311   ///      to the specified device(USB/SD). \n
1312   ///      As a result of the clearing process of the event log, the message is notified to the caller of the API in the
1313   ///      command ID below.
1314   ///       - Success: SS_LOGGERCOPYEMERGENCYLOGS_SUCCESS_RESP
1315   ///       - Failure: SS_LOGGERCOPYEMERGENCYLOGS_ERROR_RESP
1316   /// \~english @see  None
1317   ////////////////////////////////////////////////////////////////////////////////////
1318   EFrameworkunifiedStatus StoreEmergencyErrorLogsToUSB(EDevNumber eDevNumber);
1319
1320   /////////////////////////////////////////////////////////////////////////////////////
1321   /// \ingroup StartCANLogging
1322   /// \~english @par Summary
1323   ///       API to request the start of CAN logging to SS_LoggerService.
1324   /// \~english @param  None
1325   /// \~english @retval eFrameworkunifiedStatusOK Success
1326   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1327   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1328   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1329   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1330   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1331   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1332   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1333   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1334   /// \~english @par Preconditions
1335   ///       - SS_LoggerService process has been started.
1336   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1337   ///       done, and Availability of SS_LoggerService is TRUE.
1338   /// \~english @par Change of the internal state
1339   ///       - The internal state is not changed.
1340   /// \~english @par Causes of failures
1341   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1342   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1343   ///       [eFrameworkunifiedStatusNullPointer]
1344   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1345   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1346   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1347   ///       [eFrameworkunifiedStatusInvldHandle]
1348   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1349   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1350   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1351   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1352   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1353   ///       [eFrameworkunifiedStatusInvldBufSize]
1354   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1355   ///       [eFrameworkunifiedStatusFail]
1356   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1357   ///       [eFrameworkunifiedStatusErrOther]
1358   /// \~english @par Classification
1359   ///       Public
1360   /// \~english @par Type
1361   ///       Fire and Forget x Fire and Forget
1362   /// \~english @par Detail
1363   ///      Which is a method to request the start of CAN logging against SS_LoggerService. \n
1364   ///      This function is called by CAN to trigger Logging to USB. \n
1365   ///      Progress is published by notifications eSSLoggerCANEventStart, eSSLoggerCANEventError and
1366   ///      eSSLoggerCANEventFinished. \n
1367   ///      To send a message in the command ID of eSSLoggerCANProtocolIDCANTrigger against SS_LoggerService. \n
1368   ///      SS_LoggerService requests the logging start of CAN to the System Manager.
1369   /// \~english @see  RegisterLoggingStartNotification, RegisterLoggingFinishNotification
1370   ////////////////////////////////////////////////////////////////////////////////////
1371   EFrameworkunifiedStatus StartCANLogging(void);
1372
1373   /////////////////////////////////////////////////////////////////////////////////////
1374   /// \ingroup RegisterLoggingStartNotification
1375   /// \~english @par Summary
1376   ///       API to set a callback function for CAN logging start notification.
1377   /// \~english @param [in] f_pCallBackFn
1378   ///        CbFuncPtr   - Callback function pointer for CAN logging start notification
1379   /// \~english @retval eFrameworkunifiedStatusOK Success
1380   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
1381   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1382   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1383   /// \~english @retval eFrameworkunifiedStatusInvldHndlType Invalid type of handle
1384   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1385   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1386   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1387   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1388   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1389   /// \~english @retval eFrameworkunifiedStatusErrOther Other error has occurred(Cannot access shared memory, etc.)
1390   /// \~english @par Preconditions
1391   ///       - SS_LoggerService process has been started.
1392   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
1393   ///       done.
1394   /// \~english @par Change of the internal state
1395   ///       - The internal state is not changed.
1396   /// \~english @par Causes of failures
1397   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusNullPointer]
1398   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusNullPointer]
1399   ///       - HANDLE (m_hApp) in the class member variables are not appropriate(which is invalid).
1400   ///       [eFrameworkunifiedStatusInvldParam]
1401   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1402   ///       - HANDLE (m_hSession) in the class member variables are not appropriate(which is invalid).
1403   ///       [eFrameworkunifiedStatusInvldHandle]
1404   ///       - Handle name of the session message queue is NULL to SS_LoggerService. [eFrameworkunifiedStatusInvldHandle]
1405   ///       - Message queue HANDLE of the session message to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1406   ///       - Message queue HANDLE of the session message to SS_LoggerService are not appropriate(which is invalid).
1407   ///       [eFrameworkunifiedStatusInvldHandle]
1408   ///       - It is not appropriate message queue name of the session message to SS_LoggerService(The name is NULL, more
1409   ///       than 20byte). [eFrameworkunifiedStatusInvldHandle]
1410   ///       - Is not a transmission type message queue type of the session message to SS_LoggerService.
1411   ///       [eFrameworkunifiedStatusInvldHndlType]
1412   ///       - Session message queue is full to SS_LoggerService. [eFrameworkunifiedStatusMsgQFull]
1413   ///       - It is invalid transmission file descriptor of the session message to SS_LoggerService.
1414   ///       [eFrameworkunifiedStatusErrNoEBADF]
1415   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message for
1416   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1417   ///       - Incorrect size of the transmit buffer of the session message to SS_LoggerService. [eFrameworkunifiedStatusInvldBufSize]
1418   ///       - Any errors occur during the transmission of a session message to SS_LoggerService. [eFrameworkunifiedStatusFail]
1419   ///       - It failed to shared memory access for transmission of the session message for SS_LoggerService.
1420   ///       [eFrameworkunifiedStatusErrOther]
1421   /// \~english @par Classification
1422   ///       Public
1423   /// \~english @par Type
1424   ///       Pub-Sub x Pub-Sub
1425   /// \~english @par Detail
1426   ///       Use the StartCANLogging, after the request of the start of the CAN logging operation, which is a method to
1427   ///       register a callback function to receive a notification of the start of the logging operation.\n
1428   ///       (Using API:FrameworkunifiedSubscribeToSessionEventWithCallback of Native Service, to register a Callback function for CAN
1429   ///       logging start notification.) \n
1430   ///       SS_LoggerService publish the logging start of CAN in the notification of eSSLoggerCANEventStart to
1431   ///       Subscribers.
1432   /// \~english @see  StartCANLogging, RegisterLoggingFinishNotification
1433   ////////////////////////////////////////////////////////////////////////////////////
1434     EFrameworkunifiedStatus RegisterLoggingStartNotification(CbFuncPtr f_pCallBackFn);
1435
1436   /////////////////////////////////////////////////////////////////////////////////////
1437   /// \ingroup RegisterLoggingFinishNotification
1438   /// \~english @par Summary
1439   ///       API to set a callback function for CAN logging finish notification.
1440   /// \~english @param [in] f_pCallBackFn
1441   ///        CbFuncPtr   - Callback function pointer for CAN logging finish notification
1442   /// \~english @retval eFrameworkunifiedStatusOK Success
1443   /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
1444   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1445   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1446   /// \~english @retval eFrameworkunifiedStatusInvldHndlType Invalid type of handle
1447   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1448   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1449   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1450   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1451   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1452   /// \~english @retval eFrameworkunifiedStatusErrOther Other error has occurred(Cannot access shared memory, etc.)
1453   /// \~english @par Preconditions
1454   ///       - SS_LoggerService process has been started.
1455   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop etc.) has been
1456   ///       done.
1457   /// \~english @par Change of the internal state
1458   ///       - The internal state is not changed.
1459   /// \~english @par Causes of failures
1460   ///       - HANDLES in the class member variables (m_hApp) is NULL. [eFrameworkunifiedStatusNullPointer]
1461   ///       - Callback function pointer specified by the argument is NULL. [eFrameworkunifiedStatusNullPointer]
1462   ///       - HANDLE (m_hApp) in the class member variables are not appropriate(which is invalid).
1463   ///       [eFrameworkunifiedStatusInvldParam]
1464   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1465   ///       - HANDLE (m_hSession) in the class member variables are not appropriate(which is invalid).
1466   ///       [eFrameworkunifiedStatusInvldHandle]
1467   ///       - Handle name of the session message queue is NULL to SS_LoggerService. [eFrameworkunifiedStatusInvldHandle]
1468   ///       - Message queue HANDLE of the session message to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1469   ///       - Message queue HANDLE of the session message to SS_LoggerService are not appropriate(which is invalid).
1470   ///       [eFrameworkunifiedStatusInvldHandle]
1471   ///       - It is not appropriate message queue name of the session message to SS_LoggerService(The name is NULL, more
1472   ///       than 20byte). [eFrameworkunifiedStatusInvldHandle]
1473   ///       - Is not a transmission type message queue type of the session message to SS_LoggerService.
1474   ///       [eFrameworkunifiedStatusInvldHndlType]
1475   ///       - Session message queue is full to SS_LoggerService. [eFrameworkunifiedStatusMsgQFull]
1476   ///       - It is invalid transmission file descriptor of the session message to SS_LoggerService.
1477   ///       [eFrameworkunifiedStatusErrNoEBADF]
1478   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message for
1479   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1480   ///       - Incorrect size of the transmit buffer of the session message to SS_LoggerService. [eFrameworkunifiedStatusInvldBufSize]
1481   ///       - Any errors occur during the transmission of a session message to SS_LoggerService. [eFrameworkunifiedStatusFail]
1482   ///       - It failed to shared memory access for transmission of the session message for SS_LoggerService.
1483   ///       [eFrameworkunifiedStatusErrOther]
1484   /// \~english @par Classification
1485   ///       Public
1486   /// \~english @par Type
1487   ///       Pub-Sub x Pub-Sub
1488   /// \~english @par Detail
1489   ///       Which is a method to register a callback function to receive a notification of the finish of the logging
1490   ///       operation.\n
1491   ///       (Using API:FrameworkunifiedSubscribeToSessionEventWithCallback of Native Service, to register a Callback function for CAN
1492   ///       logging finish notification.) \n
1493   ///       SS_LoggerService publish the logging finish of CAN in the notification of eSSLoggerCANEventFinished to
1494   ///       Subscribers.
1495   /// \~english @see  StartCANLogging, RegisterLoggingStartNotification
1496   ////////////////////////////////////////////////////////////////////////////////////
1497     EFrameworkunifiedStatus RegisterLoggingFinishNotification(CbFuncPtr f_pCallBackFn);
1498
1499   /////////////////////////////////////////////////////////////////////////////////////
1500   /// \ingroup StartDTCLoggingToEmmc
1501   /// \~english @par Summary
1502   ///       API to request the start of CAN logging to SS_LoggerService.
1503   /// \~english @param  None
1504   /// \~english @retval eFrameworkunifiedStatusOK Success
1505   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1506   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1507   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1508   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1509   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1510   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1511   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1512   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1513   /// \~english @par Preconditions
1514   ///       - SS_LoggerService process has been started.
1515   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1516   ///       done, and Availability of SS_LoggerService is TRUE.
1517   /// \~english @par Change of the internal state
1518   ///       - The internal state is not changed.
1519   /// \~english @par Causes of failures
1520   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1521   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1522   ///       [eFrameworkunifiedStatusNullPointer]
1523   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1524   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1525   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1526   ///       [eFrameworkunifiedStatusInvldHandle]
1527   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1528   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1529   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1530   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1531   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1532   ///       [eFrameworkunifiedStatusInvldBufSize]
1533   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1534   ///       [eFrameworkunifiedStatusFail]
1535   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1536   ///       [eFrameworkunifiedStatusErrOther]
1537   /// \~english @par Classification
1538   ///       Public
1539   /// \~english @par Type
1540   ///       Fire and Forget x Fire and Forget
1541   /// \~english @par Detail
1542   ///      Which is a method to request the start of CAN logging to SS_LoggerService. \n
1543   ///      This function is called by CAN at the time of the trigger of the error that occurred in the DTC. \n
1544   ///      Progress is published by notifications eSSLoggerCANEventStart, eSSLoggerCANEventError and
1545   ///      eSSLoggerCANEventFinished. \n
1546   ///      To send a message in the command ID of eSSLoggerCANProtocolIDDTCTrigger against SS_LoggerService. \n
1547   ///      SS_LoggerService sends a message in the command ID of eThrdCmdImmPersistEvtLog against the event log writing
1548   ///      thread. \n
1549   ///      Event log writing thread will immediately start with respect to the event log for Persistent.
1550   /// \~english @see  None
1551   ////////////////////////////////////////////////////////////////////////////////////
1552   EFrameworkunifiedStatus StartDTCLoggingToEmmc(UI_32 f_dtc);
1553
1554   /////////////////////////////////////////////////////////////////////////////////////
1555   /// \ingroup ClearEventLogs
1556   /// \~english @par Summary
1557   ///       API to request to clear the event log to SS_LoggerService.
1558   /// \~english @param  None
1559   /// \~english @retval eFrameworkunifiedStatusOK Success
1560   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1561   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1562   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1563   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1564   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1565   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1566   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1567   /// \~english @par Preconditions
1568   ///       - SS_LoggerService process has been started.
1569   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1570   ///       done, and Availability of SS_LoggerService is TRUE.
1571   /// \~english @par Change of the internal state
1572   ///       - The internal state is not changed.
1573   /// \~english @par Causes of failures
1574   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1575   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1576   ///       [eFrameworkunifiedStatusNullPointer]
1577   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1578   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1579   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1580   ///       [eFrameworkunifiedStatusInvldHandle]
1581   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1582   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1583   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1584   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1585   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1586   ///       [eFrameworkunifiedStatusInvldBufSize]
1587   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1588   ///       [eFrameworkunifiedStatusFail]
1589   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1590   ///       [eFrameworkunifiedStatusErrOther]
1591   /// \~english @par Classification
1592   ///       Public
1593   /// \~english @par Type
1594   ///       Fire and Forget x Pub-Sub
1595   /// \~english @par Detail
1596   ///      Which is a method to request to clear the event log to SS_LoggerService. \n
1597   ///      To send a message in the command ID of SS_LOGGERCLEAREVENT against SS_LoggerService. \n
1598   ///      SS_LoggerService sends a message in the command ID of eThrdCmdClearEvntLogs against the event log writing
1599   ///      thread. \n
1600   ///      Event log write thread, delete all the event logs that are queued in the log write waiting. \n
1601   ///      As a result of the clearing process of the event log, the message is notified to the caller of the API in the
1602   ///      command ID below.
1603   ///       - Success: SS_LOGGERCLEAREVENT_SUCCESS_RESP
1604   ///       - Failure: SS_LOGGERCLEAREVENT_ERROR_RESP
1605   /// \~english @see  None
1606   ////////////////////////////////////////////////////////////////////////////////////
1607   EFrameworkunifiedStatus ClearEventLogs(void);
1608
1609   /////////////////////////////////////////////////////////////////////////////////////
1610   /// \ingroup ReadStatisticalCounter
1611   /// \~english @par Summary
1612   ///       API to request a statistics counter reading of the event log to SS_LoggerService.
1613   /// \~english @param [in] eCounterGroup
1614   ///        EStatCounterGroupID   - Group ID of the statistics counter
1615   /// \~english @par
1616   ///            EStatCounterGroupID   enum value
1617   /// \~english @code
1618   ///            typedef enum  _ECounterGroupID
1619   ///            {
1620   ///                  STARTUP_SHUTDOWN_COUNTER_GROUP =0x01, /* Statistics counter group for StartUp/Shutdown    */
1621   ///                  APP_USAGE_COUNTER_GROUP,              /* Statistics counter group for application usage   */
1622   ///                  F_BLK_STABILITY_COUNTER_GROUP,        /* Do not use : Statistics counter for flash access */
1623   ///                  MAX_COUNTER_GROUP                     /* Max value of statistics counter group            */
1624   ///            }EStatCounterGroupID ;
1625   ///            @endcode
1626   /// \~english @retval eFrameworkunifiedStatusOK Success
1627   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1628   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1629   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1630   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1631   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1632   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1633   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1634   /// \~english @par Preconditions
1635   ///       - SS_LoggerService process has been started.
1636   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1637   ///       done, and Availability of SS_LoggerService is TRUE.
1638   /// \~english @par Change of the internal state
1639   ///       - The internal state is not changed.
1640   /// \~english @par Causes of failures
1641   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1642   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1643   ///       [eFrameworkunifiedStatusNullPointer]
1644   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1645   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1646   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1647   ///       [eFrameworkunifiedStatusInvldHandle]
1648   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1649   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1650   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1651   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1652   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1653   ///       [eFrameworkunifiedStatusInvldBufSize]
1654   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1655   ///       [eFrameworkunifiedStatusFail]
1656   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1657   ///       [eFrameworkunifiedStatusErrOther]
1658   /// \~english @par Classification
1659   ///       Public
1660   /// \~english @par Type
1661   ///       Method x Fire and Forget
1662   /// \~english @par Detail
1663   ///      Against SS_LoggerService, which is a method that requires a reading of the statistics counter corresponding
1664   ///      to the statistics counter groups in the event log. \n
1665   ///      To send a message in the command ID of SS_LOGGER_READ_STATL_COUNTER against SS_LoggerService. \n
1666   ///      SS_LoggerService sends a message in the command ID of eThrdCmdStatisticalCounter against the event log
1667   ///      writing thread. \n
1668   ///      Event log write thread read the statistics counter corresponding to the statistics counter groups in the
1669   ///      event log.  \n
1670   ///      As a result of the clearing process of the event log, the message is notified to the caller of the API in the
1671   ///      command ID below.
1672   ///       - Success: SS_LOGGER_READ_STATL_COUNTER_SUCCESS_RESP
1673   ///       - Failure: SS_LOGGER_READ_STATL_COUNTER_ERROR_RESP
1674   /// \~english @see  None
1675   ////////////////////////////////////////////////////////////////////////////////////
1676   EFrameworkunifiedStatus ReadStatisticalCounter(EStatCounterGroupID eCounterGroup);
1677
1678   /////////////////////////////////////////////////////////////////////////////////////
1679   /// \ingroup ResetStatisticalCounter
1680   /// \~english @par Summary
1681   ///       API to request the reset of statistics counters of the event log to SS_LoggerService.
1682   /// \~english @param [in] eCounterGroup
1683   ///        EStatCounterGroupID   - Group ID of the statistics counter
1684   /// \~english @par
1685   ///            EStatCounterGroupID   enum value
1686   /// \~english @code
1687   ///            typedef enum  _ECounterGroupID
1688   ///            {
1689   ///                  STARTUP_SHUTDOWN_COUNTER_GROUP =0x01, /* Statistics counter group for StartUp/Shutdown    */
1690   ///                  APP_USAGE_COUNTER_GROUP,              /* Statistics counter group for application usage   */
1691   ///                  F_BLK_STABILITY_COUNTER_GROUP,        /* Do not use : Statistics counter for flash access */
1692   ///                  MAX_COUNTER_GROUP                     /* Max value of statistics counter group            */
1693   ///            }EStatCounterGroupID ;
1694   ///            @endcode
1695   /// \~english @retval eFrameworkunifiedStatusOK Success
1696   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1697   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1698   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1699   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1700   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1701   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1702   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1703   /// \~english @par Preconditions
1704   ///       - SS_LoggerService process has been started.
1705   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1706   ///       done, and Availability of SS_LoggerService is TRUE.
1707   /// \~english @par Change of the internal state
1708   ///       - The internal state is not changed.
1709   /// \~english @par Causes of failures
1710   ///       - HANDLES in the class member variables (m_hSession) is NULL. [eFrameworkunifiedStatusInvldHandle]
1711   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1712   ///       [eFrameworkunifiedStatusNullPointer]
1713   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1714   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1715   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1716   ///       [eFrameworkunifiedStatusInvldHandle]
1717   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1718   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1719   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1720   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1721   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1722   ///       [eFrameworkunifiedStatusInvldBufSize]
1723   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1724   ///       [eFrameworkunifiedStatusFail]
1725   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1726   ///       [eFrameworkunifiedStatusErrOther]
1727   /// \~english @par Classification
1728   ///       Public
1729   /// \~english @par Type
1730   ///       Fire and Forget x Fire and Forget
1731   /// \~english @par Detail
1732   ///      Against SS_LoggerService, which is a method to reset the statistics counters corresponding to the statistics
1733   ///      counter groups in the event log. \n
1734   ///      To send a message in the command ID of SS_LOGGER_READ_STATL_COUNTER against SS_LoggerService. \n
1735   ///      SS_LoggerService sends a message in the command ID of eThrdCmdStatisticalCounter against the event log
1736   ///      writing thread. \n
1737   ///      Event log write thread reset the statistics counter corresponding to the statistics counter groups in the
1738   ///      event log.  \n
1739   ///      As a result of the clearing process of the event log, the message is notified to the caller of the API in the
1740   ///      command ID below.
1741   ///       - Success: SS_LOGGER_RESET_STATL_COUNTER_SUCCESS_RESP
1742   ///       - Failure: SS_LOGGER_RESET_STATL_COUNTER_ERROR_RESP
1743   /// \~english @see  None
1744   ////////////////////////////////////////////////////////////////////////////////////
1745   EFrameworkunifiedStatus ResetStatisticalCounter(EStatCounterGroupID eCounterGroup);
1746
1747   /////////////////////////////////////////////////////////////////////////////////////
1748   /// \ingroup LoggerIf_SetDiagID
1749   /// \~english @par Summary
1750   ///       API to send the diagnosis ID to SS_LoggerService.
1751   /// \~english @param  [in] f_u16DiagID
1752   ///        UI_16   - Diagnosis ID
1753   /// \~english @retval eFrameworkunifiedStatusOK Success
1754   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1755   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1756   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1757   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1758   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1759   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1760   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1761   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1762   /// \~english @par Preconditions
1763   ///       - SS_LoggerService process has been started.
1764   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1765   ///       done, and Availability of SS_LoggerService is TRUE.
1766   /// \~english @par Change of the internal state
1767   ///       - The internal state is not changed.
1768   /// \~english @par Causes of failures
1769   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusNullPointer]
1770   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1771   ///       [eFrameworkunifiedStatusNullPointer]
1772   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1773   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1774   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1775   ///       [eFrameworkunifiedStatusInvldHandle]
1776   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1777   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1778   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1779   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1780   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1781   ///       [eFrameworkunifiedStatusInvldBufSize]
1782   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1783   ///       [eFrameworkunifiedStatusFail]
1784   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1785   ///       [eFrameworkunifiedStatusErrOther]
1786   /// \~english @par Classification
1787   ///       Public
1788   /// \~english @par Type
1789   ///       Fire and Forget x Sync
1790   /// \~english @par Detail
1791   ///       It is a method to send the diagnosis ID to SS_LoggerService. \n
1792   ///       Send a message in the command ID of SS_LOGGER_SET_DIAGID to SS_LoggerService. \n
1793   ///       SS_LoggerService sets the diagnosis ID as a part of the suffix name of the event log storage file name.
1794   /// \~english @see  None
1795   ////////////////////////////////////////////////////////////////////////////////////
1796   EFrameworkunifiedStatus LoggerIf_SetDiagID(UI_16 f_u16DiagID);
1797
1798   /////////////////////////////////////////////////////////////////////////////////////
1799   /// \ingroup LoggerIf_UploadEventLog
1800   /// \~english @par Summary
1801   ///       API to request the upload of the event log to SS_LoggerService.
1802   /// \~english @param  None
1803   /// \~english @retval eFrameworkunifiedStatusOK Success
1804   /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
1805   /// \~english @retval eFrameworkunifiedStatusNullPointer Invalid pointer
1806   /// \~english @retval eFrameworkunifiedStatusMsgQFull Message queue is full
1807   /// \~english @retval eFrameworkunifiedStatusErrNoEBADF Invalid File-Descriptor
1808   /// \~english @retval eFrameworkunifiedStatusErrNoEINTR An interrupt is generated by the system call (signal)
1809   /// \~english @retval eFrameworkunifiedStatusInvldBufSize Invalid buffer-size
1810   /// \~english @retval eFrameworkunifiedStatusFail Some sort of error occurred
1811   /// \~english @retval eFrameworkunifiedStatusErrOther Other error(It failed to open/allocation of shared memory)
1812   /// \~english @par Preconditions
1813   ///       - SS_LoggerService process has been started.
1814   ///       - Generation/initialization of Dispatcher for the Application (FrameworkunifiedCreateDispatcherWithoutLoop) has been
1815   ///       done, and Availability of SS_LoggerService is TRUE.
1816   /// \~english @par Change of the internal state
1817   ///       - The internal state is not changed.
1818   /// \~english @par Causes of failures
1819   ///       - HANDLES in the class member variables (m_hService/m_hSession) is NULL. [eFrameworkunifiedStatusNullPointer]
1820   ///       - HANDLE in the class member variables (m_hSession) is not appropriate. (which is invalid)
1821   ///       [eFrameworkunifiedStatusNullPointer]
1822   ///       - SS_LoggerService message queue for the session is full. [eFrameworkunifiedStatusMsgQFull]
1823   ///       - Message Queue HANDLE for the session for SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1824   ///       - Message Queue HANDLE for the session for SS_LoggerService are not appropriate(which is invalid).
1825   ///       [eFrameworkunifiedStatusInvldHandle]
1826   ///       - Session message queue name to SS_LoggerService is NULL. [eFrameworkunifiedStatusInvldHandle]
1827   ///       - Is invalid transmission file descriptor of the session message to SS_LoggerService. [eFrameworkunifiedStatusErrNoEBADF]
1828   ///       - Interruption by the system call (signal) has occurred during the transmission of the session message to
1829   ///       SS_LoggerService. [eFrameworkunifiedStatusErrNoEINTR]
1830   ///       - It is an incorrect size of the transmit buffer of the session message to SS_LoggerService.
1831   ///       [eFrameworkunifiedStatusInvldBufSize]
1832   ///       - Some sort of error has occurred at the time of transmission of the session message to SS_LoggerService.
1833   ///       [eFrameworkunifiedStatusFail]
1834   ///       - It failed to shared memory access for transmission of the session message to SS_LoggerService.
1835   ///       [eFrameworkunifiedStatusErrOther]
1836   /// \~english @par Classification
1837   ///       Public
1838   /// \~english @par Type
1839   ///       Method x Fire and Forget
1840   /// \~english @par Detail
1841   ///       Which is a method to request the upload of the event log to SS_LoggerService. \n
1842   ///       Send a message in the command ID of SS_LOGGER_UPLOAD_EVENTLOG to SS_LoggerService. \n
1843   ///       SS_LoggerService sends a message in the command ID of eThrdCmdUploadEventLog against the event log writing
1844   ///       thread. \n
1845   ///       Event log write thread upload the event log in the interior of the buffer. \n
1846   ///       Upload a result, the message is notified in the command ID of SS_LOGGER_UPLOAD_EVENTLOG_RES to the caller of
1847   ///       the API.
1848   /// \~english @see  None
1849   ////////////////////////////////////////////////////////////////////////////////////
1850   EFrameworkunifiedStatus LoggerIf_UploadEventLog();
1851
1852  private:
1853   HANDLE OpenService();
1854   EFrameworkunifiedStatus SendMessage(UI_32 f_cmdID, UI_32 f_size, void* f_pData);
1855
1856   HANDLE   m_hApp;
1857   HANDLE  m_hService;
1858   HANDLE   m_hSession;
1859 };
1860
1861 #endif /* SS_LOGGER_SERVICE_IFC_H_ */  // NOLINT (build/header_guard)
1862
1863 /** @}*/  // end of logger_service
1864 /** @}*/  // end of SystemService
1865 /** @}*/  // end of BaseSystem