CommsDSL Specification
  • Introduction
  • Version
  • Schema Definition
  • Multiple Files
  • Namespaces
  • Platforms
  • References
  • Properties
  • Numeric Values
  • Boolean Values
  • Names
  • Protocol Versioning
  • Schema
  • Fields
    • Common Properties of Fields
    • enum Field
    • int Field
    • set Field
    • bitfield Field
    • bundle Field
    • string Field
    • data Field
    • list Field
    • float Field
    • ref Field
    • optional Field
    • variant Field
    • Referencing Values of Other Fields
  • Messages
  • Interfaces
  • Aliases
  • Frames
    • Common Properties of Layers
    • payload Layer
    • id Layer
    • size Layer
    • sync Layer
    • checksum Layer
    • value Layer
    • custom Layer
  • Protocol Versioning Summary
  • Appendix
    • Properties of schema
    • Common Properties of Fields
    • Properties of enum Field
    • Properties of int Field
    • Properties of set Field
    • Properties of bitfield Field
    • Properties of bundle Field
    • Properties of string Field
    • Properties of data Field
    • Properties of list Field
    • Properties of float Field
    • Properties of ref Field
    • Properties of optional Field
    • Properties of variant Field
    • Units
    • Properties of message
    • Properties of interface
    • Properties of alias
    • Properties of frame
    • Common Properties of Layers
    • Properties of checksum Layer
    • Properties of value Layer
    • Properties of custom Layer
Powered by GitBook
On this page

Was this helpful?

  1. Appendix

Properties of enum Field

PreviousCommon Properties of FieldsNextProperties of int Field

Last updated 5 years ago

Was this helpful?

The <enum> field has all the properties as well as ones listed below. Refer to chapter for detailed description.

Property Name

Allowed type / value

DSL Version

Required

Default Value

Description

type

"int8", "uint8", "int16", "uint16", "int32", "uint32", "int64", "uint64", "intvar", "uintvar"

1

yes

Underlying primitive type.

defaultValue

or

1

no

0

Default value. Must fit the underlying type.

endian

"big" or "little"

1

no

endian of

Endian of the field.

length

1

no

length of type

Forced serialization length.

bitLength

1

no

length of type in bits

Serialization length in bits, applicable only to a member of .

hexAssign

1

no

false

Assign generated enum values using hexadecimal numbers.

nonUniqueAllowed

1

no

false

Allow non unique <validValue>-es.

validCheckVersion

1

no

false

Take into account protocol version when generating code for field's value validity check.

Properties of <validValue> Child Element of <enum> Field

Property Name

Allowed type / value

DSL Version

Required

Default Value

Description

name

string

1

yes

Name of the value.

val

1

yes

Numeric value.

description

string

1

no

Human readable description of the value.

displayName

string

1

no

Human readable name of the value to display in various analysis tools.

sinceVersion

1

no

0

Version of the protocol in which value was introduced.

deprecated

1

no

max unsigned

Version of the protocol in which value was deprecated. Must be greater than value of sinceVersion.

common
<enum> Field
numeric
name
schema
unsigned
unsigned
<bitfield>
bool
bool
bool
name
numeric
unsigned
unsigned