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

时间:2024-04-13 22:03:38

 参数类

参数容器(ECUCPARAMCONFCONTAINERDEF)的PARAMETERS集合类由以下参数类实例构成。

枚举参数(ECUCENUMERATIONPARAMDEF )

配置一个下拉选项,如PORT中一个pin可以配置SPI, CAN, PWM

    /// <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-ENUMERATION-PARAM-DEF", Namespace="http://autosar.org/schema/r4.0")]
    public partial class ECUCENUMERATIONPARAMDEF {      
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("DEFAULT-VALUE")]
        public IDENTIFIER DEFAULTVALUE {
            get {
                return this.dEFAULTVALUEField;
            }
            set {
                this.dEFAULTVALUEField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public ECUCENUMERATIONLITERALDEF[] LITERALS {
            get {
                return this.lITERALSField;
            }
            set {
                this.lITERALSField = value;
            }
        }

    }

DEFAULTVALUE :默认值,其他参数类也有该属性

LITERALS : 枚举列表

整型参数 (ECUCINTEGERPARAMDEF)

整数参数,如CanIfRxPduId可以配成3。

    /// <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-INTEGER-PARAM-DEF", Namespace="http://autosar.org/schema/r4.0")]
    public partial class ECUCINTEGERPARAMDEF {
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("WITH-AUTO")]
        public BOOLEAN WITHAUTO {
            get {
                return this.wITHAUTOField;
            }
            set {
                this.wITHAUTOField = value;
            }
        }

        /// <remarks/>
        public UNLIMITEDINTEGERVALUEVARIATIONPOINT MAX {
            get {
                return this.mAXField;
            }
            set {
                this.mAXField = value;
            }
        }
        
        /// <remarks/>
        public UNLIMITEDINTEGERVALUEVARIATIONPOINT MIN {
            get {
                return this.mINField;
            }
            set {
                this.mINField = value;
            }
        }

    }

MAX: 整型的可配置最大值

MIN: 整型的可配置最小值

WITHAUTO :参数类基本都有,在整型里可以设置为TRUE,这样可以让配置工具自动对一些属性编号,如非常常见的 HandleId

浮点参数(ECUCFLOATPARAMDEF)

    /// <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-FLOAT-PARAM-DEF", Namespace="http://autosar.org/schema/r4.0")]
    public partial class ECUCFLOATPARAMDEF {
        /// <remarks/>
        public FLOATVALUEVARIATIONPOINT MAX {
            get {
                return this.mAXField;
            }
            set {
                this.mAXField = value;
            }
        }
        
        /// <remarks/>
        public FLOATVALUEVARIATIONPOINT MIN {
            get {
                return this.mINField;
            }
            set {
                this.mINField = value;
            }
        }
    }

MAX: 浮点的可配置最大值

MIN: 浮点的可配置最小值

布尔参数(ECUCBOOLEANPARAMDEF)

如CanIfVersionInfoApi,可以设置TRUE为使能

    /// <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-BOOLEAN-PARAM-DEF", Namespace="http://autosar.org/schema/r4.0")]
    public partial class ECUCBOOLEANPARAMDEF {


    }

函数参数(ECUCFUNCTIONNAMEDEF)

常用来自定义回调函数名,字符串类型;ECUCSTRINGPARAMDEF, ECUCLINKERSYMBOLDEF用法类似

    /// <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-FUNCTION-NAME-DEF", Namespace="http://autosar.org/schema/r4.0")]
    public partial class ECUCFUNCTIONNAMEDEF {

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("SHORT-NAME")]
        public IDENTIFIER SHORTNAME {
            get {
                return this.sHORTNAMEField;
            }
            set {
                this.sHORTNAMEField = value;
            }
    }

SHORTNAME : 这个属性基本很多类里面都有,后续会经常使用到这个信息。

相关文章