1# NativeVsync 2 3 4## 概述 5 6提供NativeVsync功能。 7 8\@syscap SystemCapability.Graphic.Graphic2D.NativeVsync 9 10**起始版本:** 11 129 13 14 15## 汇总 16 17 18### 文件 19 20| 名称 | 描述 | 21| -------- | -------- | 22| [native_vsync.h](native__vsync_8h.md) | 定义获取和使用NativeVsync的相关函数<br/>引用文件:<native_vsync/native_vsync.h> | 23 24 25### 类型定义 26 27| 名称 | 描述 | 28| -------- | -------- | 29| [OH_NativeVSync](#oh_nativevsync) | 提供OH_NativeVSync结构体声明 | 30| (\*[OH_NativeVSync_FrameCallback](#oh_nativevsync_framecallback)) (long long timestamp, void \*data) | VSync回调函数类型 | 31 32 33### 函数 34 35| 名称 | 描述 | 36| -------- | -------- | 37| [OH_NativeVSync_Create](#oh_nativevsync_create) (const char \*name, unsigned int length) | 创建一个OH_NativeVSync实例,每次调用都会产生一个新的实例 | 38| [OH_NativeVSync_Destroy](#oh_nativevsync_destroy) ([OH_NativeVSync](#oh_nativevsync) \*nativeVsync) | 销毁OH_NativeVSync实例 | 39| [OH_NativeVSync_RequestFrame](#oh_nativevsync_requestframe) ([OH_NativeVSync](#oh_nativevsync) \*nativeVsync, [OH_NativeVSync_FrameCallback](#oh_nativevsync_framecallback) callback, void \*data) | 请求下一次vsync信号,当信号到来时,调用回调函数callback | 40 41 42## 类型定义说明 43 44 45### OH_NativeVSync 46 47 48``` 49typedef struct OH_NativeVSync OH_NativeVSync 50``` 51 52**描述:** 53 54提供OH_NativeVSync结构体声明 55 56 57### OH_NativeVSync_FrameCallback 58 59 60``` 61typedef void(* OH_NativeVSync_FrameCallback) (long long timestamp, void *data) 62``` 63 64**描述:** 65 66VSync回调函数类型 67 68\@syscap SystemCapability.Graphic.Graphic2D.NativeVsync 69 70**参数:** 71 72| 名称 | 描述 | 73| -------- | -------- | 74| timestamp | VSync时间戳 | 75| data | 用户自定义数据 | 76 77 78## 函数说明 79 80 81### OH_NativeVSync_Create() 82 83 84``` 85OH_NativeVSync* OH_NativeVSync_Create (const char * name, unsigned int length ) 86``` 87 88**描述:** 89 90创建一个OH_NativeVSync实例,每次调用都会产生一个新的实例 91 92\@syscap SystemCapability.Graphic.Graphic2D.NativeVsync 93 94**参数:** 95 96| 名称 | 描述 | 97| -------- | -------- | 98| name | 表示一个名字,与创建的OH_NativeVSync实例关联 | 99| length | name的长度 | 100 101**返回:** 102 103返回一个指向OH_NativeVSync实例的指针 104 105 106### OH_NativeVSync_Destroy() 107 108 109``` 110void OH_NativeVSync_Destroy (OH_NativeVSync * nativeVsync) 111``` 112 113**描述:** 114 115销毁OH_NativeVSync实例 116 117\@syscap SystemCapability.Graphic.Graphic2D.NativeVsync 118 119**参数:** 120 121| 名称 | 描述 | 122| -------- | -------- | 123| nativeVsync | 一个指向OH_NativeVSync实例的指针 | 124 125 126### OH_NativeVSync_RequestFrame() 127 128 129``` 130int OH_NativeVSync_RequestFrame (OH_NativeVSync * nativeVsync, OH_NativeVSync_FrameCallback callback, void * data ) 131``` 132 133**描述:** 134 135请求下一次vsync信号,当信号到来时,调用回调函数callback 136 137\@syscap SystemCapability.Graphic.Graphic2D.NativeVsync 138 139**参数:** 140 141| 名称 | 描述 | 142| -------- | -------- | 143| nativeVsync | 一个指向OH_NativeVSync实例的指针 | 144| callback | 一个OH_NativeVSync_FrameCallback类型的函数指针,当下一次vsync信号到来时会被调用 | 145| data | 一个指向用户自定义数据结构的指针,类型是void\* | 146 147**返回:** 148 149返回值为0表示执行成功 150