• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef DEVICEINFO_CSDK_H
17 #define DEVICEINFO_CSDK_H
18 
19 #ifdef __cplusplus
20 #if __cplusplus
21 extern "C" {
22 #endif
23 #endif
24 
25 /**
26  * Obtains the device type represented by a string,
27  * which can be {@code phone} (or {@code default} for phones), {@code wearable}, {@code liteWearable},
28  * {@code tablet}, {@code tv}, {@code car}, or {@code smartVision}.
29  * @syscap SystemCapability.Startup.SystemInfo
30  * @since 10
31  */
32 const char *OH_GetDeviceType(void);
33 
34 /**
35  * Obtains the device manufacturer represented by a string.
36  * @syscap SystemCapability.Startup.SystemInfo
37  * @since 10
38  */
39 const char *OH_GetManufacture(void);
40 
41 /**
42  * Obtains the device brand represented by a string.
43  * @syscap SystemCapability.Startup.SystemInfo
44  * @since 10
45  */
46 const char *OH_GetBrand(void);
47 
48 /**
49  * Obtains the product name speaded in the market
50  * @syscap SystemCapability.Startup.SystemInfo
51  * @since 10
52  */
53 const char *OH_GetMarketName(void);
54 
55 /**
56  * Obtains the product series represented by a string.
57  * @syscap SystemCapability.Startup.SystemInfo
58  * @since 10
59  */
60 const char *OH_GetProductSeries(void);
61 
62 /**
63  * Obtains the product model represented by a string.
64  * @syscap SystemCapability.Startup.SystemInfo
65  * @since 10
66  */
67 const char *OH_GetProductModel(void);
68 
69 /**
70  * Obtains the software model represented by a string.
71  * @syscap SystemCapability.Startup.SystemInfo
72  * @since 10
73  */
74 const char *OH_GetSoftwareModel(void);
75 
76 /**
77  * Obtains the hardware model represented by a string.
78  * @syscap SystemCapability.Startup.SystemInfo
79  * @since 10
80  */
81 const char *OH_GetHardwareModel(void);
82 
83 /**
84  * Obtains the bootloader version number represented by a string.
85  * @syscap SystemCapability.Startup.SystemInfo
86  * @since 10
87  */
88 const char *OH_GetBootloaderVersion(void);
89 
90 /**
91  * Obtains the application binary interface (Abi) list represented by a string.
92  * @syscap SystemCapability.Startup.SystemInfo
93  * @since 10
94  */
95 const char *OH_GetAbiList(void);
96 
97 /**
98  * Obtains the security patch tag represented by a string.
99  * @syscap SystemCapability.Startup.SystemInfo
100  * @since 10
101  */
102 const char *OH_GetSecurityPatchTag(void);
103 
104 /**
105  * Obtains the product version displayed for customer represented by a string.
106  * @syscap SystemCapability.Startup.SystemInfo
107  * @since 10
108  */
109 const char *OH_GetDisplayVersion(void);
110 
111 /**
112  * Obtains the incremental version represented by a string.
113  * @syscap SystemCapability.Startup.SystemInfo
114  * @since 10
115  */
116 const char *OH_GetIncrementalVersion(void);
117 
118 /**
119  * Obtains the OS release type represented by a string.
120  *
121  * <p>The OS release category can be {@code Release}, {@code Beta}, or {@code Canary}.
122  * The specific release type may be {@code Release}, {@code Beta1}, or others alike.
123  * @syscap SystemCapability.Startup.SystemInfo
124  * @since 10
125  */
126 const char *OH_GetOsReleaseType(void);
127 
128 /**
129  * Obtains the OS full version name represented by a string.
130  * @syscap SystemCapability.Startup.SystemInfo
131  * @since 10
132  */
133 const char *OH_GetOSFullName(void);
134 
135 /**
136  * Obtains the SDK API version number.
137  * @syscap SystemCapability.Startup.SystemInfo
138  * @since 10
139  */
140 int OH_GetSdkApiVersion(void);
141 
142 /**
143  * Obtains the first API version number.
144  * @syscap SystemCapability.Startup.SystemInfo
145  * @since 10
146  */
147 int OH_GetFirstApiVersion(void);
148 
149 /**
150  * Obtains the version ID by a string.
151  * @syscap SystemCapability.Startup.SystemInfo
152  * @since 10
153  */
154 const char *OH_GetVersionId(void);
155 
156 /**
157  * Obtains the build type of the current running OS.
158  * @syscap SystemCapability.Startup.SystemInfo
159  * @since 10
160  */
161 const char *OH_GetBuildType(void);
162 
163 /**
164  * Obtains the build user of the current running OS.
165  * @syscap SystemCapability.Startup.SystemInfo
166  * @since 10
167  */
168 const char *OH_GetBuildUser(void);
169 
170 /**
171  * Obtains the build host of the current running OS.
172  * @syscap SystemCapability.Startup.SystemInfo
173  * @since 10
174  */
175 const char *OH_GetBuildHost(void);
176 
177 /**
178  * Obtains the build time of the current running OS.
179  * @syscap SystemCapability.Startup.SystemInfo
180  * @since 10
181  */
182 const char *OH_GetBuildTime(void);
183 
184 /**
185  * Obtains the version hash of the current running OS.
186  * @syscap SystemCapability.Startup.SystemInfo
187  * @since 10
188  */
189 const char *OH_GetBuildRootHash(void);
190 
191 /**
192  * Obtains the Distribution OS name represented by a string.
193  *
194  * <p>Independent Software Vendor (ISV) may distribute OHOS with their own OS name.
195  * If ISV not specified, it will return an empty string
196  * @syscap SystemCapability.Startup.SystemInfo
197  * @since 10
198  */
199 const char *OH_GetDistributionOSName(void);
200 
201 /**
202  * Obtains the ISV distribution OS version represented by a string.
203  * If ISV not specified, it will return the same value as OH_GetOSFullName
204  * @syscap SystemCapability.Startup.SystemInfo
205  * @since 10
206  */
207 const char *OH_GetDistributionOSVersion(void);
208 
209 /**
210  * Obtains the ISV distribution OS api version represented by a integer.
211  * If ISV not specified, it will return the same value as OH_GetSdkApiVersion
212  * @syscap SystemCapability.Startup.SystemInfo
213  * @since 10
214  */
215 int OH_GetDistributionOSApiVersion(void);
216 
217 /**
218  * Obtains the ISV distribution OS release type represented by a string.
219  * If ISV not specified, it will return the same value as OH_GetOsReleaseType
220  * @syscap SystemCapability.Startup.SystemInfo
221  * @since 10
222  */
223 const char *OH_GetDistributionOSReleaseType(void);
224 
225 #ifdef __cplusplus
226 #if __cplusplus
227 }
228 #endif
229 #endif
230 #endif
231