Application-to-component communications helper in a vehicle computer system
First Claim
1. In an automobile vehicle computer system having a vehicle computer operatively coupled with vehicle components, the components having representative objects, the vehicle computer having an application program interface (API) set comprising a component communications method (“
- device-com”
method) and component communications helper method (“
device-helper”
method), a component communications helper method comprising;
receiving a request to communicate with a component through its corresponding object by invoking the device-com method;
facilitating such request by invoking a device-helper method to communicate with the component.
2 Assignments
0 Petitions
Accused Products
Abstract
An application-to-component communication helper facilities communication between applications running an in-vehicle computer to an in-vehicle component. Each vehicle part has a corresponding object, and each object exposes a pre-defined Device Communication Application Programming Interface (DCAPI). Some objects are built-in, meaning that they are defined to some degree by the operating system, and rely on the operating system for at least parts of their functionality. Other objects are add-on objects, meaning that they are provided apart from the operating system, for subsequent installation and use in conjunction with the operating system. The operating system provides a “device helper” that allows add-on components to participate and utilize access management and notification features provided by the operating system. The device helper exposes its method for use by corresponding device-com methods of component objects. The object calls the device helper method that corresponds to the called device-com method. This greatly simplifies the tasks of application programmers, and allows access management and notification services to be coordinated between the various component objects.
-
Citations
49 Claims
-
1. In an automobile vehicle computer system having a vehicle computer operatively coupled with vehicle components, the components having representative objects, the vehicle computer having an application program interface (API) set comprising a component communications method (“
- device-com”
method) and component communications helper method (“
device-helper”
method), a component communications helper method comprising;receiving a request to communicate with a component through its corresponding object by invoking the device-com method;
facilitating such request by invoking a device-helper method to communicate with the component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
the receiving comprises receiving a get-availability request to get an availability status of the component; the get-availability request comprises a memory address for holding a true-or-false value that indicates whether the component is available.
- device-com”
-
4. A method as recited in claim 1, wherein the receiving comprises receiving a get-availability request to get an availability status of the component, further comprising
responding to the get-availability request with values indicating that: -
the availability status was successfully returned;
a parameter in the request was invalid;
oran error occurred.
-
-
5. A method as recited in claim 1, wherein the receiving step comprises receiving a get-mode-access request inquiring about an access type of the component for a read-write mode, wherein the get-mode-access request comprises a parameter that specifies a read-write mode.
-
6. A method as recited in claim 1, wherein
the receiving comprises receiving a get-mode-access request inquiring about an access type of the component for a read-write mode, wherein the get-mode-access request comprises a parameter that specifies a read-write mode; -
the get-mode-access request comprises a memory address for holding a value indicating whether the component;
is sharable access type for the specified read-write mode;
has exclusive access type for the specified read-write mode;
oris not accessible in the specified read-write mode.
-
-
7. A method as recited in claim 1, wherein the receiving comprises receiving a get-mode-access request inquiring about an access type of the component for a read-write mode and the get-mode-access request comprises a parameter that specifies a read-write mode, further comprising:
-
responding to the get-mode-access request with values indicating that;
the access type was successfully determined;
a parameter in the request was invalid;
oran error occurred.
-
-
8. A method as recited in claim 1, wherein the receiving comprises receiving a put-mode-access request for setting of an access type of the component for a read-write mode, wherein the put-mode-access request comprises a parameter that specifies a read-write mode.
-
9. A method as recited in claim 1, wherein
the receiving comprises receiving a put-mode-access request for setting of an access type of the component for a read-write mode, the put-mode-access request comprises parameters that: -
specify a read-write mode; and
specify an access type for the specified read-write mode, wherein such access type is either “
sharable”
or “
exclusively sharable.”
-
-
10. A method as recited in claim 1, wherein the receiving comprises receiving a put-mode-access request for setting of an access type of the component for a read-write mode, the put-mode-access request comprises a parameter that specifies a read-write mode, and the put-mode-access request comprises a parameter that specifies a read-write mode, the method further comprising:
-
responding to the put-mode-access request with values indicating that;
the access type was successfully set;
a parameter in the request was invalid;
oraccess was denied.
-
-
11. A method as recited in claim 1, wherein the receiving comprises receiving a get-minidriver request specifying an interface to a mini-driver for the component to be used for communications with the component.
-
12. A method as recited in claim 1, wherein the receiving comprises receiving a get-minidriver request specifying an interface to a mini-driver for the component to be used for communications with the component, wherein the get-minidriver request comprises a parameter with a memory address to mini-driver'"'"'s interface.
-
13. A method as recited in claim 1, wherein the receiving comprises receiving a get-minidriver request specifying an interface to a mini-driver for the component to be used for communications with the component and the get-minidriver request comprises a parameter with a memory address to mini-driver'"'"'s interface, further comprising:
-
responding to the get-minidriver request with values indicating that;
the mini-driver'"'"'s interface is accessible;
ora parameter in the request was invalid.
-
-
14. A method as recited in claim 1, wherein the receiving comprises receiving a get-data request seeks data from the component.
-
15. A method as recited in claim 1, wherein
the receiving comprises receiving a get-data request seeks data from the component, wherein the get-data request comprises parameters comprising: -
a memory address of data sent to and returned from the component;
a memory address of an interface to convert data returned from the component; and
a value indicating time to wait for a reply to the get-data request.
-
-
16. A method as recited in claim 1, the receiving comprises receiving a get-data request seeks data from the component, further comprising:
-
responding to the get-data request with values indicating that;
the data was successfully retrieved from the component;
the component cannot return data that the get-data request seeks;
a parameter in the request was invalid;
access to the component is denied;
oran error occurred.
-
-
17. A method as recited in claim 1, wherein the receiving comprises receiving a set-data request seeks to instruct the component to perform an action.
-
18. A method as recited in claim 1, wherein
the receiving comprises receiving a set-data request seeks to instruct the component to perform an action by sending control data to the component, wherein the set-data request comprises parameters comprising: -
a memory address of the control data being sent the component;
a memory address of an interface to convert the control data sent to the component; and
a value indicating time to wait for a reply to the set-data request.
-
-
19. A method as recited in claim 1, the receiving comprises receiving a set-data request seeks to instruct the component to perform an action by sending control data to the component, further comprising:
-
responding to the set-data request with values indicating that;
control data was sent to the component;
the component cannot perform the action indicated by the control data;
a parameter in the request was invalid;
access to the component is denied;
oran error occurred.
-
-
20. A method as recited in claim 1, wherein the receiving comprises receiving a put-notify-sink request for instructing the component to send asynchronous notifications to the computer.
-
21. A method as recited in claim 1, wherein
the receiving comprises receiving a put-notify-sink request for instructing the component to send asynchronous notifications to the computer: -
the put-notify-sink request comprises parameters comprising;
a memory address of an event-sink interface;
a memory address of data that contains additional information for starting the notification;
a memory address of an interface to convert the control data returned from the component; and
a value indicating frequency at which notification should be sent.
-
-
22. A method as recited in claim 1, wherein the receiving comprises receiving a put-notify-sink request for instructing the component to send asynchronous notifications to the computer, the method further comprising:
-
responding to the put-notify-sink request with values indicating that;
a notification sink was successfully set;
a parameter in the request was invalid;
access to the component is denied;
oran error occurred.
-
-
23. A method as recited in claim 1, wherein
the component has a read-write mode and an access type for each read-write mode; the request specifies a read-write mode and sets a present access type of the component for the specified read-write mode.
-
24. A method as recited in claim 1, wherein
the component has an associated mini-driver that facilitates communication between an application and the component; the request specifies that communications to the component will be facilitated by the component'"'"'s associated mini-driver.
-
25. A method as recited in claim 1, wherein the request seeks data regarding the component.
-
26. A method as recited in claim 1, wherein the component can control functions of the vehicle and the request instructs the component to control one or more of such functions.
-
27. A computer-readable medium having computer-executable instructions that, when executed by a computer, performs the method as recited in claim 1.
-
28. A method as recited in claim 1 further comprising responding to the request.
-
29. A method as recited in claim 28, wherein
the component has properties that define a read-write mode and each mode has additional properties that define an access type; -
the request specifies a read-write mode and inquires about a present access type of the component for the specified read-write mode;
the response indicates the component'"'"'s present access type for the request'"'"'s specified read-write mode.
-
-
30. An automobile vehicle computer comprising:
-
a processor configured to execute an operating system and one or more applications;
an application program interface (API) set comprising a component communications method (“
device-com”
method), the device-com method being executable on the processor to facilitate communication between applications and objects that are representative of vehicle components;
the API set further comprising a component communication helper method (“
device-com”
method), the device-com helper executable on the processor to;
receive a request to communicate with a component through a representative object of the component;
facilitate communication processing low-level communications between the component and its object. - View Dependent Claims (31, 32, 33, 34, 35, 36)
the component has a read-write mode and an access type for each read-write mode; the request specifies a read-write mode and inquires about a present access type of the component for the specified read-write mode;
the response indicates the component'"'"'s present access type for the request'"'"'s specified read-write mode.
-
-
32. A vehicle computer as recited in claim 30, wherein
the component has a read-write mode and an access type for each read-write mode; the request specifies a read-write mode and sets a present access type of the component for the specified read-write mode.
-
33. A vehicle computer as recited in claim 30, wherein
the component has an associated mini-driver that facilitates communication between the device-helper method and the component; the request specifies that communications to the component will be facilitated by the component'"'"'s associated mini-driver.
-
34. A vehicle computer as recited in claim 30, wherein the request seeks data regarding the component.
-
35. A vehicle computer as recited in claim 30, wherein the component can control functions of the vehicle and the request instructs the component to control one or more of such functions.
-
36. A computer-readable medium having computer-executable instructions that, when executed by a computer, performs the method as recited in claim 30.
-
37. In an automobile vehicle computer system having a vehicle computer operatively coupled with vehicle components, the vehicle computer having an application program interface (API) set for communicating to components, a component communications method comprising:
-
receiving a request from an application to communicate with a component via an object logically representing the component;
facilitating such request by invoking a component communications helper method (“
device-helper”
method) to communicate with the component;
communicating with the component. - View Dependent Claims (38)
receiving a response from the component, wherein the response contains data in a raw format;
converting the data in the response into a format expected by an application.
-
-
39. A computer-readable medium having computer-executable instructions for application program interfaces (APIs) that, when executed by a vehicle computer in a vehicle computer system, the vehicle computer having a component communications helper configured to facilitate communication with components, performs the method comprising:
-
receiving a request from an application to communicate with a component via an object logically representing the component;
facilitating such request by invoking a component communications helper method (“
device-helper”
method) to communicate with the component;
communicating with the component. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48)
the receiving comprises receiving a get-availability request to get an availability status of the component; the get-availability request comprises a memory address for holding a true-or-false value that indicates whether the component is available.
-
-
41. A computer-readable medium performs the method as recited in claim 39, wherein the receiving comprises receiving a get-availability request to get an availability status of the component, further comprising
responding to the get-availability request with values indicating that: -
the availability status was successfully returned;
a parameter in the request was invalid;
oran error occurred.
-
-
42. A computer-readable medium performs the method as recited in claim 39, wherein
the receiving comprises receiving a get-mode-access request inquiring about an access type of the component for a read-write mode, wherein the get-mode-access request comprises a parameter that specifies a read-write mode; -
the get-mode-access request comprises a memory address for holding a value indicating whether the component;
is sharable access type for the specified read-write mode;
has exclusive access type for the specified read-write mode;
oris not accessible in the specified read-write mode.
-
-
43. A computer-readable medium performs the method as recited in claim 39, wherein the receiving comprises receiving a get-availability request inquiring about an access type of the component for a read-write mode and the get-mode-access request comprises a parameter that specifies a read-write mode, further comprising:
-
responding to the get-mode-access request with values indicating that;
the access type was successfully determined;
a parameter in the request was invalid;
oran error occurred.
-
-
44. A computer-readable medium performs the method as recited in claim 39, wherein
the receiving comprises receiving a put-mode-access request for setting of an access type of the component for a read-write mode, the put-mode-access request comprises parameters that: -
specify a read-write mode; and
specify an access type for the specified read-write mode, wherein such access type is either “
sharable”
or “
exclusively sharable.”
-
-
45. A computer-readable medium performs the method as recited in claim 39, wherein the receiving comprises receiving a put-mode-access request for setting of an access type of the component for a read-write mode, the put-mode-access request comprises a parameter that specifies a read-write mode, and the put-mode-access request comprises a parameter that specifies a read-write mode, the method further comprising:
-
responding to the put-mode-access request with values indicating that;
the access type was successfully set;
a parameter in the request was invalid;
oraccess was denied.
-
-
46. A computer-readable medium performs the method as recited in claim 39, wherein
the receiving comprises receiving a get-data request seeks data from the component, wherein the get-data request comprises parameters comprising: -
a memory address of data returned from the component;
a memory address of an interface to convert data returned from the component; and
a value indicating time to wait for a reply to the get-data request.
-
-
47. A computer-readable medium performs the method as recited in claim 39, the receiving comprises receiving a get-data request seeks data from the component, further comprising:
-
responding to the get-data request with values indicating that;
the data was successfully retrieved from the component;
the component cannot return data that the get-data request seeks;
a parameter in the request was invalid;
access to the component is denied;
oran error occurred.
-
-
48. A computer-readable medium performs the method as recited in claim 39, wherein
the receiving comprises receiving a set-data request seeks to instruct the component to perform an action by sending control data to the component, wherein the set-data request comprises parameters comprising: -
a memory address of the control data being sent the component;
a memory address of an interface to convert the control data sent to and returned from the component; and
a value indicating time to wait for a reply to the set-data request.
-
-
49. In an automobile vehicle computer system having a vehicle computer operatively coupled with vehicle components, the components having representative objects, the vehicle computer having an application program interface (API) set comprising a component communications method (“
- device-com”
method) and component communications helper method (“
device-helper”
method), a component communications method comprising;invoking a get-data device-com method to request data from a component via an object that is representative of the component;
invoking a corresponding get-data device-helper method to facilities communication with the component.
- device-com”
Specification