# 1. py-armodel
## 1.1. Purpose
To support AUTOSAR model with python
## 1.2. Reference Documents
1. AUTOSAR_TPS_XMLSchemaProductionRules.pdf
2. AUTOSAR_TPS_ARXMLSerializationRules.pdf
|Version|Documentation|Travis CI|Coverage Status|Pypi|
|--|--|--|--|--|
|[![GitHub version](https://badge.fury.io/gh/melodypapa%2Fpy-armodel.svg)](https://badge.fury.io/gh/melodypapa%2Fpy-armodel)|[![Documentation Status](https://readthedocs.org/projects/py-armodel/badge/?version=latest)](https://py-armodel.readthedocs.io/en/latest)|[![](https://www.travis-ci.com/melodypapa/py-armodel.svg?branch=main)](https://www.travis-ci.com/melodypapa/py-armodel)|[![Coverage Status](https://coveralls.io/repos/github/melodypapa/py-armodel/badge.svg?branch=main)](https://coveralls.io/github/melodypapa/py-armodel?branch=main)|[![PyPI version](https://badge.fury.io/py/armodel.svg)](https://badge.fury.io/py/armodel)|
## 1.3. How to create the distribution and upload to pypi
1. Run `python setup.py bdist_wheel` to generate distribution
2. Run `twine check dist/*` to check the validation of distribution
3. Run `twine upload dist/*` to upload to pypi repository
4. Check the website https://pypi.org/project/armodel/ to find out it works or not
And more details can be found at https://packaging.python.org/
## 1.4. How to perform Unit test
* Run `pip install pytest pytest-cov` to install pytest.
* Run `pytest --cov=armodel --cov-report term-missing` to verify all the functionality.
## 1.5. How to create a distribution and wheel
* Run `python setup.py sdist bdist_wheel --universal`
## 1.6. How to create the document
1. Run `pip install sphinx` to install the necessary document
## 1.7. Heritage
```
- ARObject
- Referrable
- MultilanguageReferrable
- Identifiable
- PackageableElement
- ARElement
- AtpType
- AutosarDataType
- PortInterface
- DataInterface
- NvDataInterface
- ParameterInterface
- SenderReceiverInterface
- BswModuleEntry
- EndToEndProtectionSet
- Implementation
- BswImplementation
- AtpFeature
- AtpPrototype
- AtpPrototype
- DataPrototype
- AutosarDataPrototype
- VariableDataPrototype
- ApplicationCompositeElementDataPrototype
- ApplicationArrayElement
- ApplicationRecordElement
- AtpStructureElement
- BswModuleDescription
- ExecutableEntity
- SwcBswMapping
- PortPrototype
- AbstractProvidedPortPrototype
- PPortPrototype
- AbstractRequiredPortPrototype
- RPortPrototype
- ValueSpecification
- ConstantReference
```
## 1.8. CLI usages
### 1.8.1. arxml-dump
**Dump all the arxml data to screen**
`arxml-dump --arxml arg -h`
--arxml arg The file name of arxml data
-h show the help information
#### 1.8.1.1. arxml-dump usage
**Dump the arxml data from test1.arxml and test2.arxml**
```
$arxml-dump --arxml test1.arxml --arxml test2.arxml
```
### 1.8.2. arxml-swc
**List all the SwComponentType in the autosar model**
usage: swc-list [-h] [-v] [-f FORMAT] [--filter FILTER] Input [Input ...]
-h, --help show the help message and exit
-v, --verbose Print debug information
-f FORMAT, --format FORMAT
Specify the short or long name of Sw-C.
*short* : only print the short name of SWComponentType
*long* : print the SWComponentType with ARPackage names
--filter FILTER Set the filter condition.
*CompositionSwComponent* : Print the CompositionSwComponent only.
#### 1.8.2.1. List all the SW-Components in the specific path
```
$arxml-swc <arxml_folder>
```
#### 1.8.2.2. List all the CompositionSwComponent with the long name
```
$arxml-swc --format long --filter CompositionSwComponent <arxml_folder>
```
### 1.8.3. connector2xlsx
**Export all the SwConnector (AssemblySwConnector, DelegationSwConnector) to excel file**
```
$connector2xlsx src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx
```
### 1.8.4. connector-update
**Update all the SwConnector (AssemblySwConnector, DelegationSwConnector) from excel file**
```
$connector-update src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx data/Test.arxml
```
## 1.9. API
### 1.9.1. Constructor
```
ARXMLParser(options={"warning": True})
```
## 1.10. Change notes:
**Version 0.1.1**
Add the ARRAY category support for ImplementationDataType
**Version 0.1.2**
Add the AsynchronousServerCallPoint support for ARXML
**Version 0.1.3**
Fix the attribute intervalType of **Limit** is empty issue.
**Version 1.0.0**
1. Add the logging support
2. Add the <warning> option to disable exception raised.
3. Add the BswMD support
**Version 1.1.0**
1. Add the InitEvent support. (Issue #5)
2. Add the DataReceiveEvent support. (Issue #5)
3. Add the SwcModeSwitchEvent support. (Issue #5)
**Version 1.2.0**
1. Add the SwcImplementation support (Issue #9)
2. Add the integer value for memory section alignment (Issue #9)
3. Remove the required attributes for the Implementation according to the AUTOSAR standard 23R-11. (Issue #9)
4. Change the START-ON-EVENT-REF to optional according to the AUTOSAR standard 23R-11. (Issue #9)
5. Change the HANDLE-OUT-OF-RANGE to optional according to the AUTOSAR standard 23R-11. (Issue #9)
6. Add the SensorActuatorSwComponentType support (Issue #9)
7. Change the CATEGORY of COMPU-METHOD to optional.
8. Change the CAN-BE-INVOKED-CONCURRENTLY to optional.
**Version 1.3.0**
1. List all the SwComponentType (Issue #11)
2. Support to parse the DelegationSwConnector (Issue #12)
3. Correct the class definitions of PPortInCompositionInstanceRef and RPortInCompositionInstanceRef. (Issue #12)
**Version 1.4.0**
1. Support to write the AUTOSAR model to arxml file (Issue #17)
* ARPackage
* CompositionSwComponent
* CompuMethod
* DataConstr
* Unit
2. Support to read the AUTOSAR model from arxml file (Issue #17)
* ConstantSpecification
* DataConstr
* Unit
**Version 1.4.1**
1. Support to read the AUTOSAR model from arxml file (Issue #19)
* ServerComSpec
* PerInstanceMemory
* PortDefinedArgumentValue
* DataWriteAccesses
* NvBlockNeeds
* CompositeNetworkRepresentation
* PortGroup
2. Support to write the AUTOSAR model to arxml file (Issue #19)
* ServerComSpec
* PerInstanceMemory
* ServerCallPoint
* ReadLocalVariable
* WrittenLocalVariable
* PortDefinedArgumentValue
* RVariableInAtomicSwcInstanceRef
* DataWriteAccesses
* NvBlockNeeds
* RecordValueSpecification
* CompositeNetworkRepresentation
* PortGroup
3. Move the ARPackage from the Elements.
**Version 1.4.2**
1. Support to read the AUTOSAR model from arxml file (Issue #23)
* EndToEndProtectionSet
* EndToEndProtection
* EndToEndProtectionVariablePrototype
* EndToEndDescription
* ApplicationArrayDataType
* SwRecordLayout
* SwCalprmAxisSet
* SwCalprmAxis
* ApplicationArrayElement
* ApplicationArrayDataType
* SwRecordLayoutGroup
* SwRecordLayoutGroupContent
2. Support to write the AUTOSAR model to arxml file (Issue #23)
* EndToEndProtectionSet
* EndToEndProtection
* EndToEndProtectionVariablePrototype
* EndToEndDescription
* ApplicationArrayDataType
* SwRecordLayout
* SwCalprmAxisSet
* SwCalprmAxis
* ApplicationArrayElement
* ApplicationArrayDataType
* SwRecordLayoutGroup
* SwRecordLayoutGroupContent
* ImplementationDataType
**Version 1.4.3**
1. Support to write the AUTOSAR model to arxml file (Issue #25)
* BswCalledEntity
* BswSchedulableEntity
* BswImplementation
* ServiceSwComponentType
* DataTypeMappingSet
* ModeRequestTypeMap
* PortInterface
* ModeInterface
2. Support ot read the AUTOSAR model to arxml file (Issue #25)
* ServiceSwComponentType
* ModeRequestTypeMap
* PortInterface
* ModeInterface
3. Refactor the Base ARType
* ARFloat
* ARNumerical
* ARLiteral
4. Fix Issue #22 - raise wrong Exception: Invalid ResourceConsumption of Implementation
**Version 1.5.0**
1. Fix the old ARElement (Issue #27)
* InitEvent
* SwcTiming
* ConstantMemory
* ModeSwitchReceiverComSpec
* MODE-ACCESS-POINTS
2. Add the timestamp to following ARElement (Issue #27)
* AUTOSAR-VARIABLE-IREF
* MODE-REQUEST-TYPE-MAP
3. Timing Extension (Issue #27)
* TIMING-REQUIREMENTS
* EXECUTION-ORDER-CONSTRAINT
* EOC-EXECUTABLE-ENTITY-REF
4. Communication (Issue #27)
* LIN-CLUSTER
* NM-PDU
* LIN-UNCONDITIONAL-FRAME
* CAN-FRAME
* GATEWAY
* I-SIGNAL
**Version 1.6.0**
1. Add the annotation support for the Identifiable class. (Issue #29)
2. Ecuc (Issue #29)
* EcucValueCollection
* EcucModuleConfigurationValues
* EcucContainerValue
* EcucParameterValue
* EcucAbstractReferenceValue
3. To support the following AR Element:
* I-SIGNAL-GROUP
* I-SIGNAL-I-PDU-GROUP
* NM-CONFIG
* NM-NODE
* NM-CLUSTER
* CAN-NM-MODE
* NM-ECU
* SECURED-I-PDU
* MODE-SWITCH-POINTS
4. Create the CLI (armodel-system-signal) to list all the system signals
**Version 1.6.1**
1. Organize the armodel package.
2. Add the Get/Set method for several class.
**Version 1.6.2**
1. Change the AUTOSAR.clear() to AUTOSAR.new().
2. Fix the several refactor methods issue.
**Version 1.6.3**
1. Change the Package structure according to AUTOSAR standard.
**Version 1.6.4**
1. Refactor the Implementation.
2. Fix the Binary value
3. Refactor the SwComponentType.
**Version 1.7.0**
1. To support the following AR Element:
* SWC-TO-ECU-MAPPING
* SW-MAPPINGS
* ROOT-SOFTWARE-COMPOSITIONS
* SPEED
* ECU-INSTANCE
* COMM-CONTROLLERS
* CAN-COMMUNICATION-CONNECTOR
* I-PDU-TIMING
* DATA-FILTER
* EVENT-CONTROLLED-TIMING
**Version 1.7.1**
1. To support the following AR Element:
* INTRODUCTION
* LIST
* SW-INTENDED-RESOLUTION
* REFERENCE-BASE
**Version 1.7.2**
1. Fix the invalidationPolicy of SenderReceiverInterface cannot be written in ARXML
2. To support the following AR Element:
* SW-ADDR-METHOD
* DIAGNOSTIC-COMMUNICATION-MANAGER-NEEDS
* DIAGNOSTIC-ROUTINE-NEEDS
* DIAGNOSTIC-VALUE-NEEDS
* DIAGNOSTIC-EVENT-NEEDS
* CRYPTO-SERVICE-NEEDS
* DIAG-EVENT-DEBOUNCE-MONITOR-INTERNAL
* ROLE-BASED-DATA-TYPE-ASSIGNMENT
* ASYNCHRONOUS-SERVER-CALL-RETURNS-EVENT
* PR-PORT-PROTOTYPE
**Version 1.7.3**
1. To support the following AR Element:
* MEM-CLASS-SYMBOL
* ASYNCHRONOUS-SERVER-CALL-RESULT-POINTS
* STEP-SIZE
* BSW-INTERRUPT-ENTITY
* FLAT-MAP
* VARIABLE-AND-PARAMETER-INTERFACE-MAPPING
* PORT-INTERFACE-MAPPING-SET
* DATA-MAPPINGS
* ECU-STATE-MGR-USER-NEEDS
* STACK-USAGES
* ROUGH-ESTIMATE-STACK-USAGE
2. To improve the following AR Element:
* PARAMETER-INTERFACE
**Version 1.7.4**
1. To support the following AR Element:
* DIAGNOSTIC-EVENT-INFO-NEEDS
* AR-TYPED-PER-INSTANCE-MEMORYS
* USED-DATA-ELEMENT
* ETHERNET-COMMUNICATION-CONTROLLER
* ETHERNET-COMMUNICATION-CONNECTOR
* ETHERNET-PHYSICAL-CHANNEL
* PHYSICAL-PROPS
* SO-AD-CONFIG
2. To improve the following AR Element:
* MODE-SWITCH-RECEIVER-COM-SPEC
* APPLICATION-ARRAY-DATA-TYPE
**Version 1.7.5**
1. To support the following AR Element:
* DIAGNOSTIC-CONNECTION
* DIAGNOSTIC-SERVICE-TABLE
* LIN-MASTER
* LIN-COMMUNICATION-CONNECTOR
* UDP-NM-CLUSTER
* UDP-NM-NODE
* MULTIPLEXED-I-PDU
* USER-DEFINED-I-PDU
* USER-DEFINED-PDU
* GENERAL-PURPOSE-I-PDU
* GENERAL-PURPOSE-PDU
* SECURE-COMMUNICATION-PROPS-SET
* SO-AD-ROUTING-GROUP
* BUS-OFF-RECOVERY
* SCHEDULE-TABLES
* INFRASTRUCTURE-SERVICES
* GENERIC-TP
* TCP-TP
* UDP-TP
* CONSUMED-SERVICE-INSTANCES
2. Fix the following AR Element
* SW-RECORD-LAYOUT-V-AXIS
* SW-RECORD-LAYOUT-GROUP-AXIS
3. Improve the following AR Element
* SOCKET-CONNECTION
* SOCKET-ADDRESS
**Version 1.7.6**
1. To support the following AR Element:
* PROVIDED-SERVICE-INSTANCE
* MAC-MULTICAST-GROUP
* ASSOCIATED-COM-I-PDU-GROUP-REF
* CAN-CONTROLLER-CONFIGURATION-REQUIREMENTS
* CAN-CONTROLLER-FD-REQUIREMENTS
2. Improve the following AR Element
* AR-PACKAGE
* LIN-TP-CONFIG
* DIAGNOSTIC-SERVICE-TABLE
* LIN-MASTER
* IMPLEMENTATION-DATA-TYPE
* ETHERNET-COMMUNICATION-CONTROLLER
* I-SIGNAL-PORT
* SYMBOL-PROPS
* I-PDU-PORT
3. Fix the following AR Element
* I-PDU-MAPPING
**Version 1.7.7**
1. To support the following AR Element:
* UDP-NM-CLUSTER
* UDP-NM-CLUSTER-COUPLING
* NM-IF-ECUS
* UDP-NM-ECU
* TRANSMISSION-MODE-FALSE-TIMING
* SECURED-I-PDU
* MULTIPLEXED-I-PDU
* NM-PDU
* SECURE-COMMUNICATION-PROPS-SET
* SO-AD-ROUTING-GROUP
* ECU-RESOURCE-MAPPINGS
* SW-IMPL-MAPPINGS
* CAN-TP-CONFIG
* DO-IP-TP-CONFIG
* LIN-TP-CONFIG
* BSW-BACKGROUND-EVENT
* BSW-DATA-RECEIVED-EVENT
* BSW-EXTERNAL-TRIGGER-OCCURRED-EVENT
* MODE-SWITCHED-ACK-EVENT
* BACKGROUND-EVENT
2. Improve the following AR Element
* ETHERNET-COMMUNICATION-CONNECTOR
* ECU-INSTANCE
* CAN-NM-NODE
* NM-NODE
* SDG
* DATA-FILTER
* USER-DEFINED-PDU
* APPLICATION-ARRAY-DATA-TYPE
* MODE-SWITCH-SENDER-COM-SPEC
3. Access the RootSwCompositionPrototype directly from AUTOSAR instance
4. Create the mapping for Implementation and InternalBehavior
* AUTOSAR::getBehavior()
* AUTOSAR::getImplementation()
5. Improve the Identifiable::setCategory with Raw String
Raw data
{
"_id": null,
"home_page": "http://github.com/melodypapa/py-armodel",
"name": "armodel",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": null,
"keywords": "AUTOSAR ARXML",
"author": "melodypapa",
"author_email": "melodypapa@outlook.com",
"download_url": null,
"platform": null,
"description": "# 1. py-armodel\r\n\r\n## 1.1. Purpose\r\n\r\nTo support AUTOSAR model with python \r\n\r\n## 1.2. Reference Documents\r\n1. AUTOSAR_TPS_XMLSchemaProductionRules.pdf\r\n2. AUTOSAR_TPS_ARXMLSerializationRules.pdf\r\n\r\n|Version|Documentation|Travis CI|Coverage Status|Pypi|\r\n|--|--|--|--|--|\r\n|[![GitHub version](https://badge.fury.io/gh/melodypapa%2Fpy-armodel.svg)](https://badge.fury.io/gh/melodypapa%2Fpy-armodel)|[![Documentation Status](https://readthedocs.org/projects/py-armodel/badge/?version=latest)](https://py-armodel.readthedocs.io/en/latest)|[![](https://www.travis-ci.com/melodypapa/py-armodel.svg?branch=main)](https://www.travis-ci.com/melodypapa/py-armodel)|[![Coverage Status](https://coveralls.io/repos/github/melodypapa/py-armodel/badge.svg?branch=main)](https://coveralls.io/github/melodypapa/py-armodel?branch=main)|[![PyPI version](https://badge.fury.io/py/armodel.svg)](https://badge.fury.io/py/armodel)|\r\n\r\n## 1.3. How to create the distribution and upload to pypi\r\n1. Run `python setup.py bdist_wheel` to generate distribution\r\n2. Run `twine check dist/*` to check the validation of distribution\r\n3. Run `twine upload dist/*` to upload to pypi repository\r\n4. Check the website https://pypi.org/project/armodel/ to find out it works or not\r\n\r\nAnd more details can be found at https://packaging.python.org/ \r\n\r\n## 1.4. How to perform Unit test\r\n\r\n* Run `pip install pytest pytest-cov` to install pytest.\r\n* Run `pytest --cov=armodel --cov-report term-missing` to verify all the functionality.\r\n\r\n## 1.5. How to create a distribution and wheel\r\n\r\n* Run `python setup.py sdist bdist_wheel --universal`\r\n\r\n## 1.6. How to create the document\r\n\r\n1. Run `pip install sphinx` to install the necessary document\r\n\r\n## 1.7. Heritage \r\n\r\n```\r\n- ARObject\r\n - Referrable\r\n - MultilanguageReferrable\r\n - Identifiable\r\n - PackageableElement\r\n - ARElement\r\n - AtpType\r\n - AutosarDataType\r\n - PortInterface\r\n - DataInterface\r\n - NvDataInterface\r\n - ParameterInterface\r\n - SenderReceiverInterface\r\n - BswModuleEntry\r\n - EndToEndProtectionSet\r\n - Implementation\r\n - BswImplementation\r\n - AtpFeature\r\n - AtpPrototype\r\n - AtpPrototype\r\n - DataPrototype\r\n - AutosarDataPrototype\r\n - VariableDataPrototype\r\n - ApplicationCompositeElementDataPrototype\r\n - ApplicationArrayElement\r\n - ApplicationRecordElement\r\n - AtpStructureElement\r\n - BswModuleDescription\r\n - ExecutableEntity\r\n - SwcBswMapping\r\n - PortPrototype\r\n - AbstractProvidedPortPrototype\r\n - PPortPrototype\r\n - AbstractRequiredPortPrototype\r\n - RPortPrototype\r\n - ValueSpecification\r\n - ConstantReference\r\n```\r\n\r\n## 1.8. CLI usages\r\n\r\n### 1.8.1. arxml-dump\r\n\r\n**Dump all the arxml data to screen**\r\n\r\n\r\n`arxml-dump --arxml arg -h`\r\n\r\n--arxml arg The file name of arxml data\r\n-h show the help information\r\n\r\n#### 1.8.1.1. arxml-dump usage\r\n\r\n**Dump the arxml data from test1.arxml and test2.arxml**\r\n\r\n```\r\n$arxml-dump --arxml test1.arxml --arxml test2.arxml\r\n```\r\n\r\n### 1.8.2. arxml-swc\r\n\r\n**List all the SwComponentType in the autosar model**\r\n\r\nusage: swc-list [-h] [-v] [-f FORMAT] [--filter FILTER] Input [Input ...]\r\n\r\n-h, --help show the help message and exit\r\n-v, --verbose Print debug information\r\n-f FORMAT, --format FORMAT\r\n Specify the short or long name of Sw-C. \r\n *short* : only print the short name of SWComponentType\r\n *long* : print the SWComponentType with ARPackage names\r\n--filter FILTER Set the filter condition. \r\n *CompositionSwComponent* : Print the CompositionSwComponent only.\r\n\r\n\r\n#### 1.8.2.1. List all the SW-Components in the specific path\r\n\r\n```\r\n$arxml-swc <arxml_folder>\r\n```\r\n\r\n#### 1.8.2.2. List all the CompositionSwComponent with the long name\r\n\r\n```\r\n$arxml-swc --format long --filter CompositionSwComponent <arxml_folder> \r\n```\r\n\r\n### 1.8.3. connector2xlsx\r\n\r\n**Export all the SwConnector (AssemblySwConnector, DelegationSwConnector) to excel file**\r\n\r\n```\r\n$connector2xlsx src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx\r\n```\r\n\r\n### 1.8.4. connector-update\r\n\r\n**Update all the SwConnector (AssemblySwConnector, DelegationSwConnector) from excel file**\r\n\r\n```\r\n$connector-update src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx data/Test.arxml\r\n```\r\n\r\n\r\n## 1.9. API\r\n\r\n### 1.9.1. Constructor\r\n\r\n```\r\n ARXMLParser(options={\"warning\": True})\r\n```\r\n\r\n## 1.10. Change notes:\r\n\r\n**Version 0.1.1**\r\n\r\nAdd the ARRAY category support for ImplementationDataType\r\n\r\n**Version 0.1.2**\r\n\r\nAdd the AsynchronousServerCallPoint support for ARXML\r\n\r\n**Version 0.1.3**\r\n\r\nFix the attribute intervalType of **Limit** is empty issue.\r\n\r\n**Version 1.0.0**\r\n\r\n1. Add the logging support\r\n2. Add the <warning> option to disable exception raised.\r\n3. Add the BswMD support\r\n\r\n**Version 1.1.0**\r\n\r\n1. Add the InitEvent support. (Issue #5)\r\n2. Add the DataReceiveEvent support. (Issue #5)\r\n3. Add the SwcModeSwitchEvent support. (Issue #5)\r\n\r\n**Version 1.2.0**\r\n\r\n1. Add the SwcImplementation support (Issue #9)\r\n2. Add the integer value for memory section alignment (Issue #9)\r\n3. Remove the required attributes for the Implementation according to the AUTOSAR standard 23R-11. (Issue #9)\r\n4. Change the START-ON-EVENT-REF to optional according to the AUTOSAR standard 23R-11. (Issue #9)\r\n5. Change the HANDLE-OUT-OF-RANGE to optional according to the AUTOSAR standard 23R-11. (Issue #9)\r\n6. Add the SensorActuatorSwComponentType support (Issue #9)\r\n7. Change the CATEGORY of COMPU-METHOD to optional.\r\n8. Change the CAN-BE-INVOKED-CONCURRENTLY to optional.\r\n\r\n**Version 1.3.0**\r\n\r\n1. List all the SwComponentType (Issue #11)\r\n2. Support to parse the DelegationSwConnector (Issue #12)\r\n3. Correct the class definitions of PPortInCompositionInstanceRef and RPortInCompositionInstanceRef. (Issue #12)\r\n\r\n**Version 1.4.0**\r\n\r\n1. Support to write the AUTOSAR model to arxml file (Issue #17)\r\n * ARPackage\r\n * CompositionSwComponent\r\n * CompuMethod\r\n * DataConstr\r\n * Unit\r\n2. Support to read the AUTOSAR model from arxml file (Issue #17)\r\n * ConstantSpecification\r\n * DataConstr\r\n * Unit\r\n\r\n**Version 1.4.1**\r\n\r\n1. Support to read the AUTOSAR model from arxml file (Issue #19)\r\n * ServerComSpec\r\n * PerInstanceMemory\r\n * PortDefinedArgumentValue\r\n * DataWriteAccesses\r\n * NvBlockNeeds\r\n * CompositeNetworkRepresentation\r\n * PortGroup\r\n2. Support to write the AUTOSAR model to arxml file (Issue #19)\r\n * ServerComSpec\r\n * PerInstanceMemory\r\n * ServerCallPoint\r\n * ReadLocalVariable\r\n * WrittenLocalVariable\r\n * PortDefinedArgumentValue\r\n * RVariableInAtomicSwcInstanceRef\r\n * DataWriteAccesses\r\n * NvBlockNeeds\r\n * RecordValueSpecification\r\n * CompositeNetworkRepresentation\r\n * PortGroup\r\n3. Move the ARPackage from the Elements.\r\n\r\n**Version 1.4.2**\r\n\r\n1. Support to read the AUTOSAR model from arxml file (Issue #23)\r\n * EndToEndProtectionSet\r\n * EndToEndProtection\r\n * EndToEndProtectionVariablePrototype\r\n * EndToEndDescription\r\n * ApplicationArrayDataType\r\n * SwRecordLayout\r\n * SwCalprmAxisSet\r\n * SwCalprmAxis\r\n * ApplicationArrayElement\r\n * ApplicationArrayDataType\r\n * SwRecordLayoutGroup\r\n * SwRecordLayoutGroupContent\r\n2. Support to write the AUTOSAR model to arxml file (Issue #23)\r\n * EndToEndProtectionSet\r\n * EndToEndProtection\r\n * EndToEndProtectionVariablePrototype\r\n * EndToEndDescription\r\n * ApplicationArrayDataType\r\n * SwRecordLayout\r\n * SwCalprmAxisSet\r\n * SwCalprmAxis\r\n * ApplicationArrayElement\r\n * ApplicationArrayDataType\r\n * SwRecordLayoutGroup\r\n * SwRecordLayoutGroupContent\r\n * ImplementationDataType\r\n\r\n**Version 1.4.3**\r\n\r\n1. Support to write the AUTOSAR model to arxml file (Issue #25)\r\n * BswCalledEntity\r\n * BswSchedulableEntity\r\n * BswImplementation\r\n * ServiceSwComponentType\r\n * DataTypeMappingSet\r\n * ModeRequestTypeMap\r\n * PortInterface\r\n * ModeInterface\r\n2. Support ot read the AUTOSAR model to arxml file (Issue #25)\r\n * ServiceSwComponentType\r\n * ModeRequestTypeMap\r\n * PortInterface\r\n * ModeInterface\r\n3. Refactor the Base ARType\r\n * ARFloat\r\n * ARNumerical\r\n * ARLiteral\r\n4. Fix Issue #22 - raise wrong Exception: Invalid ResourceConsumption of Implementation\r\n\r\n**Version 1.5.0**\r\n\r\n1. Fix the old ARElement (Issue #27)\r\n * InitEvent\r\n * SwcTiming\r\n * ConstantMemory\r\n * ModeSwitchReceiverComSpec\r\n * MODE-ACCESS-POINTS\r\n2. Add the timestamp to following ARElement (Issue #27)\r\n * AUTOSAR-VARIABLE-IREF\r\n * MODE-REQUEST-TYPE-MAP\r\n3. Timing Extension (Issue #27)\r\n * TIMING-REQUIREMENTS\r\n * EXECUTION-ORDER-CONSTRAINT\r\n * EOC-EXECUTABLE-ENTITY-REF\r\n4. Communication (Issue #27)\r\n * LIN-CLUSTER\r\n * NM-PDU\r\n * LIN-UNCONDITIONAL-FRAME\r\n * CAN-FRAME\r\n * GATEWAY\r\n * I-SIGNAL\r\n\r\n**Version 1.6.0**\r\n\r\n1. Add the annotation support for the Identifiable class. (Issue #29)\r\n2. Ecuc (Issue #29)\r\n * EcucValueCollection\r\n * EcucModuleConfigurationValues\r\n * EcucContainerValue\r\n * EcucParameterValue\r\n * EcucAbstractReferenceValue\r\n3. To support the following AR Element:\r\n * I-SIGNAL-GROUP\r\n * I-SIGNAL-I-PDU-GROUP\r\n * NM-CONFIG\r\n * NM-NODE\r\n * NM-CLUSTER\r\n * CAN-NM-MODE\r\n * NM-ECU\r\n * SECURED-I-PDU\r\n * MODE-SWITCH-POINTS\r\n 4. Create the CLI (armodel-system-signal) to list all the system signals\r\n\r\n**Version 1.6.1**\r\n\r\n1. Organize the armodel package.\r\n2. Add the Get/Set method for several class.\r\n\r\n**Version 1.6.2**\r\n\r\n1. Change the AUTOSAR.clear() to AUTOSAR.new().\r\n2. Fix the several refactor methods issue.\r\n\r\n**Version 1.6.3**\r\n\r\n1. Change the Package structure according to AUTOSAR standard.\r\n\r\n**Version 1.6.4**\r\n\r\n1. Refactor the Implementation.\r\n2. Fix the Binary value\r\n3. Refactor the SwComponentType.\r\n\r\n**Version 1.7.0**\r\n\r\n1. To support the following AR Element:\r\n * SWC-TO-ECU-MAPPING\r\n * SW-MAPPINGS\r\n * ROOT-SOFTWARE-COMPOSITIONS\r\n * SPEED\r\n * ECU-INSTANCE\r\n * COMM-CONTROLLERS\r\n * CAN-COMMUNICATION-CONNECTOR\r\n * I-PDU-TIMING\r\n * DATA-FILTER\r\n * EVENT-CONTROLLED-TIMING\r\n\r\n**Version 1.7.1**\r\n\r\n1. To support the following AR Element:\r\n * INTRODUCTION\r\n * LIST\r\n * SW-INTENDED-RESOLUTION\r\n * REFERENCE-BASE\r\n\r\n**Version 1.7.2**\r\n\r\n1. Fix the invalidationPolicy of SenderReceiverInterface cannot be written in ARXML\r\n2. To support the following AR Element:\r\n * SW-ADDR-METHOD\r\n * DIAGNOSTIC-COMMUNICATION-MANAGER-NEEDS\r\n * DIAGNOSTIC-ROUTINE-NEEDS\r\n * DIAGNOSTIC-VALUE-NEEDS\r\n * DIAGNOSTIC-EVENT-NEEDS\r\n * CRYPTO-SERVICE-NEEDS\r\n * DIAG-EVENT-DEBOUNCE-MONITOR-INTERNAL\r\n * ROLE-BASED-DATA-TYPE-ASSIGNMENT\r\n * ASYNCHRONOUS-SERVER-CALL-RETURNS-EVENT\r\n * PR-PORT-PROTOTYPE\r\n\r\n**Version 1.7.3**\r\n\r\n1. To support the following AR Element:\r\n * MEM-CLASS-SYMBOL\r\n * ASYNCHRONOUS-SERVER-CALL-RESULT-POINTS\r\n * STEP-SIZE\r\n * BSW-INTERRUPT-ENTITY\r\n * FLAT-MAP\r\n * VARIABLE-AND-PARAMETER-INTERFACE-MAPPING\r\n * PORT-INTERFACE-MAPPING-SET\r\n * DATA-MAPPINGS\r\n * ECU-STATE-MGR-USER-NEEDS\r\n * STACK-USAGES\r\n * ROUGH-ESTIMATE-STACK-USAGE\r\n2. To improve the following AR Element:\r\n * PARAMETER-INTERFACE\r\n\r\n**Version 1.7.4**\r\n\r\n1. To support the following AR Element:\r\n * DIAGNOSTIC-EVENT-INFO-NEEDS\r\n * AR-TYPED-PER-INSTANCE-MEMORYS\r\n * USED-DATA-ELEMENT\r\n * ETHERNET-COMMUNICATION-CONTROLLER\r\n * ETHERNET-COMMUNICATION-CONNECTOR\r\n * ETHERNET-PHYSICAL-CHANNEL\r\n * PHYSICAL-PROPS\r\n * SO-AD-CONFIG\r\n2. To improve the following AR Element:\r\n * MODE-SWITCH-RECEIVER-COM-SPEC\r\n * APPLICATION-ARRAY-DATA-TYPE\r\n\r\n**Version 1.7.5**\r\n\r\n1. To support the following AR Element:\r\n * DIAGNOSTIC-CONNECTION\r\n * DIAGNOSTIC-SERVICE-TABLE\r\n * LIN-MASTER\r\n * LIN-COMMUNICATION-CONNECTOR\r\n * UDP-NM-CLUSTER\r\n * UDP-NM-NODE\r\n * MULTIPLEXED-I-PDU\r\n * USER-DEFINED-I-PDU\r\n * USER-DEFINED-PDU\r\n * GENERAL-PURPOSE-I-PDU\r\n * GENERAL-PURPOSE-PDU\r\n * SECURE-COMMUNICATION-PROPS-SET\r\n * SO-AD-ROUTING-GROUP\r\n * BUS-OFF-RECOVERY\r\n * SCHEDULE-TABLES\r\n * INFRASTRUCTURE-SERVICES\r\n * GENERIC-TP\r\n * TCP-TP\r\n * UDP-TP\r\n * CONSUMED-SERVICE-INSTANCES\r\n2. Fix the following AR Element\r\n * SW-RECORD-LAYOUT-V-AXIS\r\n * SW-RECORD-LAYOUT-GROUP-AXIS\r\n3. Improve the following AR Element\r\n * SOCKET-CONNECTION\r\n * SOCKET-ADDRESS\r\n\r\n**Version 1.7.6**\r\n\r\n1. To support the following AR Element:\r\n * PROVIDED-SERVICE-INSTANCE\r\n * MAC-MULTICAST-GROUP\r\n * ASSOCIATED-COM-I-PDU-GROUP-REF\r\n * CAN-CONTROLLER-CONFIGURATION-REQUIREMENTS\r\n * CAN-CONTROLLER-FD-REQUIREMENTS\r\n2. Improve the following AR Element\r\n * AR-PACKAGE\r\n * LIN-TP-CONFIG\r\n * DIAGNOSTIC-SERVICE-TABLE\r\n * LIN-MASTER\r\n * IMPLEMENTATION-DATA-TYPE\r\n * ETHERNET-COMMUNICATION-CONTROLLER\r\n * I-SIGNAL-PORT\r\n * SYMBOL-PROPS\r\n * I-PDU-PORT\r\n3. Fix the following AR Element\r\n * I-PDU-MAPPING\r\n\r\n**Version 1.7.7**\r\n\r\n1. To support the following AR Element:\r\n * UDP-NM-CLUSTER\r\n * UDP-NM-CLUSTER-COUPLING\r\n * NM-IF-ECUS\r\n * UDP-NM-ECU\r\n * TRANSMISSION-MODE-FALSE-TIMING\r\n * SECURED-I-PDU\r\n * MULTIPLEXED-I-PDU\r\n * NM-PDU\r\n * SECURE-COMMUNICATION-PROPS-SET\r\n * SO-AD-ROUTING-GROUP\r\n * ECU-RESOURCE-MAPPINGS\r\n * SW-IMPL-MAPPINGS\r\n * CAN-TP-CONFIG\r\n * DO-IP-TP-CONFIG\r\n * LIN-TP-CONFIG\r\n * BSW-BACKGROUND-EVENT\r\n * BSW-DATA-RECEIVED-EVENT\r\n * BSW-EXTERNAL-TRIGGER-OCCURRED-EVENT\r\n * MODE-SWITCHED-ACK-EVENT\r\n * BACKGROUND-EVENT\r\n2. Improve the following AR Element\r\n * ETHERNET-COMMUNICATION-CONNECTOR\r\n * ECU-INSTANCE\r\n * CAN-NM-NODE\r\n * NM-NODE\r\n * SDG\r\n * DATA-FILTER\r\n * USER-DEFINED-PDU\r\n * APPLICATION-ARRAY-DATA-TYPE\r\n * MODE-SWITCH-SENDER-COM-SPEC\r\n3. Access the RootSwCompositionPrototype directly from AUTOSAR instance \r\n4. Create the mapping for Implementation and InternalBehavior\r\n * AUTOSAR::getBehavior()\r\n * AUTOSAR::getImplementation()\r\n5. Improve the Identifiable::setCategory with Raw String\r\n\r\n\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "the python arxml parser",
"version": "1.7.7",
"project_urls": {
"Homepage": "http://github.com/melodypapa/py-armodel"
},
"split_keywords": [
"autosar",
"arxml"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c05fa6e447b8e40a60eff60cf98a0a919242674ad35781d6c5b8aa953a29d247",
"md5": "cd2f27c268fb4a555f0549fff4f680ec",
"sha256": "87ce3c5b2aedfac2e317e33d5a8b4ef9c49702ac687f411dc7c695273587eae6"
},
"downloads": -1,
"filename": "armodel-1.7.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "cd2f27c268fb4a555f0549fff4f680ec",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 268303,
"upload_time": "2025-01-06T08:26:27",
"upload_time_iso_8601": "2025-01-06T08:26:27.195950Z",
"url": "https://files.pythonhosted.org/packages/c0/5f/a6e447b8e40a60eff60cf98a0a919242674ad35781d6c5b8aa953a29d247/armodel-1.7.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-06 08:26:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "melodypapa",
"github_project": "py-armodel",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"lcname": "armodel"
}