1 <?xml version="1.0" encoding="UTF-8"?> |
1 <?xml version="1.0" encoding="utf-8"?> |
2 <!--Arbortext, Inc., 1988-2008, v.4002--> |
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
3 <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" |
3 <!-- This component and the accompanying materials are made available under the terms of the License |
4 "concept.dtd"> |
4 "Eclipse Public License v1.0" which accompanies this distribution, |
5 <concept id="GUID-581A8E4B-12BE-41C0-A20E-3087A80FEECF" xml:lang="en"><?Pub |
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
6 Caret1?> |
6 <!-- Initial Contributors: |
7 <title>Tactile feedback</title> |
7 Nokia Corporation - initial contribution. |
8 <prolog> |
8 Contributors: |
9 <metadata><keywords></keywords></metadata> |
9 --> |
10 </prolog> |
10 <!DOCTYPE concept |
11 <conbody> |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-581A8E4B-12BE-41C0-A20E-3087A80FEECF" xml:lang="en"><title>Tactile feedback</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
12 <p>There are two cases where vibration or audio of the device is used |
13 <p>There are two cases where vibration or audio of the device is used |
13 as an output method:</p> |
14 as an output method:</p> |
14 <ul> |
15 <ul> |
15 <li><p>As a <i>tacticon</i> to inform users through physical feedback, |
16 <li><p>As a <i>tacticon</i> to inform users through physical feedback, |
16 that an important event is occurring in the device. For example, when |
17 that an important event is occurring in the device. For example, when |
51 also possible with other similar components.</p></entry> |
51 also possible with other similar components.</p></entry> |
52 </row> |
52 </row> |
53 <row> |
53 <row> |
54 <entry><p><b>Sensitive list</b></p></entry> |
54 <entry><p><b>Sensitive list</b></p></entry> |
55 <entry><p>Provides single pulse effect to lists and grids. Effect |
55 <entry><p>Provides single pulse effect to lists and grids. Effect |
56 is used with move (drag and flick) when new item appears on the screen.</p |
56 is used with move (drag and flick) when new item appears on the screen.</p></entry> |
57 ></entry> |
|
58 </row> |
57 </row> |
59 <row> |
58 <row> |
60 <entry><p><b>Basic list</b></p></entry> |
59 <entry><p><b>Basic list</b></p></entry> |
61 <entry><p>Provides stronger single pulse effect to lists and grids. |
60 <entry><p>Provides stronger single pulse effect to lists and grids. |
62 Effect is used with touch down and release when tap makes an action. </p |
61 Effect is used with touch down and release when tap makes an action. </p><p>In hierarchical list, collapsing/expanding item provides basic |
63 ><p>In hierarchical list, collapsing/expanding item provides basic |
|
64 list effect with touch down and release.</p></entry> |
62 list effect with touch down and release.</p></entry> |
65 </row> |
63 </row> |
66 <row> |
64 <row> |
67 <entry><p><b>Bounce effect</b></p></entry> |
65 <entry><p><b>Bounce effect</b></p></entry> |
68 <entry><p>Provides pulse effect when list returns to its normal state |
66 <entry><p>Provides pulse effect when list returns to its normal state |
179 through the sense of touch, we have to stimulate some of the cutaneous |
175 through the sense of touch, we have to stimulate some of the cutaneous |
180 senses or the movement sense. The stimulation of the cutaneous senses |
176 senses or the movement sense. The stimulation of the cutaneous senses |
181 or one of them by a product is called tactile stimulation. Respectively, |
177 or one of them by a product is called tactile stimulation. Respectively, |
182 the stimulation of the movement sense by a product is called haptic |
178 the stimulation of the movement sense by a product is called haptic |
183 stimulation or just haptics. Haptics is also used as general term |
179 stimulation or just haptics. Haptics is also used as general term |
184 for all issues related to sense of touch, both human and machine.</p |
180 for all issues related to sense of touch, both human and machine.</p><p>Haptic feedback, often referred to as "Haptics", is the use of |
185 ><p>Haptic feedback, often referred to as "Haptics", is the use of |
|
186 the sense of touch in a user interface design to provide information |
181 the sense of touch in a user interface design to provide information |
187 to an end user. In mobile phones, this generally means the use of |
182 to an end user. In mobile phones, this generally means the use of |
188 vibrations from the device's vibration alarm to denote that a touch |
183 vibrations from the device's vibration alarm to denote that a touch |
189 screen button has been pressed. In this particular example, the phone |
184 screen button has been pressed. In this particular example, the phone |
190 would vibrate slightly in response to the user's activation of an |
185 would vibrate slightly in response to the user's activation of an |
191 on-screen control, making up for the lack of a normal tactile response |
186 on-screen control, making up for the lack of a normal tactile response |
192 that the user would experience when pressing a physical button.</p |
187 that the user would experience when pressing a physical button.</p></section> |
193 ></section> |
|
194 <section id="GUID-B9A35CA3-B830-4D97-9B0A-E22DC4A3CDA1"><title>Characteristics |
188 <section id="GUID-B9A35CA3-B830-4D97-9B0A-E22DC4A3CDA1"><title>Characteristics |
195 of haptics related APIs</title><p>You can use the following APIs |
189 of haptics related APIs</title><p>You can use the following APIs |
196 to create haptic effects:</p><ul> |
190 to create haptic effects:</p><ul> |
197 <li><p><xref href="GUID-8661A7E0-F19A-41F8-9062-FBFAE70CF658.dita" |
191 <li><p><xref href="GUID-8661A7E0-F19A-41F8-9062-FBFAE70CF658.dita">Tactile |
198 >Tactile Feedback Client API</xref></p><ul> |
192 Feedback Client API</xref></p><ul> |
199 <li><p>Available from S60 5th Edition onwards.</p></li> |
193 <li><p>Available from S60 5th Edition onwards.</p></li> |
200 <li><p>It can be used on all S60 5th Edition or later mobile devices. |
194 <li><p>It can be used on all S60 5th Edition or later mobile devices. |
201 However, the feedback is played only on touch enabled layouts.</p |
195 However, the feedback is played only on touch enabled layouts.</p></li> |
202 ></li> |
|
203 <li><p>Provides simple functions for triggering various predefined |
196 <li><p>Provides simple functions for triggering various predefined |
204 tactile feedback (vibration or audio) effects.</p></li> |
197 tactile feedback (vibration or audio) effects.</p></li> |
205 <li><p>Enables a consistent user experience in all applications of |
198 <li><p>Enables a consistent user experience in all applications of |
206 the mobile device (an application gives a logical feedback type as |
199 the mobile device (an application gives a logical feedback type as |
207 an input and the actual physical effect depends on the mobile device |
200 an input and the actual physical effect depends on the mobile device |
208 configuration and end user settings).</p></li> |
201 configuration and end user settings).</p></li> |
209 <li><p>When the area feedback is used, latency is low for the feedback |
202 <li><p>When the area feedback is used, latency is low for the feedback |
210 triggering (a tactile feedback can already be triggered at the window |
203 triggering (a tactile feedback can already be triggered at the window |
211 server level prior to the corresponding pointer event being delivered |
204 server level prior to the corresponding pointer event being delivered |
212 to the visible application).</p></li> |
205 to the visible application).</p></li> |
213 <li><p>Direct feedback can be easily integrated into <xref |
206 <li><p>Direct feedback can be easily integrated into <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita#GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160/GUID-5CF90E7A-4A91-36FF-BB3F-CF7CF687DED2"><apiname>CCoeControl::HandlePointerEventL()</apiname></xref>. </p></li> |
214 href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita#GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160/GUID-5CF90E7A-4A91-36FF-BB3F-CF7CF687DED2" |
|
215 ><apiname>CCoeControl::HandlePointerEventL()</apiname></xref>. </p |
|
216 ></li> |
|
217 <li><p>An application can select the logical tactile feedback from |
207 <li><p>An application can select the logical tactile feedback from |
218 certain types. The produced effect may be different on various mobile |
208 certain types. The produced effect may be different on various mobile |
219 devices.</p></li> |
209 devices.</p></li> |
220 </ul></li> |
210 </ul></li> |
221 <li><p><xref format="application/java-archive" |
211 <li><p><xref href="jar:GUID-558A5A9B-811E-4A87-B3DD-AE734C9AA966.jar!/public_specs/GuidesA/Haptics_API_Specification/Haptics_API_Specification.html" format="application/java-archive">Haptics API</xref></p><ul> |
222 href="jar:GUID-558A5A9B-811E-4A87-B3DD-AE734C9AA966.jar!/public_specs/GuidesA/Haptics_API_Specification/Haptics_API_Specification.html" |
|
223 >Haptics API</xref></p><ul> |
|
224 <li><p>Available from S60 5th Edition, FP2 onwards.</p></li> |
212 <li><p>Available from S60 5th Edition, FP2 onwards.</p></li> |
225 <li><p>It can be used in touch and hybrid mobile devices.</p></li> |
213 <li><p>It can be used in touch and hybrid mobile devices.</p></li> |
226 <li><p>Provides an interface for accessing Haptics player that can |
214 <li><p>Provides an interface for accessing Haptics player that can |
227 control different actuator types.</p></li> |
215 control different actuator types.</p></li> |
228 <li><p>Enables producing of complex vibrator effects, such as an explosion |
216 <li><p>Enables producing of complex vibrator effects, such as an explosion |
231 <li><p>Enables simultaneous playing of different kinds of basis effects |
219 <li><p>Enables simultaneous playing of different kinds of basis effects |
232 and modifying them when played. </p></li> |
220 and modifying them when played. </p></li> |
233 <li><p>Allows the design of complex effects (using a separate PC application) |
221 <li><p>Allows the design of complex effects (using a separate PC application) |
234 that can be loaded on Haptics player for playing.</p></li> |
222 that can be loaded on Haptics player for playing.</p></li> |
235 <li><p>It may require a special license key for third-party applications |
223 <li><p>It may require a special license key for third-party applications |
236 (to be set at runtime) to enable the Haptics player functionality.</p |
224 (to be set at runtime) to enable the Haptics player functionality.</p></li> |
237 ></li> |
|
238 </ul></li> |
225 </ul></li> |
239 <li><p><xref href="GUID-D53A00E4-CF37-5F11-8D15-C5ECCCE64597.dita" |
226 <li><p><xref href="GUID-D53A00E4-CF37-5F11-8D15-C5ECCCE64597.dita">Vibra |
240 >Vibra API</xref></p><ul> |
227 API</xref></p><ul> |
241 <li><p>Available from S60 3.0 onwards.</p></li> |
228 <li><p>Available from S60 3.0 onwards.</p></li> |
242 <li><p>It can be used for running device vibrator with given intensity |
229 <li><p>It can be used for running device vibrator with given intensity |
243 for a given period of time.</p></li> |
230 for a given period of time.</p></li> |
244 <li><p>It can be used by a privileged client application to play pulse |
231 <li><p>It can be used by a privileged client application to play pulse |
245 effects, which have a very short duration (as the ones used for tactile |
232 effects, which have a very short duration (as the ones used for tactile |
246 feedback).</p></li> |
233 feedback).</p></li> |
247 </ul></li> |
234 </ul></li> |
248 </ul></section> |
235 </ul></section> |
249 <section id="GUID-428F693C-1CA8-4588-9A7D-C4265D2AED91"><title>When |
236 <section id="GUID-428F693C-1CA8-4588-9A7D-C4265D2AED91"><title>When |
250 to use Tactile Feedback Client API, Haptics API, and Vibra API</title |
237 to use Tactile Feedback Client API, Haptics API, and Vibra API</title><p><ul> |
251 ><p><ul> |
|
252 <li><p>Tactile Feedback Client API for providing tactile feedback |
238 <li><p>Tactile Feedback Client API for providing tactile feedback |
253 in custom controls (grids, lists, and so on), which will comply with |
239 in custom controls (grids, lists, and so on), which will comply with |
254 the style of Core UI components to ensure a uniform user experience |
240 the style of Core UI components to ensure a uniform user experience |
255 among applications.</p></li> |
241 among applications.</p></li> |
256 <li><p>Haptics API on touch and hybrid mobile devices for producing |
242 <li><p>Haptics API on touch and hybrid mobile devices for producing |
258 Framework (games, simulations, demos, and so on).</p></li> |
244 Framework (games, simulations, demos, and so on).</p></li> |
259 <li><p>Vibra API for producing haptic effects such as ringing tone |
245 <li><p>Vibra API for producing haptic effects such as ringing tone |
260 vibration in those mobile devices where Haptics API is not available |
246 vibration in those mobile devices where Haptics API is not available |
261 or functional.</p></li> |
247 or functional.</p></li> |
262 </ul></p></section> |
248 </ul></p></section> |
263 <section id="GUID-8334E102-8F04-4726-9CD2-1D8004A417E1"><title>Using |
249 <section id="GUID-8334E102-8F04-4726-9CD2-1D8004A417E1"><title>Using tactile feedback |
264 tactile feedback in applications</title><p>The API to use for tactile |
250 in applications</title><p>The API to use for tactile feedback is the <xref href="GUID-8661A7E0-F19A-41F8-9062-FBFAE70CF658.dita">Tactile feedback |
265 feedback is the <xref |
|
266 href="GUID-8661A7E0-F19A-41F8-9062-FBFAE70CF658.dita">Tactile feedback |
|
267 client API</xref>.</p><p>The Symbian platform includes a tactile feedback |
251 client API</xref>.</p><p>The Symbian platform includes a tactile feedback |
268 interface to add, modify and remove feedback areas in the registry. |
252 interface to add, modify and remove feedback areas in the registry. |
269 There is also an option to trigger direct feedback and bypass the |
253 There is also an option to trigger direct feedback and bypass the |
270 registry. <xref |
254 registry. <xref href="GUID-766333D1-8D66-3B81-9B5D-8C4245F78298.dita#GUID-766333D1-8D66-3B81-9B5D-8C4245F78298/GUID-962B6543-9A59-3E72-893D-F775FEC54ACB"><apiname>MTouchFeedback::Instance()</apiname></xref> is used for |
271 href="GUID-766333D1-8D66-3B81-9B5D-8C4245F78298.dita#GUID-766333D1-8D66-3B81-9B5D-8C4245F78298/GUID-962B6543-9A59-3E72-893D-F775FEC54ACB" |
|
272 ><apiname>MTouchFeedback::Instance()</apiname></xref> is used for |
|
273 acquiring a pointer to a touch feedback instance. When touch feedback |
255 acquiring a pointer to a touch feedback instance. When touch feedback |
274 is activated, the mobile device users get a slight vibration when |
256 is activated, the mobile device users get a slight vibration when |
275 the control with the feedback interface is touched. </p><note><p>Tactile |
257 the control with the feedback interface is touched. </p><note><p>Tactile |
276 feedback can be set and disabled in a client application or a mobile |
258 feedback can be set and disabled in a client application or a mobile |
277 device in some scenarios, for example, during phone calls.</p></note |
259 device in some scenarios, for example, during phone calls.</p></note><p>Client applications cannot determine the actual physical feedback |
278 ><p>Client applications cannot determine the actual physical feedback |
|
279 that is generated. It depends on device configuration and current |
260 that is generated. It depends on device configuration and current |
280 settings. In current devices, the user changeable settings include |
261 settings. In current devices, the user changeable settings include |
281 vibration and audio feedback intensity level.</p><p>For more information, |
262 vibration and audio feedback intensity level.</p><p>For more information, |
282 see <xref href="GUID-21DAC50D-7737-42B6-BBDA-E12E8779741B.dita">Feedback</xref |
263 see <xref href="GUID-21DAC50D-7737-42B6-BBDA-E12E8779741B.dita">Feedback</xref>.</p></section> |
283 >.</p></section> |
264 </conbody></concept> |
284 </conbody> |
|
285 </concept> |
|
286 <?Pub *0000013047?> |
|