ArtNet.Packet.BitField.Status1 (ArtNet v0.1.0)

View Source

Status1 bit field used by ArtNet.Packet.ArtPollReply.

This field reports node capabilities and indicator state.

Bit size

This bit field is encoded in 8 bits.

Bit layout

FieldDescriptionBitsDefaultValue
ubeaUBEA is present.0requiredboolean flag
rdmNode supports RDM.1requiredboolean flag
boot_romNode is booted from ROM.2requiredboolean flag
port_addressPort-Address authority reported by ArtNet.Packet.EnumTable.PortAddress.4..5requiredArtNet.Packet.EnumTable.PortAddress enum (2 bits)
indicatorIndicator state reported by ArtNet.Packet.EnumTable.Indicator.6..7requiredArtNet.Packet.EnumTable.Indicator enum (2 bits)

Summary

Functions

Returns the bit-field schema in declaration order.

Returns the total number of bits encoded by this bit field.

Decodes an unsigned integer into this bit-field struct.

Encodes this bit-field struct into an unsigned integer.

Types

t()

@type t() :: %ArtNet.Packet.BitField.Status1{
  boot_rom: :boolean,
  indicator: ArtNet.Packet.EnumTable.Indicator.type(),
  port_address: ArtNet.Packet.EnumTable.PortAddress.type(),
  rdm: :boolean,
  ubea: :boolean
}

Functions

bit_field_schema()

@spec bit_field_schema() :: [
  {key :: atom(),
   {ArtNet.Packet.BitField.schema_type(),
    {start_bit :: non_neg_integer(), length :: pos_integer()}}}
]

Returns the bit-field schema in declaration order.

bit_size()

@spec bit_size() :: pos_integer()

Returns the total number of bits encoded by this bit field.

This bit field is encoded in 8 bits.

decode(value)

@spec decode(non_neg_integer()) :: {:ok, t()} | :error

Decodes an unsigned integer into this bit-field struct.

encode(struct)

@spec encode(t()) :: {:ok, non_neg_integer()} | :error

Encodes this bit-field struct into an unsigned integer.