- Patent Number:
6,978,206
- Appl. No:
10/602326
- Application Filed:
June 23, 2003
- Abstract:
Computer-assisted navigation is achieved with component-oriented programming and instructions that provide a distributed component programming navigation system. The computer-assisted navigation is achieved with a computing device having program memory. Operationally, the component-oriented application loaded in the memory provides a distributed navigation system comprising a User Interface component, a Service Manager component, a User Positioning category of components that provides a user position based on navigation sensor data, and a Mapping category of components that accesses a map database and places the user position on a road segment of the map database. The components within the component-oriented application are managed by the service manager component to perform distributed navigation services.
- Inventors:
Pu, Kent Qing (San Diego, CA, US); Stankoulov, Pavel (San Diego, CA, US); Hetherington, David Julian (Redmond, WA, US); Schier, Marc-Andre (Seattle, WA, US)
- Assignees:
Infogation Corporation (San Diego, CA, US)
- Claim:
1. A distributed navigation system comprising: a computing device that has a programming memory loaded with a component-oriented application that provides a distributed navigation system comprising a plurality of components, the components including: a User Interface component; a Service Manager component; a User Positioning category of components that provides a user position based on navigation sensor data, and a Mapping category of components that accesses a map database and places the user position on a mad segment of the map database, wherein the components are managed by the Service Manager component to perform distributed navigation services, and the Service Manager component provides an interface to query and receive instances of specific services offered either locally or from a remote server; and wherein the components include a Server Communication component configured to provide request and response mechanisms to communicate with a server, the response mechanism includes techniques to process request messages, the techniques performing operations of; interpreting the request messages; dispatching calls to request event handlers to respectively handle the request messages; preparing a response to the request messages such that distributed navigation data is collected and processed; and transmitting the response to a client, wherein the client can process the received navigation data in the response into a presentable form.
- Claim:
2. The system of claim 1 , the components further comprising: a Route Processing category of components that provides a route from a given starting point to a destination point, and maneuvers for the route, and an Address Processing category of components that provides a list of destinations and enables a user to perform name entries and searches on a limited name sets by performing next character searches.
- Claim:
3. The system of claim 2 , wherein the Route Processing category of components includes a Route Maneuver component that provides a route from a given starting point to a destination point, and provides maneuvers for the route.
- Claim:
4. The system of claim 2 , wherein the Route Processing category of components includes a Route Maneuver Expansion component that expands maneuvers with detailed description of the maneuver based on a turn angle and a maneuver type.
- Claim:
5. The system of claim 4 , wherein the Route Maneuver Expansion component is configured to associate sound files and/or bitmaps to each maneuver.
- Claim:
6. The system of claim 2 , wherein the Route Processing category of components includes a Route Guidance component configured to guide a user on the route, and to determine if the user is on route.
- Claim:
7. The system of claim 2 , wherein the Address Processing category of components includes a Custom Destinations component that provides a list of destinations stored on a server.
- Claim:
8. The system of claim 2 , wherein the Address Processing category of components includes a Name Lookup Data Access component that provides data for the Name Lookup component.
- Claim:
9. The system of claim 1 , further comprising: a Traffic Service component that provides a real-time traffic data from a remote service.
- Claim:
10. The system of claim 1 , further comprising: a Messaging Services component that provides internal communication between components.
- Claim:
11. The system of claim 1 , further comprising: a Server Communication component configured to provide request and response mechanism to communicate with the remote server.
- Claim:
12. The system of claim 1 , wherein the User Positioning category of components includes a GPS service component that provides GPS data.
- Claim:
13. The system of claim 1 , wherein the User Positioning category of components includes a Navigation Sensor component that provides navigation sensor data.
- Claim:
14. The system of claim 1 , wherein the Mapping category of components includes a Map Matching component that places the user position on a map database road segment.
- Claim:
15. The system of claim 1 , wherein the Mapping category of components includes a Map Display component that draws a map having entities representing different visible objects on the screen.
- Claim:
16. The system of claim 1 , wherein the Mapping category of components includes a Map Date Access component that provides an interface to access the map database.
- Claim:
17. The system of claim 1 , wherein the Address Processing category of components includes a Name Lookup component that enables a system client to perform name entries and searches on a limited name sets.
- Claim:
18. The system of claim 17 , wherein the Name Lookup component includes an interface to perform next character searches.
- Claim:
19. A method of providing a distributed navigation application from a computer system that supports an object oriented programming environment, the method comprising: providing a plurality of components that include a User Interface component, a Service Manager component, a User Positioning category of components that provides a user position based on navigation sensor data, and a Mapping category of components that accesses a map database and places the user position on a road segment of the map database, wherein the components within the navigation module are managed by the service manager to perform distributed navigation services and the Service Manager component provides an interface to query and receive instances of specific services offered either locally or from a remote server; and wherein the components include a Server Communication component configured to provide request and response mechanisms to communicate with a server, the response mechanism includes techniques to process request messages, the techniques performing operations of: interpreting the request messages; dispatching calls to request event handlers to respectively handle the request messages; preparing a response to the request messages such that distributed navigation data is collected and processed; and transmitting the response to a client, wherein the client can process the received navigation data in the response into a presentable form.
- Claim:
20. The method of claim 19 , wherein the components further comprises: a Route Processing category of components that provides a route from a given starting point to a destination point, and maneuvers for the mute, and an Address Processing category of components that provides a list of destinations and enables a user to perform name entries and searches on a limited name sets by performing next character searches.
- Claim:
21. The method of claim 19 , wherein the components further comprises: a Traffic Service component that provides a real-time traffic data from a remote service.
- Claim:
22. The method of claim 21 , wherein the distributed navigation data comprises chunked data.
- Claim:
23. The method of claim 19 , wherein the components further comprises: providing a Messaging Services component that provides internal communication between components.
- Claim:
24. The method of claim 19 , further comprising: deserializing the request messages if the request message is serialized.
- Claim:
25. The method of claim 19 , wherein interpreting the request messages includes fetching session information.
- Claim:
26. The method of claim 19 , wherein interpreting the request messages includes invoking services.
- Claim:
27. The method of claim 19 , wherein the event handlers include a handler to synchronize Meta-Data information.
- Claim:
28. The method of claim 27 , wherein the Meta-Data information describes a serialization format.
- Claim:
29. The method of claim 19 , further comprising: storing the response into a session cache.
- Claim:
30. The method of claim 29 , wherein the event handlers include a handler to resend the response stored in the session cache.
- Claim:
31. The method of claim 19 , wherein the even handlers include a handler to handle a response cancellation request.
- Claim:
32. The method of claim 19 , wherein preparing a response includes serializing the response.
- Claim:
33. The method of claim 19 , wherein preparing a response includes encrypting and compressing the response.
- Claim:
34. The method of claim 19 , further comprising bundling responses.
- Claim:
35. The method of claim 34 , wherein transmitting the response includes writing the bundled responses to a channel by writing a header and a body of each response.
- Claim:
36. The method of claim 34 , wherein the sender ID is a value representing an Internet Protocol (IP) address assigned to the client.
- Claim:
37. The method of claim 19 , wherein the request messages are aggregated into a single composite request object.
- Claim:
38. The method of claim 19 , wherein each of the request messages includes a sender identification (ID) and a time stamp.
- Current U.S. Class:
701/200
- Patent References Cited:
5825306 October 1998 Hiyokawa et al.
5944768 August 1999 Ito et al.
6259987 July 2001 Ceylan et al.
6370539 April 2002 Ashby et al.
6424908 July 2002 Urban et al.
6487493 November 2002 Uekawa et al.
6505100 January 2003 Stuempfle et al.
2001/0025222 September 2001 Bechtolsheim et al.
2003/0060973 March 2003 Mathews et al.
2004/0010365 January 2004 Duckeck
- Primary Examiner:
Nguyen, Tan Q.
- Attorney, Agent or Firm:
Zheng, Joe
- Accession Number:
edspgr.06978206