Presentation is loading. Please wait.

Presentation is loading. Please wait.

CLI324 Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead

Similar presentations


Presentation on theme: "CLI324 Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead"— Presentation transcript:

1 CLI324 Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead toddLand@microsoft.com

2 M anagement T ools C ommunications & M essaging Device Update Agent Software Update Services Live Communications Server Exchange Server Internet Security and Acceleration Server Speech Server Image Update L ocation S ervices M ultimedia MapPoint DirectX Windows Media Visual Studio 2005 D evelopment T ools MFC 8.0, ATL 8.0 Win32 N ative M anaged S erver S ide L ightweight R elational SQL Server 2005 Express EditionEDB D ata P rogramming M odel D evice B uilding T ools D evice B uilding T ools H ardware/ D rivers Windows XP DDK Windows Embedded Studio Platform Builder OEM/IHV Supplied BSP (ARM, SH4, MIPS) OEM Hardware and Standard Drivers Standard PC Hardware and Drivers SQL Server 2005SQL Server 2005 Mobile Edition ASP.NET Mobile ControlsASP.NET.NET Compact Framework.NET Framework Microsoft Operations Manager Systems Management Server

3 Topics Overview of the Tablet SDK Tablet Hardware API Gesture Support RealTimeStylus Plug-in Interfaces Journal Note Reader Questions and Answers

4 Ink Object Primary Data Object in the Tablet Platform Container for: Stroke data Metadata Controls all means of persistence Extensible via ExtendedProperties collection

5 Stroke Object Represents a single stroke Single pen down, pen move, pen up sequence ExtendedProperties Allows applications to access and store custom data DrawingAttributes Controls the rendering of the stroke Rich API PacketData, BezierPoints, PolylineCusps, SelfIntersections

6 Strokes Collections What are Stroke collections? Collections of references to strokes Not the stroke data itself Important so you can pass a subset to the Recognizers Stroke Collections can share strokes Both Stroke collections include Stroke 3 Strokes Stroke (1) Strokes Stroke (2)Stroke (3)Stroke (4)Stroke (5)

7 Recognizer Context Object for accessing handwriting recognizers Binds ink data to a particular language for recognition Performs synchronous or asynchronous handwriting recognition Recognition results and alternates returned Attributes used to bias recognition results

8 Tablet PC Platform Hardware API

9 Examining Tablet Hardware Electromagnetic digitizers High resolution, High throughput There are two types of digitizers Integrated and Non-Integrated Multiple Digitizers are supported The mouse is also represented as a digitizer Digitizers support various capabilities # of stylus buttons, pressure, angle or rotation attributes Ink Stroke PacketData varies between digitizers

10 Tablet Hardware API Tablet Object representation of a digitizer Query for digitizer’s supported properties Get property metrics e.g.: How many levels of pressure are supported? Tablets Returns collection of all connected digitizers Including the mouse

11 Tablet Hardware API Continued Cursor Represents a stylus Allows for access to stylus properties Inverted, Button state, Name Available in all InkCollector/Overlay events CursorInRange / CursorOut0fRange CursorDown / CursorUp Cursors Collection of Cursor objects

12 Gesture Support

13 Gestures Collected through InkCollector, InkOverlay, or RealTimeStylus Two Types: System or Application System Gestures Mimic mouse events Cannot be disabled Application Gestures Can be single or multi-stroke Can be turned on/off individually

14 System Gestures Available Gestures TapDoubleTapRightTapDragRightDragHoldEnterHoverEnterHoverLeave Coordinates are Window Coordinates Can’t be cancelled

15 Application Gestures CollectionMode determines support InkOnlyInkAndGestureGestureOnly Single versus Multi-Stroke Gestures Inform your users about gesture support Good UI feedback Consistent use (i.e. Scratchout)

16 Gestures Focus: Scenario driven – don’t over use

17 RealTimeStylus Plug-in Interfaces

18 RealTimeStylus 1. Performance De-couples rendering and collection of ink 2. Flexibility You can control exactly how and when the ink is collected and rendered 3. Extensible You can create your own plug-ins to render and collect ink

19 RealTimeStylus 1. Performance Gives you the opportunity to ensure users see no lag when creating ink Collection of stylus input is moved off the UI thread and is collected asynchronously Provides direct access to stylus input even before it is rendered Queued events allow for separation of Real Time Collection thread and UI thread Minimizes thread usage (From 5 per instance to 1 per process)

20 RealTimeStylus Focus: No lag rendering

21 RealTimeStylus 2. Flexibility Plug-in based architecture You determine how you render and collect ink based on which plug-ins you choose Plug-ins can be dynamically added, removed or re-ordered

22 RealTimeStylus 3. Extensible Allows for the creation of new Real Time components Custom dynamic rendering, gesture recognition, disabled regions, etc. Customize your ink collection and rendering to suit your need

