Class: Artoo::Adaptors::Leapmotion

Inherits:
Adaptor
  • Object
show all
Defined in:
lib/artoo/adaptors/leapmotion.rb

Overview

Connect to a leapmotion device

See Also:

  • documentation for more information

Instance Attribute Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *arguments, &block) ⇒ Object

Uses method missing to call device actions

See Also:

  • documentation


36
37
38
# File 'lib/artoo/adaptors/leapmotion.rb', line 36

def method_missing(method_name, *arguments, &block)
  leap.send(method_name, *arguments, &block)
end

Instance Attribute Details

#leapObject (readonly)

Returns the value of attribute leap.



10
11
12
# File 'lib/artoo/adaptors/leapmotion.rb', line 10

def leap
  @leap
end

Instance Method Details

#connectBoolean

Creates a connection with device

Returns:

  • (Boolean)


20
21
22
23
24
# File 'lib/artoo/adaptors/leapmotion.rb', line 20

def connect
  @leap = Celluloid::WebSocket::Client.new("ws://#{port.host}:#{port.port}/v3.json")

  super
end

#disconnectBoolean

Closes connection with device

Returns:

  • (Boolean)


28
29
30
31
32
# File 'lib/artoo/adaptors/leapmotion.rb', line 28

def disconnect
  leap.close

  super
end

#finalizeBoolean

Closes connection with device if connected

Returns:

  • (Boolean)


14
15
16
# File 'lib/artoo/adaptors/leapmotion.rb', line 14

def finalize
  disconnect if connected?
end