ArtNet. Packet. BitField. PortType
(ArtNet v0.1.0)
View Source
PortType bit field used by ArtNet.Packet.ArtPollReply.
The low bits store the protocol type through
ArtNet.Packet.EnumTable.PortType; the high bits indicate whether the port
supports input and/or output.
Bit size
This bit field is encoded in 8 bits.
Bit layout
| Field | Description | Bits | Default | Value |
|---|---|---|---|---|
port_type | Protocol used by the port. | 0..5 | required | ArtNet.Packet.EnumTable.PortType enum (6 bits) |
input | Port can receive data. | 6 | required | boolean flag |
output | Port can transmit data. | 7 | required | boolean flag |
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
@type t() :: %ArtNet.Packet.BitField.PortType{ input: :boolean, output: :boolean, port_type: ArtNet.Packet.EnumTable.PortType.type() }
Functions
@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.
@spec bit_size() :: pos_integer()
Returns the total number of bits encoded by this bit field.
This bit field is encoded in 8 bits.
@spec decode(non_neg_integer()) :: {:ok, t()} | :error
Decodes an unsigned integer into this bit-field struct.
@spec encode(t()) :: {:ok, non_neg_integer()} | :error
Encodes this bit-field struct into an unsigned integer.