• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# utd.h
2<!--Kit: ArkData-->
3<!--Subsystem: DistributedDataManager-->
4<!--Owner: @jcwen-->
5<!--Designer: @junathuawei1; @zph000-->
6<!--Tester: @lj_liujing; @yippo; @logic42-->
7<!--Adviser: @ge-yafang-->
8
9## 概述
10
11提供标准化数据类型描述相关接口和数据结构。
12
13**引用文件:** <database/udmf/utd.h>
14
15**库:** libudmf.so
16
17**系统能力:** SystemCapability.DistributedDataManager.UDMF.Core
18
19**起始版本:** 12
20
21**相关模块:** [UDMF](capi-udmf.md)
22
23## 汇总
24
25### 结构体
26
27| 名称                     | typedef关键字 | 描述                 |
28| ------------------------ | ------------- | -------------------- |
29| [OH_Utd](capi-udmf-oh-utd.md) | OH_Utd        | 统一数据类型描述符。 |
30
31### 函数
32
33| 名称                                                         | 描述                                                         |
34| ------------------------------------------------------------ | ------------------------------------------------------------ |
35| [OH_Utd* OH_Utd_Create(const char* typeId)](#oh_utd_create)  | 创建统一数据类型[OH_Utd](capi-udmf-oh-utd.md)指针及实例对象。     |
36| [void OH_Utd_Destroy(OH_Utd* pThis)](#oh_utd_destroy)        | 销毁统一数据类型[OH_Utd](capi-udmf-oh-utd.md)指针指向的实例对象。 |
37| [const char* OH_Utd_GetTypeId(OH_Utd* pThis)](#oh_utd_gettypeid) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的类型ID。         |
38| [const char* OH_Utd_GetDescription(OH_Utd* pThis)](#oh_utd_getdescription) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的描述信息。       |
39| [const char* OH_Utd_GetReferenceUrl(OH_Utd* pThis)](#oh_utd_getreferenceurl) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的URL信息。        |
40| [const char* OH_Utd_GetIconFile(OH_Utd* pThis)](#oh_utd_geticonfile) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的默认图标文件路径。 |
41| [const char** OH_Utd_GetBelongingToTypes(OH_Utd* pThis, unsigned int* count)](#oh_utd_getbelongingtotypes) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的归属关系结果集。 |
42| [const char** OH_Utd_GetFilenameExtensions(OH_Utd* pThis, unsigned int* count)](#oh_utd_getfilenameextensions) | 获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)所关联的文件名后缀结果集。 |
43| [const char** OH_Utd_GetMimeTypes(OH_Utd* pThis, unsigned int* count)](#oh_utd_getmimetypes) | 获取[OH_Utd](capi-udmf-oh-utd.md)所关联的MIME类型结果集。         |
44| [const char** OH_Utd_GetTypesByFilenameExtension(const char* extension, unsigned int* count)](#oh_utd_gettypesbyfilenameextension) | 通过文件名后缀获取关联的统一标准数据描述类型结果集。         |
45| [const char** OH_Utd_GetTypesByMimeType(const char* mimeType, unsigned int* count)](#oh_utd_gettypesbymimetype) | 通过MIME类型获取所关联的标准数据类型结果集。                 |
46| [bool OH_Utd_BelongsTo(const char* srcTypeId, const char* destTypeId)](#oh_utd_belongsto) | 判断两个标准化数据描述类型是否存在归属关系。                 |
47| [bool OH_Utd_IsLower(const char* srcTypeId, const char* destTypeId)](#oh_utd_islower) | 判断原标准化数据类型是否是目标标准化数据类型的低层级类型。例如TYPE_SCRIPT为SOURCE_CODE的低层级类型,TYPE_SCRIPT和SOURCE_CODE为PLAIN_TEXT的低层级类型。 |
48| [bool OH_Utd_IsHigher(const char* srcTypeId, const char* destTypeId)](#oh_utd_ishigher) | 判断原标准化数据类型是否是目标标准化数据类型的高层级类型。例如SOURCE_CODE为TYPE_SCRIPT的高层级类型,PLAIN_TEXT为SOURCE_CODE和TYPE_SCRIPT的高层级类型。 |
49| [bool OH_Utd_Equals(OH_Utd* utd1, OH_Utd* utd2)](#oh_utd_equals) | 判断两个标准化数据描述类型是否相等。                         |
50| [void OH_Utd_DestroyStringList(const char** list, unsigned int count)](#oh_utd_destroystringlist) | 销毁标准数据描述类型结果集字符串列表。                       |
51
52## 函数说明
53
54### OH_Utd_Create()
55
56```
57OH_Utd* OH_Utd_Create(const char* typeId)
58```
59
60**描述**
61
62创建统一数据类型[OH_Utd](capi-udmf-oh-utd.md)指针及实例对象。
63
64**起始版本:** 12
65
66
67**参数:**
68
69| 参数项             | 描述                 |
70| ------------------ | -------------------- |
71| const char* typeId | 表示统一数据类型ID。 |
72
73**返回:**
74
75| 类型                      | 说明                                                         |
76| ------------------------- | ------------------------------------------------------------ |
77| [OH_Utd](capi-udmf-oh-utd.md)* | 执行成功则返回一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)实例对象的指针,否则返回nullptr。<br>当不再需要使用指针时,请使用[OH_Utd_Destroy](capi-utd-h.md#oh_utd_destroy)销毁实例对象,否则会导致内存泄漏。 |
78
79### OH_Utd_Destroy()
80
81```
82void OH_Utd_Destroy(OH_Utd* pThis)
83```
84
85**描述**
86
87销毁统一数据类型[OH_Utd](capi-udmf-oh-utd.md)指针指向的实例对象。
88
89**起始版本:** 12
90
91
92**参数:**
93
94| 参数项                          | 描述                                                     |
95| ------------------------------- | -------------------------------------------------------- |
96| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)实例的指针。 |
97
98### OH_Utd_GetTypeId()
99
100```
101const char* OH_Utd_GetTypeId(OH_Utd* pThis)
102```
103
104**描述**
105
106获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的类型ID。
107
108**起始版本:** 12
109
110
111**参数:**
112
113| 参数项                          | 描述                                                         |
114| ------------------------------- | ------------------------------------------------------------ |
115| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
116
117**返回:**
118
119| 类型        | 说明                                                      |
120| ----------- | --------------------------------------------------------- |
121| const char* | 当入参有效时返回指向类型ID的字符串指针,否则返回nullptr。 |
122
123### OH_Utd_GetDescription()
124
125```
126const char* OH_Utd_GetDescription(OH_Utd* pThis)
127```
128
129**描述**
130
131获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的描述信息。
132
133**起始版本:** 12
134
135
136**参数:**
137
138| 参数项                          | 描述                                                         |
139| ------------------------------- | ------------------------------------------------------------ |
140| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
141
142**返回:**
143
144| 类型        | 说明                                                        |
145| ----------- | ----------------------------------------------------------- |
146| const char* | 当入参有效时返回指向描述信息的字符串指针,否则返回nullptr。 |
147
148### OH_Utd_GetReferenceUrl()
149
150```
151const char* OH_Utd_GetReferenceUrl(OH_Utd* pThis)
152```
153
154**描述**
155
156获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的URL信息。
157
158**起始版本:** 12
159
160
161**参数:**
162
163| 参数项                          | 描述                                                         |
164| ------------------------------- | ------------------------------------------------------------ |
165| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
166
167**返回:**
168
169| 类型        | 说明                                                       |
170| ----------- | ---------------------------------------------------------- |
171| const char* | 当入参有效时返回指向URL信息的字符串指针,否则返回nullptr。 |
172
173### OH_Utd_GetIconFile()
174
175```
176const char* OH_Utd_GetIconFile(OH_Utd* pThis)
177```
178
179**描述**
180
181获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的默认图标文件路径。
182
183**起始版本:** 12
184
185
186**参数:**
187
188| 参数项                          | 描述                                                         |
189| ------------------------------- | ------------------------------------------------------------ |
190| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
191
192**返回:**
193
194| 类型        | 说明                                                         |
195| ----------- | ------------------------------------------------------------ |
196| const char* | 当入参有效时返回指向默认图标文件路径的字符串指针,否则返回nullptr。 |
197
198### OH_Utd_GetBelongingToTypes()
199
200```
201const char** OH_Utd_GetBelongingToTypes(OH_Utd* pThis, unsigned int* count)
202```
203
204**描述**
205
206获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)中的归属关系结果集。
207
208**起始版本:** 12
209
210
211**参数:**
212
213| 参数项                          | 描述                                                         |
214| ------------------------------- | ------------------------------------------------------------ |
215| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
216| unsigned int* count             | 该参数是输出参数,结果集中的类型数量会写入该变量。           |
217
218**返回:**
219
220| 类型         | 说明                                                         |
221| ------------ | ------------------------------------------------------------ |
222| const char** | 当入参有效时返回归属关系结果集的字符串指针列表,否则返回nullptr。 |
223
224### OH_Utd_GetFilenameExtensions()
225
226```
227const char** OH_Utd_GetFilenameExtensions(OH_Utd* pThis, unsigned int* count)
228```
229
230**描述**
231
232获取统一数据类型[OH_Utd](capi-udmf-oh-utd.md)所关联的文件名后缀结果集。
233
234**起始版本:** 12
235
236
237**参数:**
238
239| 参数项                          | 描述                                                         |
240| ------------------------------- | ------------------------------------------------------------ |
241| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
242| unsigned int* count             | 该参数是输出参数,结果集中的文件后缀名数量会写入该变量。     |
243
244**返回:**
245
246| 类型         | 说明                                                         |
247| ------------ | ------------------------------------------------------------ |
248| const char** | 当入参有效时返回文件文件名后缀结果集的字符串指针列表,否则返回nullptr。 |
249
250### OH_Utd_GetMimeTypes()
251
252```
253const char** OH_Utd_GetMimeTypes(OH_Utd* pThis, unsigned int* count)
254```
255
256**描述**
257
258获取[OH_Utd](capi-udmf-oh-utd.md)所关联的MIME类型结果集。
259
260**起始版本:** 12
261
262
263**参数:**
264
265| 参数项                          | 描述                                                         |
266| ------------------------------- | ------------------------------------------------------------ |
267| [OH_Utd](capi-udmf-oh-utd.md)* pThis | 表示一个指向统一数据类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
268| unsigned int* count             | 该参数是输出参数,结果集中的MIME类型数量会写入该变量。       |
269
270**返回:**
271
272| 类型         | 说明                                                         |
273| ------------ | ------------------------------------------------------------ |
274| const char** | 当入参有效时返回MIME类型结果集的字符串指针列表,否则返回nullptr。 |
275
276### OH_Utd_GetTypesByFilenameExtension()
277
278```
279const char** OH_Utd_GetTypesByFilenameExtension(const char* extension, unsigned int* count)
280```
281
282**描述**
283
284通过文件名后缀获取关联的统一标准数据描述类型结果集。
285
286**起始版本:** 12
287
288
289**参数:**
290
291| 参数项                | 描述                                               |
292| --------------------- | -------------------------------------------------- |
293| const char* extension | 表示文件名后缀。                                   |
294| unsigned int* count   | 该参数是输出参数,结果集中的类型数量会写入该变量。 |
295
296**返回:**
297
298| 类型         | 说明                                                         |
299| ------------ | ------------------------------------------------------------ |
300| const char** | 返回标准数据描述类型结果集字符串列表。<br>当不再需要使用指针时,请及时使用[OH_Utd_DestroyStringList](capi-utd-h.md#oh_utd_destroystringlist)销毁对应的实例,否则会导致内存泄漏。 |
301
302### OH_Utd_GetTypesByMimeType()
303
304```
305const char** OH_Utd_GetTypesByMimeType(const char* mimeType, unsigned int* count)
306```
307
308**描述**
309
310通过MIME类型获取所关联的标准数据类型结果集。
311
312**起始版本:** 12
313
314
315**参数:**
316
317| 参数项               | 描述                                               |
318| -------------------- | -------------------------------------------------- |
319| const char* mimeType | 表示MIME类型字符串。                               |
320| unsigned int* count  | 该参数是输出参数,结果集中的类型数量会写入该变量。 |
321
322**返回:**
323
324| 类型         | 说明                                                         |
325| ------------ | ------------------------------------------------------------ |
326| const char** | 返回标准数据描述类型结果集字符串列表。<br>当不再需要使用指针时,请及时使用[OH_Utd_DestroyStringList](capi-utd-h.md#oh_utd_destroystringlist)销毁对应的实例,否则会导致内存泄漏。 |
327
328### OH_Utd_BelongsTo()
329
330```
331bool OH_Utd_BelongsTo(const char* srcTypeId, const char* destTypeId)
332```
333
334**描述**
335
336判断两个标准化数据描述类型是否存在归属关系。
337
338**起始版本:** 12
339
340
341**参数:**
342
343| 参数项                 | 描述                     |
344| ---------------------- | ------------------------ |
345| const char* srcTypeId  | 表示原标准化数据类型。   |
346| const char* destTypeId | 表示目标标准化数据类型。 |
347
348**返回:**
349
350| 类型 | 说明                                                        |
351| ---- | ----------------------------------------------------------- |
352| bool | false表示原类型不属于目标类型,true表示原类型属于目标类型。 |
353
354### OH_Utd_IsLower()
355
356```
357bool OH_Utd_IsLower(const char* srcTypeId, const char* destTypeId)
358```
359
360**描述**
361
362判断原标准化数据类型是否是目标标准化数据类型的低层级类型。例如TYPE_SCRIPT为SOURCE_CODE的低层级类型,TYPE_SCRIPT和SOURCE_CODE为PLAIN_TEXT的低层级类型。
363
364**起始版本:** 12
365
366
367**参数:**
368
369| 参数项                 | 描述                     |
370| ---------------------- | ------------------------ |
371| const char* srcTypeId  | 表示原标准化数据类型。   |
372| const char* destTypeId | 表示目标标准化数据类型。 |
373
374**返回:**
375
376| 类型 | 说明                                                        |
377| ---- | ----------------------------------------------------------- |
378| bool | false表示原类型不低于目标类型;true表示原类型低于目标类型。 |
379
380### OH_Utd_IsHigher()
381
382```
383bool OH_Utd_IsHigher(const char* srcTypeId, const char* destTypeId)
384```
385
386**描述**
387
388判断原标准化数据类型是否是目标标准化数据类型的高层级类型。例如SOURCE_CODE为TYPE_SCRIPT的高层级类型,PLAIN_TEXT为SOURCE_CODE和TYPE_SCRIPT的高层级类型。
389
390**起始版本:** 12
391
392
393**参数:**
394
395| 参数项                 | 描述                     |
396| ---------------------- | ------------------------ |
397| const char* srcTypeId  | 表示原标准化数据类型。   |
398| const char* destTypeId | 表示目标标准化数据类型。 |
399
400**返回:**
401
402| 类型 | 说明                                                        |
403| ---- | ----------------------------------------------------------- |
404| bool | false表示原类型不高于目标类型,true表示原类型高于目标类型。 |
405
406### OH_Utd_Equals()
407
408```
409bool OH_Utd_Equals(OH_Utd* utd1, OH_Utd* utd2)
410```
411
412**描述**
413
414判断两个标准化数据描述类型是否相等。
415
416**起始版本:** 12
417
418
419**参数:**
420
421| 参数项                         | 描述                                                         |
422| ------------------------------ | ------------------------------------------------------------ |
423| [OH_Utd](capi-udmf-oh-utd.md)* utd1 | 表示一个指向标准化数据描述类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
424| [OH_Utd](capi-udmf-oh-utd.md)* utd2 | 表示一个指向标准化数据描述类型[OH_Utd](capi-udmf-oh-utd.md)对象的指针。 |
425
426**返回:**
427
428| 类型 | 说明                                            |
429| ---- | ----------------------------------------------- |
430| bool | false表示两种类型不相等,true表示两种类型相等。 |
431
432### OH_Utd_DestroyStringList()
433
434```
435void OH_Utd_DestroyStringList(const char** list, unsigned int count)
436```
437
438**描述**
439
440销毁标准数据描述类型结果集字符串列表。
441
442**起始版本:** 12
443
444
445**参数:**
446
447| 参数项             | 描述                                 |
448| ------------------ | ------------------------------------ |
449| const char** list  | 表示字符串列表指针。                 |
450| unsigned int count | 表示字符串列表list参数中的列表长度。 |
451
452