class SDN::Message::SetMotorLimits
Constants
- MSG
- PARAMS_LENGTH
- TARGET
- TYPE
Attributes
target[R]
type[R]
value[R]
Public Class Methods
new(dest = nil, type = :delete, target = :up, value = nil, **kwargs)
click to toggle source
Calls superclass method
SDN::Message::new
# File lib/sdn/message/set.rb, line 148 def initialize(dest = nil, type = :delete, target = :up, value = nil, **kwargs) kwargs[:dest] ||= dest super(**kwargs) self.type = type self.target = target self.value = value end
Public Instance Methods
params()
click to toggle source
# File lib/sdn/message/set.rb, line 177 def params param = value || 0 param /= 10 if target == :jog_ms transform_param(TYPE[type]) + transform_param(TARGET[target]) + from_number(param, 2) end
parse(params)
click to toggle source
Calls superclass method
SDN::Message::parse
# File lib/sdn/message/set.rb, line 156 def parse(params) super self.type = TYPE.invert[to_number(params[0])] self.target = TARGET.invert[to_number(params[1])] self.value = to_number(params[2..3]) end
target=(value)
click to toggle source
# File lib/sdn/message/set.rb, line 168 def target=(value) raise ArgumentError, "target must be one of :up, :down" unless TARGET.keys.include?(value) @target = value end
type=(value)
click to toggle source
# File lib/sdn/message/set.rb, line 163 def type=(value) raise ArgumentError, "type must be one of :delete, :current_position, :specified_position, :jog_ms, :jog_pulses" unless TYPE.keys.include?(value) @type = value end
value=(value)
click to toggle source
# File lib/sdn/message/set.rb, line 173 def value=(value) @value = value&. & 0xffff end