23 Architecture (Overview) Pen Service RealTimePlugIn (IStylusSyncPlugin) RealTimeStylus queue RealTimePlugIn (IStylusSyncPlugin) “Inking” Thread UI Thread Ink Collecting Object (IStylusAsyncPlugin) storage InkCollector

24 RealTimeStylus Plug-ins Object that implements a synchronous or asynchronous interface SyncPlugin: fast custom rendering AsyncPlugin: ink data collection Can manipulate packet data Read, Modify, Add, or Ignore Tablet OS includes two plug-ins Dynamic Rendering Gesture Recognition SDK includes two sample plug-ins Custom Rendering Constrained Region

25 RealTimeStylus Plugin Focus: Flexibility in rendering ink Flexibility in collecting stroke data

26 Journal Note Reader

27 Provides Read-only access to Journal Notes Exposes all attributes in Journal files Ink, Images, Title, Stationary, etc. Enables your application to consume common note files JNT file is presented as an XML document Native and Managed versions DownloadDownload as an SDK update Download

28 Converting Journal Notes Ink object can save to Ink Serialized Format (ISF) or GIF You may want to view ink on other platforms (Pocket PC) Choose a format that is vector based so the rich scalability of ink is preserved

29 Journal Reader With Ink Divider Focus: Easy to consume Journal files

30 MEDC Mobile PC Talks CLI204 - Tablet PC Development Overview Speaker – Dave Hale Time – Tuesday 5/10 11:30 AM CLI208 – Anywhere Access to Data Speaker – Markus Egger Time – Tuesday 5/10 3:00 PM CLI324 – Advanced Tablet PC Development Topics Speaker – Todd Landstad Time – Wednesday 5/11 8:00 AM CLI205 – Basic Considerations for Mobile PC Development Speaker – Michelle McKelvey Time – Wednesday 5/11 11:30 AM CLI329 – Network Awareness Speaker – Dr. Neil Roodyn Time – Thursday 5/12 8:00 AM

31 Mobile Hands On Labs At MEDC Building Network-Aware Mobile PC Applications Build a network-aware application using the Windows Network Location Awareness (NLA) API Building Power-Aware Mobile PC Applications Learn how to tune your applications to save power, extend battery life, and enhance the user's mobile PC experience Building Managed Applications with Microsoft Windows XP Tablet PC SDK Create a cool Tablet application using the Windows XP Tablet PC Edition SDK 1.7

32 The Tablet And Mobile PC Developer Center http://msdn.microsoft.com/mobilepc http://msdn.microsoft.com/mobilepc

33 Tablet PC Developer Center The latest technical articles Downloads Developer resources Regular columns.Newsgroups Featured partners and more…

34 Attend a free chat or web cast http://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp List of newsgroups http://communities2.microsoft.com/communities/newsgroups/en-us/default.aspx MS Community Sites http://www.microsoft.com/communities/default.mspx Locate Local User Groups and Community Sites http://www.microsoft.com/communities/usergroups/default.mspx http://www.microsoft.com/communities/related/default.mspx

35 While at MEDC 2005… Fill out an evaluation for this session Randomly selected instant WIN prizes! Randomly selected instant WIN prizes! Use real technology in a lab Instructor led Reef E/F & Breakers L Self-paced Reef B/C Self-paced Reef B/C Visit the Microsoft Product Pavilion in the Exhibit Hall Shorelines B in the Exhibit Hall Shorelines B

36 After The Conference… Develop Build InstallBuildJoin Install Enter Enter Join Full-featured trial versions of Windows CE and/or Windows XP Embedded Cool stuff & tell us about it: msdn.microsoft.com/embedded/community msdn.microsoft.com/embedded/community Windows Embedded Partner Program: www.mswep.com www.mswep.com Windows Mobile 5.0 Eval Kit including Visual Studio 2005 Beta 2 Mobile2Market Contest and win up to $25000: mobile2marketcontest.com mobile2marketcontest.com Microsoft Solutions Partner Program: partner.microsoft.com partner.microsoft.com

37 Tools & Resources msdn.microsoft.com/ embedded microsoft.public. windowsxp.embedded windowsce.platbuilder windowsce.platbuilder windowsce.embedded.vc windowsce.embedded.vc blogs.msdn.com/ mikehall Windows CE 5.0 Eval Kit Windows XP Embedded Eval Kit msdn.microsoft.com/ mobility microsoft.public. pocketpc.developer smartphone.developer dotnet.framework.compactframework blogs.msdn.com/ windowsmobile vsdteam netcfteam Windows Mobile 5.0 Eval Kit Websites Newsgroups Blogs Tools Build Develop

38

39 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Download ppt "CLI324 Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead"

Similar presentations


Ads by Google