Skip to main content

channel_value_end

Function channel_value_end 

Source
pub fn channel_value_end(data: &[u8], offset: usize) -> Result<usize, Error>
Expand description

Return the offset just past the single BACnetChannelValue starting at offset.

The value is one well-formed application-tagged primitive of any character set, or one of the constructed alternatives:

  • [0] a BACnetLightingCommand. It must decode (see decode_lighting_command) with no field too wide for its type, and its priority, when present, must be 1 to 16; its levels, fade time and operation aren’t range-checked.
  • [1] a BACnetxyColor: two application-tagged REALs (see decode_xy_color), of any value.
  • [2] a BACnetColorCommand. It must decode (see decode_color_command) with no field too wide for its type; its operation and fields aren’t range-checked, as the colour object that takes it checks them.

Each must close right after its last field. Contents that run past the end of data fail with Error::BufferTooShort; any other malformed value with Error::Decoding, including a field of the wrong length that the data also cuts short, and a field too wide for its type.