• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# IVibratorInterface
2
3
4## 概述
5
6Vibrator模块向上层服务提供统一的接口。
7
8上层服务开发人员可根据Vibrator模块提供的统一接口,用于控制马达执行单次或周期性振动。
9
10**起始版本:** 3.2
11
12**相关模块:**[Vibrator](_vibrator_v11.md)
13
14
15## 汇总
16
17
18### Public 成员函数
19
20| 名称 | 描述 |
21| -------- | -------- |
22| [StartOnce](#startonce) ([in] unsigned int duration) | 控制马达以执行给定持续时间的单次振动。 |
23| [Start](#start) ([in] String effectType) | 控制马达以预置效果执行周期性振动。 |
24| [Stop](#stop) ([in] enum [HdfVibratorMode](_vibrator_v11.md#hdfvibratormode) mode) | 停止马达振动。 |
25| [GetVibratorInfo](#getvibratorinfo) ([out] struct [HdfVibratorInfo](_hdf_vibrator_info_v11.md)[] vibratorInfo) | 获取有关系统中支持设置振幅和频率的所有马达信息。 |
26| [EnableVibratorModulation](#enablevibratormodulation) ([in] unsigned int duration, [in] int intensity, [in] int frequency) | 根据传入的振动效果启动马达。 |
27| [EnableCompositeEffect](#enablecompositeeffect) ([in] struct [HdfCompositeEffect](_hdf_composite_effect_v11.md) effect) | 控制可控震源以执行具有自定义复合效果的周期性振动。 |
28| [GetEffectInfo](#geteffectinfo) ([in] String effectType, [out] struct [HdfEffectInfo](_hdf_effect_info_v11.md) effectInfo) | 获取指定效果类型的振动效果信息。 |
29| [IsVibratorRunning](#isvibratorrunning) ([out] boolean state) | 获取振动器当前是否正在振动。 |
30
31
32## 成员函数说明
33
34
35### EnableCompositeEffect()
36
37```
38IVibratorInterface::EnableCompositeEffect ([in] struct HdfCompositeEffect effect)
39```
40
41**描述**
42
43控制可控震源以执行具有自定义复合效果的周期性振动。
44
45**起始版本:** 3.2
46
47**参数:**
48
49| 名称 | 描述 |
50| -------- | -------- |
51| effect | 表示指向自定义复合效果类型的指针。关于细节,请参阅[HdfCompositeEffect](_hdf_composite_effect_v11.md)。 |
52
53**返回:**
54
55如果操作成功,则返回0。
56
57如果操作失败,则返回负值。
58
59
60### EnableVibratorModulation()
61
62```
63IVibratorInterface::EnableVibratorModulation ([in] unsigned int duration, [in] int intensity, [in] int frequency )
64```
65
66**描述**
67
68根据传入的振动效果启动马达。
69
70**起始版本:** 3.2
71
72**参数:**
73
74| 名称 | 描述 |
75| -------- | -------- |
76| duration | 表示马达振动的持续时间,以毫秒为单位。 |
77| intensity | 表示振动周期内的马达振幅。 |
78| frequency | 表示振动周期内的马达频率。 |
79
80**返回:**
81
82如果操作成功,则返回0。
83
84如果不支持振动周期设置,则返回-1。
85
86如果不支持振幅设置,则返回-2。
87
88如果不支持频率设置,则返回-3。
89
90
91### GetEffectInfo()
92
93```
94IVibratorInterface::GetEffectInfo ([in] String effectType, [out] struct HdfEffectInfo effectInfo )
95```
96
97**描述**
98
99获取指定效果类型的振动效果信息。
100
101link HdfEffectInfo}。
102
103**起始版本:** 3.2
104
105**参数:**
106
107| 名称 | 描述 |
108| -------- | -------- |
109| effectType | 指示指向预设效果类型的指针。建议最大长度为64字节。 |
110| effectInfo | 表示指向振动效果信息的指针。关于细节,请参阅[HdfEffectInfo](_hdf_effect_info_v11.md)。 |
111
112**返回:**
113
114如果操作成功,则返回0。
115
116如果操作失败,则返回负值。
117
118
119### GetVibratorInfo()
120
121```
122IVibratorInterface::GetVibratorInfo ([out] struct HdfVibratorInfo[] vibratorInfo)
123```
124
125**描述**
126
127获取有关系统中支持设置振幅和频率的所有马达信息。
128
129**起始版本:** 3.2
130
131**参数:**
132
133| 名称 | 描述 |
134| -------- | -------- |
135| vibratorInfo | 表示指向马达信息的指针,详见[HdfVibratorInfo](_hdf_vibrator_info_v11.md)。 |
136
137**返回:**
138
139如果操作成功,则返回0。
140
141如果操作失败,则返回负值。
142
143
144### IsVibratorRunning()
145
146```
147IVibratorInterface::IsVibratorRunning ([out] boolean state)
148```
149
150**描述**
151
152获取振动器当前是否正在振动。
153
154**起始版本:** 3.2
155
156**参数:**
157
158| 名称 | 描述 |
159| -------- | -------- |
160| state | 表示可控震源的当前振动状态。 |
161
162**返回:**
163
164如果操作成功,则返回0。
165
166如果操作失败,则返回负值。
167
168
169### Start()
170
171```
172IVibratorInterface::Start ([in] String effectType)
173```
174
175**描述**
176
177控制马达以预置效果执行周期性振动。
178
179单次振动与周期振动相互排斥。在执行周期性振动之前,需退出单次振动。
180
181**起始版本:** 2.2
182
183**参数:**
184
185| 名称 | 描述 |
186| -------- | -------- |
187| effectType | 表示马达振动的预设效果类型。建议最大长度为64字节。 |
188
189**返回:**
190
191如果操作成功,则返回0。
192
193如果操作失败,则返回负值。
194
195
196### StartOnce()
197
198```
199IVibratorInterface::StartOnce ([in] unsigned int duration)
200```
201
202**描述**
203
204控制马达以执行给定持续时间的单次振动。
205
206单次振动与周期振动相互排斥。在执行单次振动之前,需退出周期性振动。
207
208**起始版本:** 2.2
209
210**参数:**
211
212| 名称 | 描述 |
213| -------- | -------- |
214| duration | 表示单次振动的持续时间,以毫秒为单位。 |
215
216**返回:**
217
218如果操作成功,则返回0。
219
220如果操作失败,则返回负值。
221
222
223### Stop()
224
225```
226IVibratorInterface::Stop ([in] enum HdfVibratorMode mode)
227```
228
229**描述**
230
231停止马达振动。
232
233马达启动前,必须在任何模式下停止振动。此功能用在振动过程之后。
234
235**起始版本:** 2.2
236
237**参数:**
238
239| 名称 | 描述 |
240| -------- | -------- |
241| mode | 表示振动模式,可以是单次或周期性的,详见[HdfVibratorMode](_vibrator_v11.md#hdfvibratormode)。 |
242
243**返回:**
244
245如果操作成功,则返回0。
246
247如果操作失败,则返回负值。
248