05-01-2013, 05:39 PM
(This post was last modified: 07-31-2014, 10:10 AM by Dean Roddey.)
General Description
This thread is for discussion of the DIO device class. Drivers that implement this device class will provide one or more digital inputs and/or outputs.
Fields Provided
[INDENT]It is assumed that, in the general case, the fields will likely be nameable by the user, therefore there are no naming convention limitations on the fields of this device class, other than that they MUST use the appropriate prefix indicator, i.e. that all of them be in one of the forms:
DIO#In_fieldname
DIO#Out_fieldname
DIO#sub~In_fieldname
DIO#sub~Out_fieldname
This indicates that the fields are implementing the DIO device class. They will all be either In_ our Out_ prefixed, to indicate the direction of the field, followed by an arbitrary field name part.
If initial default names are assigned until the user can/does rename them, then it is SUGGESTED that they in some way refer to device specific values, so that it is obvious what input or output each field refers to.[/INDENT]
Multi-Unit Considerations
[INDENT]Though it is generally assumed that these fields will be user nameable to reflect their function and therefore all on an equal footing, if the device provides banks of identical sets of inputs and outputs with a specific purpose, the driver MAY use sub-unit naming conventions. In that case the fieldname parts become fixed, and the sub-unit part becomes the user or device provided name. Each sub-unit must provide an identical set of fields.[/INDENT]
Semantic Requirements
[INDENT]All such fields should be semantically marked with the DigitalIO semantic field type, and follow the conventions indicated by that semantic field type. Outputs are not required to be readable. They MAY be but customization that is intended for generality shouldn't depend on readability of outputs.[/INDENT]
Backdoor Commands/Queries
[INDENT]None are required at this time.[/INDENT]
This thread is for discussion of the DIO device class. Drivers that implement this device class will provide one or more digital inputs and/or outputs.
Fields Provided
[INDENT]It is assumed that, in the general case, the fields will likely be nameable by the user, therefore there are no naming convention limitations on the fields of this device class, other than that they MUST use the appropriate prefix indicator, i.e. that all of them be in one of the forms:
DIO#In_fieldname
DIO#Out_fieldname
DIO#sub~In_fieldname
DIO#sub~Out_fieldname
This indicates that the fields are implementing the DIO device class. They will all be either In_ our Out_ prefixed, to indicate the direction of the field, followed by an arbitrary field name part.
If initial default names are assigned until the user can/does rename them, then it is SUGGESTED that they in some way refer to device specific values, so that it is obvious what input or output each field refers to.[/INDENT]
Multi-Unit Considerations
[INDENT]Though it is generally assumed that these fields will be user nameable to reflect their function and therefore all on an equal footing, if the device provides banks of identical sets of inputs and outputs with a specific purpose, the driver MAY use sub-unit naming conventions. In that case the fieldname parts become fixed, and the sub-unit part becomes the user or device provided name. Each sub-unit must provide an identical set of fields.[/INDENT]
Semantic Requirements
[INDENT]All such fields should be semantically marked with the DigitalIO semantic field type, and follow the conventions indicated by that semantic field type. Outputs are not required to be readable. They MAY be but customization that is intended for generality shouldn't depend on readability of outputs.[/INDENT]
Backdoor Commands/Queries
[INDENT]None are required at this time.[/INDENT]
Dean Roddey
Explorans limites defectum
Explorans limites defectum