Init basesystem source codes.
[staging/basesystem.git] / nsframework / framework_unified / client / include / native_service / ns_mc_system_info.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 /// \ingroup  tag_NSMessageCenter
19 /// \brief    Native Services Special Interfaces
20 ///
21 ///
22 ///
23 ///////////////////////////////////////////////////////////////////////////////
24
25 #ifndef FRAMEWORK_UNIFIED_CLIENT_INCLUDE_NS_MC_SYSTEM_INFO_H_
26 #define FRAMEWORK_UNIFIED_CLIENT_INCLUDE_NS_MC_SYSTEM_INFO_H_
27
28
29 #include <native_service/ns_msgs.h>
30
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 ////////////////////////////////////////////////////////////////////////////////////////////
35 /// \ingroup tag_NSMessageCenter
36 /// McSendWithSysInfo
37 /// Sends data to a message queue, user defined system info.
38 ///
39 /// \param [in] hMessage
40 ///         HANDLE - handle to the send message queue, McOpenSender
41 /// \param [in] source
42 ///     LPCSTR - app (You) the sender
43 /// \param [in] cmd
44 ///     UI_32 - command id aka the message that's being sent
45 /// \param [in] sysInfo
46 ///          PCHAR -  pointer to sysInfo data that will be placed in the header of the message.
47 /// \param [in] length
48 ///          UI_32 -  length of the data buffer provided
49 /// \param [in] data
50 ///          void* -  pointer to the data to be sent
51 ///
52 /// \return EFrameworkunifiedStatus
53 ///         status -
54 ///       indicates if the message was sent successfully
55 ///       success >> (eFrameworkunifiedStatusOK)
56 ///       failure >> (anything else)
57 ////////////////////////////////////////////////////////////////////////////////////////////
58 EFrameworkunifiedStatus McSendWithSysInfo(HANDLE hMessage, PCSTR source, UI_32 cmd, PCHAR sysInfo, UI_32 length, PCVOID data,
59                              UI_32 sessionid);
60
61 // EFrameworkunifiedStatus McSendWithSysInfoWithSession(HANDLE hMessage, PCSTR source,
62 // UI_32 cmd, PCHAR sysInfo, UI_32 length, PCVOID data, UI_32 sessionid);
63
64
65
66
67 ////////////////////////////////////////////////////////////////////////////////////////////
68 /// \ingroup tag_NSMessageCenter
69 /// McSendWithSysInfo
70 /// Sends data to a message queue, user defined system info.
71 ///
72 /// \param [in] hMessage
73 ///         HANDLE - handle to the send message queue, McOpenSender
74 /// \param [in] source
75 ///     LPCSTR - app (You) the sender
76 /// \param [in] cmd
77 ///     UI_32 - command id aka the message that's being sent
78 /// \param [in] sysInfo
79 ///          PCHAR -  pointer to sysInfo data that will be placed in the header of the message.
80 /// \param [in] length
81 ///          UI_32 -  length of the data buffer provided
82 /// \param [in] data
83 ///          void* -  pointer to the data to be sent
84 /// \param [in] priority
85 ///          EFrameworkunifiedMessagePriorties - various Message Priorities that a process can assign.
86 ///
87 /// \return EFrameworkunifiedStatus
88 ///         status -
89 ///       indicates if the message was sent successfully
90 ///       success >> (eFrameworkunifiedStatusOK)
91 ///       failure >> (anything else)
92 ////////////////////////////////////////////////////////////////////////////////////////////
93 EFrameworkunifiedStatus McSendPrioWithSysInfo(HANDLE hMessage, PCSTR source, UI_32 cmd, PCSTR sysInfo, UI_32 length, PCVOID data,
94                                  EFrameworkunifiedMessagePriorties priority, UI_32 sessionid);
95
96 // EFrameworkunifiedStatus McSendPrioWithSysInfoWithSession(HANDLE hMessage, PCSTR source,
97 // UI_32 cmd, PCSTR sysInfo, UI_32 length, PCVOID data, EFrameworkunifiedMessagePriorties priority, UI_32 sessionid);
98
99 #ifdef __cplusplus
100 }
101 #endif
102
103 #endif  // FRAMEWORK_UNIFIED_CLIENT_INCLUDE_NS_MC_SYSTEM_INFO_H_