2 * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 * @file ss_power_service_if.h
19 * @brief \~english This file supports the Power Service client interface.
24 /** @addtogroup BaseSystem
27 /** @addtogroup system_service
31 /** @addtogroup power_service
32 * @ingroup system_service
36 #ifndef POWER_SERVICE_CLIENT_INCLUDE_SYSTEM_SERVICE_SS_POWER_SERVICE_IF_H_ // NOLINT (build/header_guard)
37 #define POWER_SERVICE_CLIENT_INCLUDE_SYSTEM_SERVICE_SS_POWER_SERVICE_IF_H_
39 #include "system_service/ss_power_service.h"
40 #include "system_service/ss_power_service_protocol.h"
43 ////////////////////////////////////////////////////////////////////////////////////////////
44 /// \ingroup OpenPowerService
45 /// \~english @par Summary
46 /// Obtain a handle for using the PowerService.
47 /// \~english @param [in] f_hApp
48 /// HANDLE - Application handle
49 /// \~english @retval Handle Success
50 /// \~english @retval NULL Failed
51 /// \~english @par Classification
53 /// \~english @par Type
54 /// Sync only(None communication)
55 /// \~english @par Detail
56 /// - The API creates a communication resource between
57 /// the user service and the PowerService
58 /// and returns a handle for using the PowerService.\n
60 /// - Include ss_power_service_ifc.h
61 /// - Library libSS_PowerServiceIf.so
64 ////////////////////////////////////////////////////////////////////////////////////////////
65 HANDLE OpenPowerService(HANDLE f_hApp);
67 ////////////////////////////////////////////////////////////////////////////////////////////
68 /// \ingroup ClosePowerService
69 /// \~english @par Summary
70 /// Free a handle for using PowerService.
71 /// \~english @param [in] f_hApp
72 /// HANDLE - Application handle
73 /// \~english @param [in] f_hService
74 /// HANDLE - PowerService handle
75 /// \~english @retval eFrameworkunifiedStatusOK Success
76 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
77 /// \~english @retval eFrameworkunifiedStatusFail Failed
78 /// \~english @par Classification
80 /// \~english @par Type
82 /// \~english @par Detail
83 /// - The API terminates the communication resource between
84 /// the user service and the PowerServiceand frees the given handle. \n
86 /// - Include ss_power_service_ifc.h
87 /// - Library libSS_PowerServiceIf.so
90 ////////////////////////////////////////////////////////////////////////////////////////////
91 EFrameworkunifiedStatus ClosePowerService(HANDLE f_hApp, HANDLE f_hService);
93 ////////////////////////////////////////////////////////////////////////////////////////////
94 /// \ingroup PwrServiceOpenSessionRequest
95 /// \~english @par Summary
96 /// Make the PowerService available.
97 /// \~english @param [in] f_hService
98 /// HANDLE - PowerService handle
99 /// \~english @param [in] f_eSessionType
100 /// EPWR_SESSION_TYPE - Session type
101 /// \~english @retval eFrameworkunifiedStatusOK Success
102 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
103 /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
104 /// \~english @retval eFrameworkunifiedStatusFail Failed
105 /// \~english @par Classification
107 /// \~english @par Type
108 /// Fire and Forget x Method
109 /// \~english @par Detail
110 /// - The API opens a session between the user service
111 /// and the PowerService and makes the PowerService available. \n
113 /// - Include ss_power_service_ifc.h
114 /// - Library libSS_PowerServiceIf.so
117 ////////////////////////////////////////////////////////////////////////////////////////////
118 EFrameworkunifiedStatus PwrServiceOpenSessionRequest(HANDLE f_hService,
119 EPWR_SESSION_TYPE f_eSessionType);
121 ////////////////////////////////////////////////////////////////////////////////////////////
122 /// \ingroup PwrServiceCloseSessionRequest
123 /// \~english @par Summary
124 /// End using the PowerService.
125 /// \~english @param [in] f_hService
126 /// HANDLE - PowerService handle
127 /// \~english @param [in] f_hSession
128 /// HANDLE - Session type
129 /// \~english @retval eFrameworkunifiedStatusOK Success
130 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
131 /// \~english @retval eFrameworkunifiedStatusFail Failed
132 /// \~english @par Classification
134 /// \~english @par Type
135 /// Fire and Forget x Method
136 /// \~english @par Detail
137 /// - The API closes the session between the user service
138 /// and the PowerService and terminatesthe PowerSerivce use. \n
140 /// - Include ss_power_service_ifc.h
141 /// - Library libSS_PowerServiceIf.so
144 ////////////////////////////////////////////////////////////////////////////////////////////
145 EFrameworkunifiedStatus PwrServiceCloseSessionRequest(HANDLE f_hService, HANDLE f_hSession);
147 ////////////////////////////////////////////////////////////////////////////////////////////
148 /// \ingroup PwrServiceDecodeOpenSessionResponse
149 /// \~english @par Summary
150 /// Obtain a handle for OpenSessionRequest response message.
151 /// \~english @param [in] f_hApp
152 /// HANDLE - Application handle
153 /// \~english @param [in] f_hSession
154 /// HANDLE& - Address of storing session handle
155 /// \~english @retval eFrameworkunifiedStatusOK Success
156 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
157 /// \~english @retval eFrameworkunifiedStatusNullPointer NULL Pointer
158 /// \~english @par Classification
160 /// \~english @par Type
161 /// Sync only(None communication)
162 /// \~english @par Detail
163 /// - The API obtains a handle for OpenSessionRequest
164 /// response message using the given application handle.\n
166 /// - Include ss_power_service_ifc.h
167 /// - Library libSS_PowerServiceIf.so
170 ////////////////////////////////////////////////////////////////////////////////////////////
171 EFrameworkunifiedStatus PwrServiceDecodeOpenSessionResponse(HANDLE f_hApp,
172 HANDLE& f_hSession); // NOLINT (runtime/references)
174 ////////////////////////////////////////////////////////////////////////////////////////////
175 /// \ingroup PwrServiceSetVoltageState
176 /// \~english @par Summary
177 /// Set power supply state.
178 /// \~english @param [in] f_hSession
179 /// HANDLE - Session handle
180 /// \~english @param [in] f_eVoltage_state
181 /// EPWR_VOLTAGE_STATE_TYPE - Power supply status value
183 /// - Power supply status value
185 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
186 /// <tr><td>epsvsINVALID</td><td>0xFF</td></tr>
187 /// <tr><td>epsvsNORMAL</td><td>0x20</td></tr>
188 /// <tr><td>epsvsLVI1</td><td>0x22</td></tr>
189 /// <tr><td>epsvsLVI2</td><td>0x24</td></tr>
191 /// \~english @retval eFrameworkunifiedStatusOK Success
192 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
193 /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
194 /// \~english @retval eFrameworkunifiedStatusFail Failed
195 /// \~english @par Classification
197 /// \~english @par Type
199 /// \~english @par Detail
200 /// - The API sets power supply state to the PowerService. \n
202 /// - Include ss_power_service_ifc.h
203 /// - Library libSS_PowerServiceIf.so
206 ////////////////////////////////////////////////////////////////////////////////////////////
207 EFrameworkunifiedStatus PwrServiceSetVoltageState(HANDLE f_hSession,
208 EPWR_VOLTAGE_STATE_TYPE f_eVoltage_state);
210 ////////////////////////////////////////////////////////////////////////////////////////////
211 /// \ingroup PwrServiceSetCrankState
212 /// \~english @par Summary
214 /// \~english @param [in] f_hSession
215 /// HANDLE - Session handle
216 /// \~english @param [in] f_eCrank_state
217 /// EPWR_CRANK_STATE_TYPE - Crank state value
219 /// - Crank state value
221 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
222 /// <tr><td>epscsINVALID</td><td>0xFF</td></tr>
223 /// <tr><td>epscsENTRY</td><td>0xA0</td></tr>
224 /// <tr><td>epscsEXIT</td><td>0xA2</td></tr>
226 /// \~english @retval eFrameworkunifiedStatusOK Success
227 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
228 /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
229 /// \~english @retval eFrameworkunifiedStatusFail Failed
230 /// \~english @par Classification
232 /// \~english @par Type
233 /// Fire and Forget only
234 /// \~english @par Detail
235 /// - The API sets crank state to the PowerService.\n
237 /// - Include ss_power_service_ifc.h
238 /// - Library libSS_PowerServiceIf.so
241 ////////////////////////////////////////////////////////////////////////////////////////////
242 EFrameworkunifiedStatus PwrServiceSetCrankState(HANDLE f_hSession,
243 EPWR_CRANK_STATE_TYPE f_eCrank_state);
245 ////////////////////////////////////////////////////////////////////////////////////////////
246 /// \ingroup PwrServiceSystemModeInfoRequest
247 /// \~english @par Summary
248 /// Request to obtain the system mode information.
249 /// \~english @param [in] f_hSession
250 /// HANDLE - Session handle
251 /// \~english @retval eFrameworkunifiedStatusOK Success
252 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
253 /// \~english @retval eFrameworkunifiedStatusFail Failed
254 /// \~english @par Classification
256 /// \~english @par Type
258 /// \~english @par Detail
259 /// - The API requests the PowerService to obtain
260 /// the system mode information.\n
262 /// - Include ss_power_service_ifc.h
263 /// - Library libSS_PowerServiceIf.so
266 ////////////////////////////////////////////////////////////////////////////////////////////
267 EFrameworkunifiedStatus PwrServiceSystemModeInfoRequest(HANDLE f_hSession);
269 ////////////////////////////////////////////////////////////////////////////////////////////
270 /// \ingroup PwrServiceSendInitCompReport
271 /// \~english @par Summary
272 /// Send an initialize complete response.
273 /// \~english @param [in] f_hSession
274 /// HANDLE - Session handle
275 /// \~english @retval eFrameworkunifiedStatusOK Success
276 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
277 /// \~english @retval eFrameworkunifiedStatusFail Failed
278 /// \~english @par Classification
280 /// \~english @par Type
281 /// Fire and Forgeat x Fire and Forget
282 /// \~english @par Detail
283 /// - The API sends an initialize complete response to the PowerService.\n
285 /// - Include ss_power_service_ifc.h
286 /// - Library libSS_PowerServiceIf.so
289 ////////////////////////////////////////////////////////////////////////////////////////////
290 EFrameworkunifiedStatus PwrServiceSendInitCompReport(HANDLE f_hSession);
292 ////////////////////////////////////////////////////////////////////////////////////////////
293 /// \ingroup PwrServiceSendSetShutdownPopupRequest
294 /// \~english @par Summary
295 /// Obtain shutdown state.
296 /// \~english @param [in] f_hSession
297 /// HANDLE - Session handle
298 /// \~english @param [in] f_eShutdownPopup
299 /// EPWR_SHUTDOWN_POPUP_TYPE - Shutdown state
300 /// \~english @retval eFrameworkunifiedStatusOK Success
301 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
302 /// \~english @retval eFrameworkunifiedStatusInvldParam Invalid parameter
303 /// \~english @retval eFrameworkunifiedStatusFail Failed
304 /// \~english @par Classification
306 /// \~english @par Type
308 /// \~english @par Detail
309 /// - The API obtains the shutdown state from the PowerService. \n
311 /// - Include ss_power_service_ifc.h
312 /// - Library libSS_PowerServiceIf.so
315 ////////////////////////////////////////////////////////////////////////////////////////////
316 EFrameworkunifiedStatus PwrServiceSendSetShutdownPopupRequest(HANDLE f_hSession,
317 EPWR_SHUTDOWN_POPUP_TYPE f_eShutdownPopup);
319 ////////////////////////////////////////////////////////////////////////////////////////////
320 /// \ingroup PwrServiceSendStartupConfirmationMsgRequest
321 /// \~english @par Summary
322 /// Send startup confirmation request.
323 /// \~english @param [in] f_hSession
324 /// HANDLE - Session handle
325 /// \~english @param [in] f_eState
326 /// EPWR_SC_MSG_STRUCT
327 /// - Address of the structure for startup confirmation request message
329 /// - Structure for startup confirmation request message
332 /// EPWR_SC__CWORD56__BOOT_MODE_TYPE _CWORD56_BootMode;
333 /// EPWR_SC_WAKEUP_TYPE wakeupType;
334 /// EPWR_SC_COLD_START_REQ_TYPE coldStartRequest;
335 /// EPWR_SC_SECURITY_STATUS securityStatus;
337 /// UI_32 matchedHardwareType;
338 /// UI_32 softwareType;
340 /// UI_32 majorVersion;
341 /// UI_32 minorVersion;
342 /// UI_32 SWVersionYear;
343 /// UI_32 SWVersionWeek;
344 /// UI_32 SWVersionPatchLevel;
345 /// } StartupConfirmationMsgStrut, EPWR_SC_MSG_STRUCT;
348 /// - EPWR_SC__CWORD56__BOOT_MODE_TYPE
350 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
351 /// <tr><td>eps_CWORD56_bmINVALID</td><td>0xFF</td></tr>
352 /// <tr><td>eps_CWORD56_bmAPPLICATION_MODE</td><td>0x00</td></tr>
353 /// <tr><td>eps_CWORD56_bmPROGRAMMING_MODE</td><td>0x08</td></tr>
356 /// - EPWR_SC_WAKEUP_TYPE
358 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
359 /// <tr><td>epsstINVALID</td><td>0xFF</td></tr>
360 /// <tr><td>epsstWARMSTART</td><td>0x00</td></tr>
361 /// <tr><td>epsstCOLDSTART</td><td>0x01</td></tr>
364 /// - EPWR_SC_COLD_START_REQ_TYPE
366 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
367 /// <tr><td>epsscrtINVALID</td><td>0xFF</td></tr>
368 /// <tr><td>epsscrtNOT_REQUIRED</td><td>0x00</td></tr>
369 /// <tr><td>epsscrtREQUIRED</td><td>0x01</td></tr>
372 /// - EPWR_SC_SECURITY_STATUS
374 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
375 /// <tr><td>epsssINVALID</td><td>0xFF</td></tr>
376 /// <tr><td>epsssUNLOCK</td><td>0x00</td></tr>
377 /// <tr><td>epsssLOCK</td><td>0x01</td></tr>
380 /// \~english @retval eFrameworkunifiedStatusOK Success
381 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
382 /// \~english @retval eFrameworkunifiedStatusFail Failed
383 /// \~english @par Classification
385 /// \~english @par Type
386 /// Fire and Forget x Fire and Forget
387 /// \~english @par Detail
388 /// - The API sends a startup confirmation request to the PowerService.\n
390 /// - Include ss_power_service_ifc.h
391 /// - Library libSS_PowerServiceIf.so
394 ////////////////////////////////////////////////////////////////////////////////////////////
395 EFrameworkunifiedStatus PwrServiceSendStartupConfirmationMsgRequest(HANDLE f_hSession
396 , EPWR_SC_MSG_STRUCT f_eState);
398 ////////////////////////////////////////////////////////////////////////////////////////////
399 /// \ingroup PwrServiceSendPowerRequest
400 /// \~english @par Brief
401 /// Send power request.
402 /// \~english @param [in] f_hSession
403 /// HANDLE - Session handle
404 /// \~english @param [in] f_eState
405 /// \ref PowerRequestMsgStrutWithUMCR "EPWR_POWER_REQUEST_MSG_STRUCT_WITH_UMCR&" - Address of the structure for power request message
408 /// Of the eight elements of the \ref PowerRequestMsgStrutWithUMCR "EPWR_POWER_REQUEST_MSG_STRUCT_WITH_UMCR" structure, five elements set fixed values.\n
409 /// startupType = \ref epsprm_CWORD102_si_CWORD102__STARTUP_NORMAL\n
410 /// openingType = \ref epsprmotTIMING_TYPE_1\n
411 /// lastUserMode = \ref epsumON\n
412 /// manResetInfo = \ref epsprmriNORMAL\n
413 /// lastSystemRetentionReq = \ref epsprlsrrLAST_SYSTEM_OFF\n
415 /// For the following, set different values at system startup and shutdown.\n
416 /// (Element name) = (Startup settings or Shutdown settings)\n
417 /// startupReason = (\ref epswfIGN_ACC or \ref epswfINVALID)\n
418 /// userMode = (\ref epsumON or \ref epsumOFF)\n
420 /// For the following, set different values at power state transition.\n
422 /// <tr bgcolor="black"><th>Element name</th><th>Power state</th><th>Value</th></tr>
423 /// <tr><td rowspan=7>userModeChangeReason</td><tr><td>Not Available</td><td>\ref epsumcrNOT_AVAILABLE</td></tr>
424 /// <tr><td> </td><td>\ref epsumcrON_KEY</td></tr>
425 /// <tr><td>Parking(+B)</td><td>\ref epsumcrPARKING_B</td></tr>
426 /// <tr><td>Pre-boot(+BA)</td> <td>\ref epsumcrPRE_BA</td></tr>
427 /// <tr><td>Normal-boot</td> <td>\ref epsumcrNORMAL</td></tr>
428 /// <tr><td>Background-boot(+BA)</td> <td>\ref epsumcrBACKGROUND_BA</td></tr>
431 /// \~english @retval eFrameworkunifiedStatusOK Success
432 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
433 /// \~english @retval eFrameworkunifiedStatusFail Failed
434 /// \~english @par Prerequisite
436 /// \~english @par Change of internal state
438 /// \~english @par Conditions of processing failure
439 /// - When the session handle (f_hSession) specified by the argument is NULL. [eFrameworkunifiedStatusInvldHandle]
440 /// - The process fails for some reason. [eFrameworkunifiedStatusFail]
441 /// \~english @par Classification
443 /// \~english @par Type
445 /// \~english @par Detail
446 /// - The API send a power request to the PowerService.\n
448 /// - Include ss_power_service_ifc.h
449 /// - Library libSS_PowerServiceIf.so
452 ////////////////////////////////////////////////////////////////////////////////////////////
453 EFrameworkunifiedStatus PwrServiceSendPowerRequest(HANDLE f_hSession,
454 EPWR_POWER_REQUEST_MSG_STRUCT_WITH_UMCR& f_eState);
457 ////////////////////////////////////////////////////////////////////////////////////////////
458 /// \ingroup PwrServiceSendShutdownRequest
459 /// \~english @par Summary
460 /// Send shutdown request.
461 /// \~english @param [in] f_hSession
462 /// HANDLE - Session handle
463 /// \~english @param [in] f_eState
464 /// EPWR_SHUTDOWN_REQUEST_MSG_STRUCT&
465 /// - Address of the structure for shutdown request message
467 /// - Structure for shutdown request message
470 /// EPWR_ONS_TYPE ONS_Type;
471 /// EPWR_SHUTDOWN_TRIGGER_TYPE shutdownTrigger;
472 /// EPWR_USER_MODE_TYPE lastUserMode;
473 /// EPWR_TRANSPORT_MODE_TYPE transportMode;
474 /// EPWR_PROD_MODE_TYPE productionMode;
475 /// EPWR_LHC_TYPE limpHomeCutoffRequest;
476 /// } ShutdownRequestMsgStrut, EPWR_SHUTDOWN_REQUEST_MSG_STRUCT
481 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
482 /// <tr><td>epssdmonsINVALID</td><td>0xFF</td></tr>
483 /// <tr><td>epssdmonsNO_ONS</td><td>0x00</td></tr>
484 /// <tr><td>epssdmonsONS</td><td>0x01</td></tr>
487 /// - EPWR_SHUTDOWN_TRIGGER_TYPE
489 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
490 /// <tr><td>epssdmsdtINVALID</td><td>0xFF</td></tr>
491 /// <tr><td>epssdmsdtTESTACC_OFF</td><td>0x00</td></tr>
492 /// <tr><td>epssdmsdtON_KEY</td><td>0x01</td></tr>
493 /// <tr><td>epssdmsdtIGN_LOCK</td><td>0x02</td></tr>
494 /// <tr><td>epssdmsdtPWR_SAVE</td><td>0x03</td></tr>
495 /// <tr><td>epssdmsdtTMP_STARTUP</td><td>0x04</td></tr>
496 /// <tr><td>epssdmsdtDIAG_DEACTIVATION</td><td>0x05</td></tr>
497 /// <tr><td>epssdmsdtABNORMAL_VOLTAGE</td><td>0x06</td></tr>
498 /// <tr><td>epssdmsdtABNORMAL_TEMP</td><td>0x07</td></tr>
499 /// <tr><td>epssdmsdtBATTERYCUTOFF</td><td>0x08</td></tr>
500 /// <tr><td>epssdmsdtLIMPHOME</td><td>0x09</td></tr>
501 /// <tr><td>epssdmsdtHU_CAN_ERROR</td><td>0x0A</td></tr>
502 /// <tr><td>epssdmsdtBODY_CAN_ERROR</td><td>0x0B</td></tr>
503 /// <tr><td>epssdmsdtTRANSPORT_MODE</td><td>0x0C</td></tr>
504 /// <tr><td>epssdmsdtPRODUCTION_MODE</td><td>0x0D</td></tr>
505 /// <tr><td>epssdmsdtIGN_OFF</td><td>0x0E</td></tr>
506 /// <tr><td>epssdmsdtGENERIC_ERROR_RESET</td><td>0x0F</td></tr>
507 /// <tr><td>epssdmsdtFATAL_ERROR_RESET</td><td>0x10</td></tr>
508 /// <tr><td>epssdmsdtUSER_DATA_RESET</td><td>0x11</td></tr>
509 /// <tr><td>epssdmsdtFACTORY_DATA_RESET</td><td>0x12</td></tr>
510 /// <tr><td>epssdmsdtFAST_SLEEP_MODE</td><td>0x13</td></tr>
511 /// <tr><td>epssdmsdtNORMAL_RESET</td><td>0x14</td></tr>
512 /// <tr><td>epssdmsdtPROGUPDATE_RESET</td><td>0x15</td></tr>
515 /// - EPWR_USER_MODE_TYPE
517 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
518 /// <tr><td>epsumINVALID</td><td>0xFF</td></tr>
519 /// <tr><td>epsumOFF</td><td>0x00</td></tr>
520 /// <tr><td>epsumON</td><td>0x01</td></tr>
523 /// - EPWR_TRANSPORT_MODE_TYPE
525 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
526 /// <tr><td>epstmINVALID</td><td>0xFF</td></tr>
527 /// <tr><td>epstmDISABLED</td><td>0x00</td></tr>
528 /// <tr><td>epstmENABLED</td><td>0x01</td></tr>
531 /// - EPWR_PROD_MODE_TYPE
533 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
534 /// <tr><td>epspmINVALID</td><td>0xFF</td></tr>
535 /// <tr><td>epspmDISABLED</td><td>0x00</td></tr>
536 /// <tr><td>epspmENABLED</td><td>0x01</td></tr>
541 /// <tr bgcolor="black"><th>Name</th><th>Value</th></tr>
542 /// <tr><td>epslhcINVALID</td><td>0xFF</td></tr>
543 /// <tr><td>epslhcDISABLED</td><td>0x00</td></tr>
544 /// <tr><td>epslhcENABLED</td><td>0x01</td></tr>
547 /// \~english @retval eFrameworkunifiedStatusOK Success
548 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
549 /// \~english @retval eFrameworkunifiedStatusFail Failed
550 /// \~english @par Classification
552 /// \~english @par Type
554 /// \~english @par Detail
555 /// - The API sends shutdown request to the PowerService.\n
557 /// - Include ss_power_service_ifc.h
558 /// - Library libSS_PowerServiceIf.so
561 ////////////////////////////////////////////////////////////////////////////////////////////
562 EFrameworkunifiedStatus PwrServiceSendShutdownRequest(
564 , EPWR_SHUTDOWN_REQUEST_MSG_STRUCT &f_eState); // NOLINT (runtime/references)
566 ////////////////////////////////////////////////////////////////////////////////////////////
567 /// \ingroup PwrServiceSendHeartBeatRequest
568 /// \~english @par Summary
569 /// Send a request for HeartBeat monitoring start.
570 /// \~english @param [in] f_hSession
571 /// HANDLE - Session handle
572 /// \~english @param [in] f_eHbReqMsg
573 /// EPWR_HB_REQ_MSG_STRUCT*
574 /// - Address of the structure for HeartBeat monitoring start request message
576 /// - Structure for HeartBeat monitoring start request message
579 /// UI_8 IntervalSec;
580 /// } EPWR_HB_REQ_MSG_STRUCT;
583 /// \~english @retval eFrameworkunifiedStatusOK Success
584 /// \~english @retval eFrameworkunifiedStatusInvldHandle Invalid handle
585 /// \~english @retval eFrameworkunifiedStatusFail Failed
586 /// \~english @par Classification
588 /// \~english @par Type
590 /// \~english @par Detail
591 /// - The API sends HeartBeat monitoring start\n
592 /// request to the PowerService\n
593 /// - Include ss_power_service_ifc.h
594 /// - Library libSS_PowerServiceIf.so
597 ////////////////////////////////////////////////////////////////////////////////////////////
598 EFrameworkunifiedStatus PwrServiceSendHeartBeatRequest(
600 EPWR_HB_REQ_MSG_STRUCT *f_eHbReqMsg);
602 #endif // POWER_SERVICE_CLIENT_INCLUDE_SYSTEM_SERVICE_SS_POWER_SERVICE_IF_H_ // NOLINT (build/header_guard)
604 /** @}*/ // end of PowerService
605 /** @}*/ // end of SystemService
606 /** @}*/ // end of BaseSystem