AUTOSAR ARXML处理 - C#的解析代码(四)

2024-04-12 01:36

本文主要是介绍AUTOSAR ARXML处理 - C#的解析代码(四),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4.3 配置参数关键类

4.3.1 配置数据:模块 MODULE (ECUCMODULECONFIGURATIONVALUES,<ECUC-MODULE-CONFIGURATION-VALUES>)

与ECUCMODULEDEF,<ECUC-MODULE-DEF> 关联

    /// <remarks/>[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")][System.SerializableAttribute()][System.Diagnostics.DebuggerStepThroughAttribute()][System.ComponentModel.DesignerCategoryAttribute("code")][System.Xml.Serialization.XmlTypeAttribute(TypeName="ECUC-MODULE-CONFIGURATION-VALUES", Namespace="http://autosar.org/schema/r4.0")]public partial class ECUCMODULECONFIGURATIONVALUES {/// <remarks/>[System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]public ECUCCONTAINERVALUE[] CONTAINERS {get {return this.cONTAINERSField;}set {this.cONTAINERSField = value;}}}

属性CONTAINERS :配置数据参数容器的集合,见下一节。

4.3.2 配置数据:参数容器 (ECUCCONTAINERVALUE,<ECUC-CONTAINER-VALUE>)

   /// <remarks/>[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")][System.SerializableAttribute()][System.Diagnostics.DebuggerStepThroughAttribute()][System.ComponentModel.DesignerCategoryAttribute("code")][System.Xml.Serialization.XmlTypeAttribute(TypeName="ECUC-CONTAINER-VALUE", Namespace="http://autosar.org/schema/r4.0")]public partial class ECUCCONTAINERVALUE {/// <remarks/>[System.Xml.Serialization.XmlArrayAttribute("PARAMETER-VALUES")][System.Xml.Serialization.XmlArrayItemAttribute(typeof(ECUCADDINFOPARAMVALUE), IsNullable=false)][System.Xml.Serialization.XmlArrayItemAttribute(typeof(ECUCNUMERICALPARAMVALUE), IsNullable=false)][System.Xml.Serialization.XmlArrayItemAttribute(typeof(ECUCTEXTUALPARAMVALUE), IsNullable=false)]public object[] PARAMETERVALUES {get {return this.pARAMETERVALUESField;}set {this.pARAMETERVALUESField = value;}}/// <remarks/>[System.Xml.Serialization.XmlArrayAttribute("REFERENCE-VALUES")][System.Xml.Serialization.XmlArrayItemAttribute(typeof(ECUCINSTANCEREFERENCEVALUE), IsNullable=false)][System.Xml.Serialization.XmlArrayItemAttribute(typeof(ECUCREFERENCEVALUE), IsNullable=false)]public object[] REFERENCEVALUES {get {return this.rEFERENCEVALUESField;}set {this.rEFERENCEVALUESField = value;}}/// <remarks/>[System.Xml.Serialization.XmlArrayAttribute("SUB-CONTAINERS")][System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]public ECUCCONTAINERVALUE[] SUBCONTAINERS {get {return this.sUBCONTAINERSField;}set {this.sUBCONTAINERSField = value;}}}

PARAMETERVALUES:配置参数集合

REFERENCEVALUES: 引用对象集合

SUBCONTAINERS:参数容器(自己类)集合

4.3.3 配置数据:参数

4.3.3.1 ECUCADDINFOPARAMVALUE,<ECUC-ADD-INFO-PARAM-VALUE>

本教程未涉及其使用。

    /// <remarks/>[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")][System.SerializableAttribute()][System.Diagnostics.DebuggerStepThroughAttribute()][System.ComponentModel.DesignerCategoryAttribute("code")][System.Xml.Serialization.XmlTypeAttribute(TypeName="ECUC-ADD-INFO-PARAM-VALUE", Namespace="http://autosar.org/schema/r4.0")]public partial class ECUCADDINFOPARAMVALUE {/// <remarks/>public DOCUMENTATIONBLOCK VALUE {get {return this.vALUEField;}set {this.vALUEField = value;}}}
4.3.3.2 ECUCNUMERICALPARAMVALUE,<ECUC-NUMERICAL-PARAM-VALUE>

保存配置模版参数类ECUCFLOATPARAMDEF, ECUCINTEGERPARAMDEF, ECUCBOOLEANPARAMDEF的数据,

