• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# IVibratorInterface
2
3
4## 概述
5
6Vibrator模块向上层服务提供统一的接口。
7
8上层服务开发人员可根据Vibrator模块提供的统一接口,用于控制马达执行单次或周期性振动。
9
10**Since:**
113.2
12**Version:**
131.1
14**相关模块:**
15
16[Vibrator](_vibrator.md)
17
18
19## 汇总
20
21
22### Public 成员函数
23
24  | 名称 | 描述 |
25| -------- | -------- |
26| [StartOnce](#startonce) ([in] unsigned int duration) | 控制马达以执行给定持续时间的单次振动。  |
27| [Start](#start) ([in] String effectType) | 控制马达以预置效果执行周期性振动。  |
28| [Stop](#stop) ([in] enum [HdfVibratorMode](_vibrator.md#hdfvibratormode) mode) | 停止马达振动。  |
29| [GetVibratorInfo](#getvibratorinfo) ([out] struct [HdfVibratorInfo](_hdf_vibrator_info.md)[] vibratorInfo) | 获取有关系统中支持设置振幅和频率的所有马达信息。  |
30| [EnableVibratorModulation](#enablevibratormodulation) ([in] unsigned int duration, [in] int intensity, [in] int frequency) | 根据传入的振动效果启动马达。  |
31
32
33## 成员函数说明
34
35
36### EnableVibratorModulation()
37
38
39```
40IVibratorInterface::EnableVibratorModulation ([in] unsigned int duration, [in] int intensity, [in] int frequency )
41```
42**描述:**
43根据传入的振动效果启动马达。
44
45**参数:**
46
47  | 名称 | 描述 |
48| -------- | -------- |
49| duration | 表示马达振动的持续时间,以毫秒为单位。  |
50| intensity | 表示振动周期内的马达振幅。  |
51| frequency | 表示振动周期内的马达频率。 |
52
53**返回:**
54
55如果操作成功,则返回0。
56
57如果不支持振动周期设置,则返回-1。
58
59如果不支持振幅设置,则返回-2。
60
61如果不支持频率设置,则返回-3。
62
63
64### GetVibratorInfo()
65
66
67```
68IVibratorInterface::GetVibratorInfo ([out] struct HdfVibratorInfo[] vibratorInfo)
69```
70**描述:**
71获取有关系统中支持设置振幅和频率的所有马达信息。
72
73**参数:**
74
75  | 名称 | 描述 |
76| -------- | -------- |
77| vibratorInfo | 表示指向马达信息的指针,详见[HdfVibratorInfo](_hdf_vibrator_info.md)。 |
78
79**返回:**
80
81如果操作成功,则返回0。
82
83如果操作失败,则返回负值。
84
85
86### Start()
87
88
89```
90IVibratorInterface::Start ([in] String effectType)
91```
92**描述:**
93控制马达以预置效果执行周期性振动。
94
95单次振动与周期振动相互排斥。在执行周期性振动之前,需退出单次振动。
96
97**参数:**
98
99  | 名称 | 描述 |
100| -------- | -------- |
101| effectType | 表示马达振动的预设效果类型。建议最大长度为64字节。 |
102
103**返回:**
104
105如果操作成功,则返回0。
106
107如果操作失败,则返回负值。
108
109
110### StartOnce()
111
112
113```
114IVibratorInterface::StartOnce ([in] unsigned int duration)
115```
116**描述:**
117控制马达以执行给定持续时间的单次振动。
118
119单次振动与周期振动相互排斥。在执行单次振动之前,需退出周期性振动。
120
121**参数:**
122
123  | 名称 | 描述 |
124| -------- | -------- |
125| duration | 表示单次振动的持续时间,以毫秒为单位。 |
126
127**返回:**
128
129如果操作成功,则返回0。
130
131如果操作失败,则返回负值。
132
133
134### Stop()
135
136
137```
138IVibratorInterface::Stop ([in] enum HdfVibratorMode mode)
139```
140**描述:**
141停止马达振动。
142
143马达启动前,必须在任何模式下停止振动。此功能用在振动过程之后。
144
145**参数:**
146
147  | 名称 | 描述 |
148| -------- | -------- |
149| mode | 表示振动模式,可以是单次或周期性的,详见[HdfVibratorMode](_vibrator.md#hdfvibratormode)。 |
150
151**返回:**
152
153如果操作成功,则返回0。
154
155如果操作失败,则返回负值。
156