class BubbleWrap::Motion::Magnetometer

Public Instance Methods

active?() click to toggle source
# File motion/motion/magnetometer.rb, line 40
def active?
  @manager.magnetometerActive?
end
available?() click to toggle source
# File motion/motion/magnetometer.rb, line 36
def available?
  @manager.magnetometerAvailable?
end
data() click to toggle source
# File motion/motion/magnetometer.rb, line 44
def data
  @manager.magnetometerData
end
start(options={}, &handler) click to toggle source
# File motion/motion/magnetometer.rb, line 5
def start(options={}, &handler)
  if options.key?(:interval)
    @manager.magnetometerUpdateInterval = options[:interval]
  end

  if handler
    queue = convert_queue(options[:queue])
    @manager.startMagnetometerUpdatesToQueue(queue, withHandler: internal_handler(handler))
  else
    @manager.startMagnetometerUpdates
  end

  return self
end
stop() click to toggle source
# File motion/motion/magnetometer.rb, line 48
def stop
  @manager.stopMagnetometerUpdates
end

Private Instance Methods

handle_result(result_data, error, handler) click to toggle source
# File motion/motion/magnetometer.rb, line 20
        def handle_result(result_data, error, handler)
  if result_data
    result = {
      data: result_data,
      field: result_data.magneticField,
      x: result_data.magneticField.x,
      y: result_data.magneticField.y,
      z: result_data.magneticField.z,
    }
  else
    result = nil
  end

  handler.call(result, error)
end