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 set Field

PreviousProperties of int FieldNextProperties of bitfield Field

Last updated 5 years ago

Was this helpful?

The <set> 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

"uint8", "uint16", "uint32", "uint64"

1

yes (no if length is specified)

Underlying primitive type.

length

1

yes (no if type is specifed)

length of type

Serialization length.

bitLength

1

no

length of type in bits

defaultValue

1

no

false

Default initialization value of every bit.

reservedValue

1

no

false

Expected value of every reserved bit.

endian

"big" or "little"

1

no

Endian of the field.

nonUniqueAllowed

1

no

false

Allow non unique <bit>-s.

validCheckVersion

1

no

false

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

Properties of <bit> Child Element of <set> Field

Property Name

Allowed type / value

DSL Version

Required

Default Value

Description

name

1

yes

Name of the value.

idx

1

yes

Index of the specified bit. Counting starts from least significant bit.

description

string

1

no

Human readable description of the bit.

displayName

string

1

no

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

defaultValue

1

no

defaultValue of the <set> field

Default value of the bit (when constructed).

reservedValue

1

no

reservedValue of the <set> field

Expected value of the bit if it is reserved.

reserved

1

no

false

Mark / Unmark the bit as being reserved.

sinceVersion

1

no

0

Version of the protocol in which bit was introduced (became non-reserved).

deprecated

1

no

max unsigned

Version of the protocol in which bit was deprecated (became reserved). Must be greater than value of sinceVersion.

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

endian of

string

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