1e41f4b71Sopenharmony_ci# native_display_soloist.h
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## Overview
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciThe **native_display_soloist.h** file declares the functions for obtaining and using native display soloist.
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**File to include**: <native_display_soloist/native_display_soloist.h>
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Graphic.Graphic2D.HyperGraphicManager
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci**Library**: libnative_display_soloist.so
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci**Since**: 12
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci**Related module**: [NativeDisplaySoloist](_native_display_soloist.md)
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci## Summary
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci### Structs
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ci| Name| Description| 
25e41f4b71Sopenharmony_ci| -------- | -------- |
26e41f4b71Sopenharmony_ci| struct  [DisplaySoloist_ExpectedRateRange](_display_soloist___expected_rate_range.md) | Describes the expected frame rate range.| 
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci### Types
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ci| Name| Description| 
32e41f4b71Sopenharmony_ci| -------- | -------- |
33e41f4b71Sopenharmony_ci| typedef struct [OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist)  [OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) | Provides the declaration of an **OH_DisplaySoloist** struct.| 
34e41f4b71Sopenharmony_ci| typedef void(\* [OH_DisplaySoloist_FrameCallback](_native_display_soloist.md#oh_displaysoloist_framecallback)) (long long timestamp, long long targetTimestamp, void \*data) | Defines the pointer to an OH_DisplaySoloist callback function.| 
35e41f4b71Sopenharmony_ci| typedef struct [DisplaySoloist_ExpectedRateRange](_display_soloist___expected_rate_range.md)  [DisplaySoloist_ExpectedRateRange](_native_display_soloist.md#displaysoloist_expectedraterange) | Defines a struct for the expected frame rate range.| 
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci
38e41f4b71Sopenharmony_ci### Functions
39e41f4b71Sopenharmony_ci
40e41f4b71Sopenharmony_ci| Name| Description| 
41e41f4b71Sopenharmony_ci| -------- | -------- |
42e41f4b71Sopenharmony_ci| [OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) \* [OH_DisplaySoloist_Create](_native_display_soloist.md#oh_displaysoloist_create) (bool useExclusiveThread) | Creates an **OH_DisplaySoloist** instance. A new **OH_DisplaySoloist** instance is created each time this API is called.| 
43e41f4b71Sopenharmony_ci| int32_t [OH_DisplaySoloist_Destroy](_native_display_soloist.md#oh_displaysoloist_destroy) ([OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) \*displaySoloist) | Destroys an **OH_DisplaySoloist** object and reclaims the memory occupied.| 
44e41f4b71Sopenharmony_ci| int32_t [OH_DisplaySoloist_Start](_native_display_soloist.md#oh_displaysoloist_start) ([OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) \*displaySoloist, [OH_DisplaySoloist_FrameCallback](_native_display_soloist.md#oh_displaysoloist_framecallback) callback, void \*data) | Sets a callback function for each frame. The callback function is triggered each time a VSync signal arrives.| 
45e41f4b71Sopenharmony_ci| int32_t [OH_DisplaySoloist_Stop](_native_display_soloist.md#oh_displaysoloist_stop) ([OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) \*displaySoloist) | Stops requesting the next VSync signal and triggering the callback function.| 
46e41f4b71Sopenharmony_ci| int32_t [OH_DisplaySoloist_SetExpectedFrameRateRange](_native_display_soloist.md#oh_displaysoloist_setexpectedframeraterange) ([OH_DisplaySoloist](_native_display_soloist.md#oh_displaysoloist) \*displaySoloist, [DisplaySoloist_ExpectedRateRange](_display_soloist___expected_rate_range.md) \*range) | Sets the expected frame rate range.| 
47