4.0.3 参数保存在:ECUCADDINFOPARAMVALUEDEFINITIONREF实例中

4.2.2/4.4.0 参数保存在:ECUCNUMERICALPARAMVALUEDEFINITIONREF实例中

    /// <remarks/>[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")][System.SerializableAttribute()][System.Diagnostics.DebuggerStepThroughAttribute()][System.ComponentModel.DesignerCategoryAttribute("code")][System.Xml.Serialization.XmlTypeAttribute(TypeName="ECUC-NUMERICAL-PARAM-VALUE", Namespace="http://autosar.org/schema/r4.0")]public partial class ECUCNUMERICALPARAMVALUE {/// <remarks/>[System.Xml.Serialization.XmlElementAttribute("DEFINITION-REF")]public ECUCADDINFOPARAMVALUEDEFINITIONREF DEFINITIONREF {get {return this.dEFINITIONREFField;}set {this.dEFINITIONREFField = value;}}/// <remarks/>public NUMERICALVALUEVARIATIONPOINT VALUE {get {return this.vALUEField;}set {this.vALUEField = value;}}}

DEFINITIONREF 属性定义关联的配置模版参数类型和路径

VALUE 属性保存相关配置值。

<ECUC-NUMERICAL-PARAM-VALUE><DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/AUTOSAR/EcucDefs/CanIf/CanIfInitCfg/CanIfRxPduCfg/CanIfRxPduCanId</DEFINITION-REF><VALUE>0</VALUE>
</ECUC-NUMERICAL-PARAM-VALUE>
4.3.3.3 ECUCTEXTUALPARAMVALUE, <ECUC-TEXTUAL-PARAM-VALUE>

保存配置模版参数类 ECUCFUNCTIONNAMEDEF, ECUCLINKERSYMBOLDEF, ECUCMULTILINESTRINGPARAMDEF,ECUCSTRINGPARAMDEF,ECUCENUMERATIONPARAMDEF

    /// <remarks/>[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")][System.SerializableAttribute()][System.Diagnostics.DebuggerStepThroughAttribute()][System.ComponentModel.DesignerCategoryAttribute("code")][System.Xml.Serialization.XmlTypeAttribute(TypeName="ECUC-TEXTUAL-PARAM-VALUE", Namespace="http://autosar.org/schema/r4.0")]public partial class ECUCTEXTUALPARAMVALUE {/// <remarks/>[System.Xml.Serialization.XmlElementAttribute("DEFINITION-REF")]public ECUCADDINFOPARAMVALUEDEFINITIONREF DEFINITIONREF {get {return this.dEFINITIONREFField;}set {this.dEFINITIONREFField = value;}}/// <remarks/>public VERBATIMSTRING VALUE {get {return this.vALUEField;}set {this.vALUEField = value;}}}

DEFINITIONREF :属性定义关联的配置模版参数类型和路径

VALUE : 属性保存相关配置值
        

<ECUC-TEXTUAL-PARAM-VALUE><DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/AUTOSAR/EcucDefs/CanIf/CanIfInitCfg/CanIfRxPduCfg/CanIfRxPduCanIdType</DEFINITION-REF><VALUE>EXTENDED_CAN</VALUE>
</ECUC-TEXTUAL-PARAM-VALUE>

这篇关于AUTOSAR ARXML处理 - C#的解析代码(四)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/895742

相关文章

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

C#如何调用C++库

《C#如何调用C++库》:本文主要介绍C#如何调用C++库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录方法一:使用P/Invoke1. 导出C++函数2. 定义P/Invoke签名3. 调用C++函数方法二:使用C++/CLI作为桥接1. 创建C++/CL

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

Golang HashMap实现原理解析

《GolangHashMap实现原理解析》HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持高效的插入、查找和删除操作,:本文主要介绍GolangH... 目录HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持

利用Python调试串口的示例代码

《利用Python调试串口的示例代码》在嵌入式开发、物联网设备调试过程中,串口通信是最基础的调试手段本文将带你用Python+ttkbootstrap打造一款高颜值、多功能的串口调试助手,需要的可以了... 目录概述:为什么需要专业的串口调试工具项目架构设计1.1 技术栈选型1.2 关键类说明1.3 线程模