class BWA::Messages::ControlConfiguration2

Constants

MESSAGE_LENGTH
MESSAGE_TYPE

Attributes

aux[RW]
blower[RW]
circ_pump[RW]
lights[RW]
mister[RW]
pumps[RW]

Public Class Methods

new() click to toggle source
# File lib/bwa/messages/control_configuration.rb, line 30
def initialize
  self.pumps = Array.new(6, 0)
  self.lights = Array.new(2, false)
  self.circ_pump = false
  self.blower = 0
  self.mister = false
  self.aux = Array.new(2, false)
end

Public Instance Methods

inspect() click to toggle source
# File lib/bwa/messages/control_configuration.rb, line 60
def inspect
  result = "#<BWA::Messages::ControlConfiguration2 "
  items = []

  items << "pumps=#{pumps.inspect}"
  items << "lights=#{lights.inspect}"
  items << "circ_pump" if circ_pump
  items << "blower=#{blower}" if blower != 0
  items << "mister" if mister
  items << "aux=#{aux.inspect}"

  result << items.join(' ') << ">"
end
parse(data) click to toggle source
# File lib/bwa/messages/control_configuration.rb, line 39
def parse(data)
  flags = data[0].ord
  pumps[0] = flags & 0x03
  pumps[1] = (flags >> 2) & 0x03
  pumps[2] = (flags >> 4) & 0x03
  pumps[3] = (flags >> 6) & 0x03
  flags = data[1].ord
  pumps[4] = flags & 0x03
  pumps[5] = (flags >> 6) & 0x03
  flags = data[2].ord
  lights[0] = (flags & 0x03 != 0)
  lights[1] = ((flags >> 6) & 0x03 != 0)
  flags = data[3].ord
  self.blower = flags & 0x03
  self.circ_pump = ((flags >> 6) & 0x03 != 0)
  flags = data[4].ord
  self.mister = (flags & 0x30 != 0)
  aux[0] = (flags & 0x01 != 0)
  aux[1] = (flags & 0x02 != 0)
end