Class: Phidgets::Accelerometer
- Inherits:
-
Object
- Object
- Phidgets::Accelerometer
- Includes:
- Common
- Defined in:
- lib/phidgets-ffi/accelerometer.rb
Overview
This class represents a PhidgetAccelerometer.
Defined Under Namespace
Classes: AccelerometerAxes
Constant Summary collapse
- Klass =
Phidgets::FFI::CPhidgetAccelerometer
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
The attributes of a PhidgetAccelerometer.
-
#axes ⇒ AccelerometerAxes
readonly
Collection of accelerometer axes.
Instance Method Summary collapse
-
#on_acceleration_change(obj = nil, &block) ⇒ Boolean
Sets an acceleration change handler callback function.
Methods included from Common
#attached?, #attached_to_server?, attributes, #close, #detached?, #detached_to_server?, device_class, #device_class, device_id, #id, #initialize, #label, #label=, #name, #on_attach, #on_detach, #on_error, #on_server_connect, #on_server_disconnect, #on_sleep, #on_wake, #serial_number, #server_address, server_address, #server_id, server_id, server_status, #type, #version, #wait_for_attachment
Instance Attribute Details
#attributes ⇒ Object (readonly)
The attributes of a PhidgetAccelerometer
16 17 18 |
# File 'lib/phidgets-ffi/accelerometer.rb', line 16 def attributes @attributes end |
#axes ⇒ AccelerometerAxes (readonly)
Collection of accelerometer axes
11 12 13 |
# File 'lib/phidgets-ffi/accelerometer.rb', line 11 def axes @axes end |
Instance Method Details
#on_acceleration_change(obj = nil, &block) ⇒ Boolean
Sets an acceleration change handler callback function. This is called when the acceleration of an axis changes by more than the set sensitivity.
As this runs in it’s own thread, be sure that all errors are properly handled or the thread will halt and not fire any more.
32 33 34 35 36 37 38 |
# File 'lib/phidgets-ffi/accelerometer.rb', line 32 def on_acceleration_change(obj=nil, &block) @on_acceleration_change_obj = obj @on_acceleration_change = Proc.new { |device, obj_ptr, ind, acc| yield self, axes[ind], acc, object_for(obj_ptr) } Klass.set_OnAccelerationChange_Handler(@handle, @on_acceleration_change, pointer_for(obj)) end |