DataConstraint
XML tag |
<DATA-CONSTR> |
Module |
autosar.datatype |
Inherits |
A DataConstraint is used to decorate other data types with one or more constraints. Use the dataConstraintRef property of the ApplicationDataType or ImplementationDataType classes to access the reference string.
Usage
import autosar
def setup():
ws = autosar.workspace(version="4.2.2")
package=ws.createPackage('ApplicationTypes', role='DataType')
package.createSubPackage('DataConstrs', role='DataConstraint')
return ws
ws = setup()
package = ws.findRolePackage('DataConstraint')
package.createInternalDataConstraint('uint8_DataConstraint', 0, 255)
ws.saveXML('DataTypes.arxml', filters=['/ApplicationTypes'])
Factory Methods
Implicit factory methods
Explicit factory methods
Constructor
- datatype.DataConstraint(name, rules[, constraintLevel = None][, parent = None][, adminData = None])
- 参数
The rule parameter should either be a dictionary or a list of dictionaries. Each dictionary in rules is expected to have three keys:
type: (‘internalConstraint’ or ‘physicalConstraint’).
lowerLimit: Lower limit of the constraint (int, float).
upperLimit: Lower limit of the constraint (int, float).
lowerLimitType: Type of lower limit (
'OPEN'
,'CLOSED'
).upperLimitType: Type of lower limit (
'OPEN'
,'CLOSED'
).
Attributes
For inherited attributes see autosar.element.Element.
Name |
Type |
Description |
---|---|---|
level |
None, int |
<CONSTR-LEVEL> |
rules |
list of InternalConstraint or PhysicalConstraint |
<DATA-CONSTR-RULE> |
Public Properties
All properties are limited to situations where the constraint only has one internal rule. Multi-rule support will be added in a future release.
Name |
Type |
Access Type |
---|---|---|
constraintLevel |
int |
Get |
lowerLimit |
int, float |
Get |
upperLimit |
int, float |
Get |
lowerLimitType |
str |
Get |
upperLimitType |
str |
Get |
Public Methods
Most methods are currently limited to situations where the constraint only has one internal rule. Multi-rule support will be added in a future release.
Method Description
checkValue
- DataConstraint.checkValue(v)
- 参数
v (int, float) – Value.
Checks if value v is inside the limits of the data constraint. If the value is outside then a DataConstraintError will be raised.
findByType
- DataConstraint.findByType(constraintType='internalConstraint')
- 参数
constraintType (str) – Constraint type (
'internalConstraint'
,'physicalConstraint'
).
Returns the first constraint rule that matches given constraint type.