phidgets 0.1.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/History.txt +3 -0
- data/README.rdoc +32 -43
- data/Rakefile +4 -2
- data/bin/phidget +18 -72
- data/ext/phidgets/extconf.rb +5 -8
- data/ext/phidgets/phidgets.c +708 -173
- data/ext/phidgets/phidgets.h +54 -35
- data/ext/phidgets/phidgets_accelerometer.c +193 -109
- data/ext/phidgets/phidgets_bldc_motor.c +529 -0
- data/ext/phidgets/phidgets_capacitive_touch.c +302 -0
- data/ext/phidgets/phidgets_common.c +570 -315
- data/ext/phidgets/phidgets_current_input.c +229 -0
- data/ext/phidgets/phidgets_dc_motor.c +562 -0
- data/ext/phidgets/phidgets_dictionary.c +154 -213
- data/ext/phidgets/phidgets_digital_input.c +127 -0
- data/ext/phidgets/phidgets_digital_output.c +288 -0
- data/ext/phidgets/phidgets_distance_sensor.c +295 -0
- data/ext/phidgets/phidgets_encoder.c +211 -192
- data/ext/phidgets/phidgets_frequency_counter.c +310 -177
- data/ext/phidgets/phidgets_gps.c +226 -164
- data/ext/phidgets/phidgets_gyroscope.c +195 -0
- data/ext/phidgets/phidgets_hub.c +39 -0
- data/ext/phidgets/phidgets_humidity_sensor.c +200 -0
- data/ext/phidgets/phidgets_ir.c +211 -171
- data/ext/phidgets/phidgets_lcd.c +512 -0
- data/ext/phidgets/phidgets_light_sensor.c +200 -0
- data/ext/phidgets/phidgets_log.c +263 -0
- data/ext/phidgets/phidgets_magnetometer.c +279 -0
- data/ext/phidgets/phidgets_manager.c +86 -297
- data/ext/phidgets/phidgets_motor_position_controller.c +787 -0
- data/ext/phidgets/phidgets_phsensor.c +200 -152
- data/ext/phidgets/phidgets_power_guard.c +144 -0
- data/ext/phidgets/phidgets_pressure_sensor.c +200 -0
- data/ext/phidgets/phidgets_rc_servo.c +672 -0
- data/ext/phidgets/phidgets_resistance_input.c +227 -0
- data/ext/phidgets/phidgets_rfid.c +107 -221
- data/ext/phidgets/phidgets_sound_sensor.c +284 -0
- data/ext/phidgets/phidgets_spatial.c +124 -318
- data/ext/phidgets/phidgets_stepper.c +457 -430
- data/ext/phidgets/phidgets_temp_sensor.c +223 -228
- data/ext/phidgets/phidgets_voltage_input.c +428 -0
- data/ext/phidgets/phidgets_voltage_output.c +167 -0
- data/ext/phidgets/phidgets_voltage_ratio_input.c +435 -0
- data/lib/phidgets.rb +21 -14
- data/lib/phidgets/accelerometer.rb +11 -15
- data/lib/phidgets/bldc_motor.rb +45 -0
- data/lib/phidgets/capacitive_touch.rb +33 -0
- data/lib/phidgets/common.rb +40 -69
- data/lib/phidgets/current_input.rb +21 -0
- data/lib/phidgets/dc_motor.rb +45 -0
- data/lib/phidgets/dictionary.rb +30 -39
- data/lib/phidgets/digital_input.rb +21 -0
- data/lib/phidgets/digital_output.rb +56 -0
- data/lib/phidgets/distance_sensor.rb +33 -0
- data/lib/phidgets/encoder.rb +1 -29
- data/lib/phidgets/frequency_counter.rb +23 -14
- data/lib/phidgets/gps.rb +34 -26
- data/lib/phidgets/gyroscope.rb +21 -0
- data/lib/phidgets/humidity_sensor.rb +21 -0
- data/lib/phidgets/ir.rb +34 -39
- data/lib/phidgets/light_sensor.rb +21 -0
- data/lib/phidgets/magnetometer.rb +21 -0
- data/lib/phidgets/manager.rb +18 -66
- data/lib/phidgets/motor_position_controller.rb +45 -0
- data/lib/phidgets/ph_sensor.rb +2 -6
- data/lib/phidgets/pressure_sensor.rb +21 -0
- data/lib/phidgets/rc_servo.rb +58 -0
- data/lib/phidgets/resistance_input.rb +21 -0
- data/lib/phidgets/rfid.rb +22 -38
- data/lib/phidgets/sound_sensor.rb +21 -0
- data/lib/phidgets/spatial.rb +11 -15
- data/lib/phidgets/stepper.rb +48 -50
- data/lib/phidgets/temperature_sensor.rb +11 -15
- data/lib/phidgets/version.rb +5 -0
- data/lib/phidgets/voltage_input.rb +34 -0
- data/lib/phidgets/voltage_output.rb +23 -0
- data/lib/phidgets/voltage_ratio_input.rb +34 -0
- data/phidgets.gemspec +3 -22
- data/test/test_accelerometer.rb +42 -23
- data/test/test_bldc_motor.rb +134 -0
- data/test/test_capacitive_touch.rb +82 -0
- data/test/test_common.rb +125 -108
- data/test/test_current_input.rb +62 -0
- data/test/test_dc_motor.rb +146 -0
- data/test/test_dictionary.rb +22 -54
- data/test/test_digital_input.rb +30 -0
- data/test/test_digital_output.rb +70 -0
- data/test/test_distance_sensor.rb +76 -0
- data/test/test_encoder.rb +45 -38
- data/test/test_frequency_counter.rb +71 -36
- data/test/test_gps.rb +29 -38
- data/test/test_gyroscope.rb +54 -0
- data/test/test_helper.rb +0 -1
- data/test/test_hub.rb +14 -0
- data/test/test_humidity_sensor.rb +58 -0
- data/test/test_ir.rb +34 -34
- data/test/test_lcd.rb +146 -0
- data/test/test_light_sensor.rb +58 -0
- data/test/test_magnetometer.rb +78 -0
- data/test/test_manager.rb +10 -79
- data/test/test_motor_control.rb +146 -108
- data/test/test_phidgets.rb +2 -14
- data/test/test_phsensor.rb +46 -34
- data/test/test_power_guard.rb +42 -0
- data/test/test_pressure_sensor.rb +58 -0
- data/test/test_rc_servo.rb +174 -0
- data/test/test_resistance_input.rb +66 -0
- data/test/test_rfid.rb +15 -54
- data/test/test_sound_sensor.rb +78 -0
- data/test/test_spatial.rb +19 -85
- data/test/test_stepper.rb +89 -98
- data/test/test_temp_sensor.rb +42 -47
- data/test/test_voltage_input.rb +102 -0
- data/test/test_voltage_output.rb +46 -0
- data/test/test_voltage_ratio_input.rb +102 -0
- metadata +72 -89
- data/ext/phidgets/phidgets_advanced_servo.c +0 -567
- data/ext/phidgets/phidgets_analog.c +0 -139
- data/ext/phidgets/phidgets_bridge.c +0 -263
- data/ext/phidgets/phidgets_interface_kit.c +0 -340
- data/ext/phidgets/phidgets_led.c +0 -178
- data/ext/phidgets/phidgets_motor_control.c +0 -642
- data/ext/phidgets/phidgets_servo.c +0 -276
- data/ext/phidgets/phidgets_text_lcd.c +0 -381
- data/ext/phidgets/phidgets_text_led.c +0 -107
- data/ext/phidgets/phidgets_weight_sensor.c +0 -113
- data/lib/phidgets/advanced_servo.rb +0 -49
- data/lib/phidgets/analog.rb +0 -8
- data/lib/phidgets/bridge.rb +0 -25
- data/lib/phidgets/interfacekit.rb +0 -49
- data/lib/phidgets/led.rb +0 -8
- data/lib/phidgets/motor_control.rb +0 -110
- data/lib/phidgets/servo.rb +0 -23
- data/lib/phidgets/text_lcd.rb +0 -8
- data/lib/phidgets/text_led.rb +0 -8
- data/lib/phidgets/weight_sensor.rb +0 -25
- data/test/test_advanced_servo.rb +0 -152
- data/test/test_analog.rb +0 -45
- data/test/test_bridge.rb +0 -77
- data/test/test_interfacekit.rb +0 -97
- data/test/test_led.rb +0 -55
- data/test/test_servo.rb +0 -67
- data/test/test_text_lcd.rb +0 -115
- data/test/test_text_led.rb +0 -35
- data/test/test_weight_sensor.rb +0 -32
@@ -0,0 +1,33 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Phidgets
|
4
|
+
class DistanceSensor < Common
|
5
|
+
|
6
|
+
# call-seq:
|
7
|
+
# setOnDistanceChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the DistanceChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnDistanceChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_distance_change_thread.kill if defined? @on_distance_change_thread and @on_distance_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_distance_change_thread = Thread.new {ext_setOnDistanceChangeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
# call-seq:
|
18
|
+
# setOnSonarReflectionsUpdateHandler(proc=nil, &block)
|
19
|
+
#
|
20
|
+
# Assigns a handler that will be called when the SonarReflectionsUpdate event occurs.
|
21
|
+
#
|
22
|
+
def setOnSonarReflectionsUpdateHandler(cb_proc = nil, &cb_block)
|
23
|
+
@on_reflections_update_thread.kill if defined? @on_reflections_update_thread and @on_reflections_update_thread.alive?
|
24
|
+
callback = cb_proc || cb_block
|
25
|
+
@on_reflections_update_thread = Thread.new {ext_setOnSonarReflectionsUpdateHandler(callback)}
|
26
|
+
end
|
27
|
+
|
28
|
+
alias :on_distance_change :setOnDistanceChangeHandler
|
29
|
+
alias :on_sonar_reflections_update :setOnSonarReflectionsUpdateHandler
|
30
|
+
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
data/lib/phidgets/encoder.rb
CHANGED
@@ -3,46 +3,18 @@
|
|
3
3
|
module Phidgets
|
4
4
|
class Encoder < Common
|
5
5
|
|
6
|
-
unless RUBY_VERSION < '1.9.0'
|
7
|
-
|
8
|
-
# call-seq:
|
9
|
-
# setOnInputChangeHandler(proc=nil, &block)
|
10
|
-
#
|
11
|
-
# Sets an input change handler. This is called when a digital input changes.
|
12
|
-
#
|
13
|
-
def setOnInputChangeHandler(cb_proc = nil, &cb_block)
|
14
|
-
@on_input_change_thread.kill if defined? @on_input_change_thread
|
15
|
-
callback = cb_proc || cb_block
|
16
|
-
@on_input_change_thread = Thread.new {ext_setOnInputChangeHandler(callback)}
|
17
|
-
end
|
18
|
-
|
19
6
|
# call-seq:
|
20
7
|
# setOnPositionChangeHandler(proc=nil, &block)
|
21
8
|
#
|
22
9
|
# Sets an encoder position change handler. This is called when an encoder position changes.
|
23
10
|
#
|
24
11
|
def setOnPositionChangeHandler(cb_proc = nil, &cb_block)
|
25
|
-
@on_position_change_thread.kill if defined? @on_position_change_thread
|
12
|
+
@on_position_change_thread.kill if defined? @on_position_change_thread and @on_position_change_thread.alive?
|
26
13
|
callback = cb_proc || cb_block
|
27
14
|
@on_position_change_thread = Thread.new {ext_setOnPositionChangeHandler(callback)}
|
28
15
|
end
|
29
16
|
|
30
|
-
# call-seq:
|
31
|
-
# setOnIndexHandler(proc=nil, &block)
|
32
|
-
#
|
33
|
-
# Sets an encoder index handler. This is called when there is a pulse on the index pin.
|
34
|
-
#
|
35
|
-
def setOnIndexHandler(cb_proc = nil, &cb_block)
|
36
|
-
@on_index_thread.kill if defined? @on_index_thread
|
37
|
-
callback = cb_proc || cb_block
|
38
|
-
@on_index_thread = Thread.new {ext_setOnIndexHandler(callback)}
|
39
|
-
end
|
40
|
-
|
41
|
-
alias :on_input_change :setOnInputChangeHandler
|
42
17
|
alias :on_position_change :setOnPositionChangeHandler
|
43
|
-
alias :on_index :setOnIndexHandler
|
44
|
-
|
45
|
-
end
|
46
18
|
|
47
19
|
end
|
48
20
|
end
|
@@ -3,23 +3,32 @@
|
|
3
3
|
module Phidgets
|
4
4
|
class FrequencyCounter < Common
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
@on_count_thread = Thread.new {ext_setOnCountHandler(callback)}
|
17
|
-
end
|
18
|
-
|
19
|
-
alias :on_count :setOnCountHandler
|
6
|
+
# call-seq:
|
7
|
+
# setOnCountChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the CountChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnCountChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_count_change_thread.kill if defined? @on_count_change_thread and @on_count_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_count_change_thread = Thread.new {ext_setOnCountChangeHandler(callback)}
|
15
|
+
end
|
20
16
|
|
17
|
+
alias :on_count_change :setOnCountChangeHandler
|
18
|
+
|
19
|
+
# call-seq:
|
20
|
+
# setOnFrequencyChangeHandler(proc=nil, &block)
|
21
|
+
#
|
22
|
+
# Assigns a handler that will be called when the CountChange event occurs.
|
23
|
+
#
|
24
|
+
def setOnFrequencyChangeHandler(cb_proc = nil, &cb_block)
|
25
|
+
@on_frequency_change_thread.kill if defined? @on_frequency_change_thread and @on_frequency_change_thread.alive?
|
26
|
+
callback = cb_proc || cb_block
|
27
|
+
@on_frequency_change_thread = Thread.new {ext_setOnFrequencyChangeHandler(callback)}
|
21
28
|
end
|
22
29
|
|
30
|
+
alias :on_frequency_change :setOnFrequencyChangeHandler
|
31
|
+
|
23
32
|
end
|
24
33
|
end
|
25
34
|
|
data/lib/phidgets/gps.rb
CHANGED
@@ -3,35 +3,43 @@
|
|
3
3
|
module Phidgets
|
4
4
|
class GPS < Common
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
@on_position_fix_status_change_thread = Thread.new {ext_setOnPositionFixStatusChangeHandler(callback)}
|
28
|
-
end
|
29
|
-
|
30
|
-
alias :on_position_change :setOnPositionChangeHandler
|
31
|
-
alias :on_position_fix_status_change :setOnPositionFixStatusChangeHandler
|
6
|
+
# call-seq:
|
7
|
+
# setOnHeadingChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the HeadingChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnHeadingChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_heading_change_thread.kill if defined? @on_heading_change_thread and @on_heading_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_heading_change_thread = Thread.new {ext_setOnHeadingChangeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
# call-seq:
|
18
|
+
# setOnPositionChangeHandler(proc=nil, &block)
|
19
|
+
#
|
20
|
+
# Assigns a handler that will be called when the PositionChange event occurs.
|
21
|
+
#
|
22
|
+
def setOnPositionChangeHandler(cb_proc = nil, &cb_block)
|
23
|
+
@on_position_change_thread.kill if defined? @on_position_change_thread and @on_position_change_thread.alive?
|
24
|
+
callback = cb_proc || cb_block
|
25
|
+
@on_position_change_thread = Thread.new {ext_setOnPositionChangeHandler(callback)}
|
26
|
+
end
|
32
27
|
|
28
|
+
# call-seq:
|
29
|
+
# setOnPositionFixStateChangeHandler(proc=nil, &block)
|
30
|
+
#
|
31
|
+
# Assigns a handler that will be called when the PositionFixStateChange event occurs.
|
32
|
+
#
|
33
|
+
def setOnPositionFixStateChangeHandler(cb_proc = nil, &cb_block)
|
34
|
+
@on_position_fix_state_change_thread.kill if defined? @on_position_fix_state_change_thread and @on_position_fix_state_change_thread.alive?
|
35
|
+
callback = cb_proc || cb_block
|
36
|
+
@on_position_fix_state_change_thread = Thread.new {ext_setOnPositionFixStateChangeHandler(callback)}
|
33
37
|
end
|
34
38
|
|
39
|
+
alias :on_heading_change :setOnHeadingChangeHandler
|
40
|
+
alias :on_position_change :setOnPositionChangeHandler
|
41
|
+
alias :on_position_fix_state_change :setOnPositionFixStateChangeHandler
|
42
|
+
|
35
43
|
end
|
36
44
|
end
|
37
45
|
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Phidgets
|
4
|
+
class Gyroscope < Common
|
5
|
+
|
6
|
+
# call-seq:
|
7
|
+
# setOnAngularRateUpdateHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the AngularRateUpdate event occurs.
|
10
|
+
#
|
11
|
+
def setOnAngularRateUpdateHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_angular_rate_update_thread.kill if defined? @on_angular_rate_update_thread and @on_angular_rate_update_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_angular_rate_update_thread = Thread.new {ext_setOnAngularRateUpdateHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
alias :on_angular_rate_update :setOnAngularRateUpdateHandler
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Phidgets
|
4
|
+
class HumiditySensor < Common
|
5
|
+
|
6
|
+
# call-seq:
|
7
|
+
# setOnHumidityChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the HumidityChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnHumidityChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_humidity_change_thread.kill if defined? @on_humidity_change_thread and @on_humidity_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_humidity_change_thread = Thread.new {ext_setOnHumidityChangeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
alias :on_humidity_change :setOnHumidityChangeHandler
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
data/lib/phidgets/ir.rb
CHANGED
@@ -3,48 +3,43 @@
|
|
3
3
|
module Phidgets
|
4
4
|
class IR < Common
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
callback = cb_proc || cb_block
|
28
|
-
@on_learn_thread = Thread.new {ext_setOnLearnHandler(callback)}
|
29
|
-
end
|
30
|
-
|
31
|
-
# call-seq:
|
32
|
-
# setOnRawDataHandler(proc=nil, &block)
|
33
|
-
#
|
34
|
-
# Set a Raw Data handler. This is called when raw data has been read from the device.
|
35
|
-
#
|
36
|
-
def setOnRawDataHandler(cb_proc = nil, &cb_block)
|
37
|
-
@on_raw_data_thread.kill if defined? @on_raw_data_thread
|
38
|
-
callback = cb_proc || cb_block
|
39
|
-
@on_raw_data_thread = Thread.new {ext_setOnRawDataHandler(callback)}
|
40
|
-
end
|
41
|
-
|
42
|
-
alias :on_code :setOnCodeHandler
|
43
|
-
alias :on_learn :setOnLearnHandler
|
44
|
-
alias :on_raw_data :setOnRawDataHandler
|
6
|
+
# call-seq:
|
7
|
+
# setOnCodeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the Code event occurs.
|
10
|
+
#
|
11
|
+
def setOnCodeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_code_thread.kill if defined? @on_code_thread and @on_code_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_code_thread = Thread.new {ext_setOnCodeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
# call-seq:
|
18
|
+
# setOnLearnHandler(proc=nil, &block)
|
19
|
+
#
|
20
|
+
# Assigns a handler that will be called when the Learn event occurs.
|
21
|
+
#
|
22
|
+
def setOnLearnHandler(cb_proc = nil, &cb_block)
|
23
|
+
@on_learn_thread.kill if defined? @on_learn_thread and @on_learn_thread.alive?
|
24
|
+
callback = cb_proc || cb_block
|
25
|
+
@on_learn_thread = Thread.new {ext_setOnLearnHandler(callback)}
|
26
|
+
end
|
45
27
|
|
28
|
+
# call-seq:
|
29
|
+
# setOnRawDataHandler(proc=nil, &block)
|
30
|
+
#
|
31
|
+
# Assigns a handler that will be called when the RawData event occurs.
|
32
|
+
#
|
33
|
+
def setOnRawDataHandler(cb_proc = nil, &cb_block)
|
34
|
+
@on_raw_data_thread.kill if defined? @on_raw_data_thread and @on_raw_data_thread.alive?
|
35
|
+
callback = cb_proc || cb_block
|
36
|
+
@on_raw_data_thread = Thread.new {ext_setOnRawDataHandler(callback)}
|
46
37
|
end
|
47
38
|
|
39
|
+
alias :on_code :setOnCodeHandler
|
40
|
+
alias :on_learn :setOnLearnHandler
|
41
|
+
alias :on_raw_data :setOnRawDataHandler
|
42
|
+
|
48
43
|
end
|
49
44
|
end
|
50
45
|
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Phidgets
|
4
|
+
class LightSensor < Common
|
5
|
+
|
6
|
+
# call-seq:
|
7
|
+
# setOnIlluminanceChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the IlluminanceChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnIlluminanceChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_illuminance_change_thread.kill if defined? @on_illuminance_change_thread and @on_illuminance_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_illuminance_change_thread = Thread.new {ext_setOnIlluminanceChangeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
alias :on_illuminance_change :setOnIlluminanceChangeHandler
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Phidgets
|
4
|
+
class Magnetometer < Common
|
5
|
+
|
6
|
+
# call-seq:
|
7
|
+
# setOnMagneticFieldChangeHandler(proc=nil, &block)
|
8
|
+
#
|
9
|
+
# Assigns a handler that will be called when the MagneticFieldChange event occurs.
|
10
|
+
#
|
11
|
+
def setOnMagneticFieldChangeHandler(cb_proc = nil, &cb_block)
|
12
|
+
@on_magnetic_field_change_thread.kill if defined? @on_magnetic_field_change_thread and @on_magnetic_field_change_thread.alive?
|
13
|
+
callback = cb_proc || cb_block
|
14
|
+
@on_magnetic_field_change_thread = Thread.new {ext_setOnMagneticFieldChangeHandler(callback)}
|
15
|
+
end
|
16
|
+
|
17
|
+
alias :on_magnetic_field_change :setOnMagneticFieldChangeHandler
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
data/lib/phidgets/manager.rb
CHANGED
@@ -3,78 +3,30 @@ module Phidgets
|
|
3
3
|
class Manager
|
4
4
|
|
5
5
|
# call-seq:
|
6
|
-
#
|
6
|
+
# setOnAttachHandler(proc=nil, &block)
|
7
7
|
#
|
8
|
-
#
|
9
|
-
# on the arguments passed in. Args is a hash and the following keys may be used:
|
10
|
-
# :server_id, :address, :port, :password.
|
8
|
+
# Assigns a handler that will be called when the Attach event occurs.
|
11
9
|
#
|
12
|
-
def
|
13
|
-
if
|
14
|
-
|
15
|
-
|
16
|
-
open_remote_ip(args[:address], args[:port], args[:password])
|
17
|
-
else
|
18
|
-
ext_open
|
19
|
-
end
|
10
|
+
def setOnAttachHandler(cb_proc = nil, &cb_block)
|
11
|
+
@on_attach_thread.kill if defined? @on_attach_thread and @on_attach_thread.alive?
|
12
|
+
callback = cb_proc || cb_block
|
13
|
+
@on_attach_thread = Thread.new {ext_setOnAttachHandler(callback)}
|
20
14
|
end
|
21
15
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
@on_attach_thread.kill if defined? @on_attach_thread
|
32
|
-
callback = cb_proc || cb_block
|
33
|
-
@on_attach_thread = Thread.new {ext_setOnAttachHandler(callback)}
|
34
|
-
end
|
35
|
-
|
36
|
-
# call-seq:
|
37
|
-
# setOnDetachHandler(proc=nil, &block)
|
38
|
-
#
|
39
|
-
# Sets a detach handler callback function. This is called when a Phidget is unplugged from the system.
|
40
|
-
#
|
41
|
-
def setOnDetachHandler(cb_proc = nil, &cb_block)
|
42
|
-
@on_detach_thread.kill if defined? @on_detach_thread
|
43
|
-
callback = cb_proc || cb_block
|
44
|
-
@on_detach_thread = Thread.new {ext_setOnDetachHandler(callback)}
|
45
|
-
end
|
46
|
-
|
47
|
-
# call-seq:
|
48
|
-
# setOnServerConnectHandler(proc=nil, &block)
|
49
|
-
#
|
50
|
-
# Sets a server connect handler callback function. This is used for opening Phidget Managers remotely,
|
51
|
-
# and is called when a connection to the sever has been made.
|
52
|
-
#
|
53
|
-
def setOnServerConnectHandler(cb_proc = nil, &cb_block)
|
54
|
-
@on_server_connect_thread.kill if defined? @on_server_connect_thread
|
55
|
-
callback = cb_proc || cb_block
|
56
|
-
@on_server_connect_thread = Thread.new {ext_setOnServerConnectHandler(callback)}
|
57
|
-
end
|
58
|
-
|
59
|
-
# call-seq:
|
60
|
-
# setOnServerDisconnectHandler(proc=nil, &block)
|
61
|
-
#
|
62
|
-
# Sets a server disconnect handler callback function. This is used for opening Phidget Managers remotely,
|
63
|
-
# and is called when a connection to the server has been lost.
|
64
|
-
#
|
65
|
-
def setOnServerDisconnectHandler(cb_proc = nil, &cb_block)
|
66
|
-
@on_server_disconnect_thread.kill if defined? @on_server_disconnect_thread
|
67
|
-
callback = cb_proc || cb_block
|
68
|
-
@on_server_disconnect_thread = Thread.new {ext_setOnServerDisconnectHandler(callback)}
|
69
|
-
end
|
70
|
-
|
71
|
-
alias :on_attach :setOnAttachHandler
|
72
|
-
alias :on_detach :setOnDetachHandler
|
73
|
-
alias :on_server_connect :setOnServerConnectHandler
|
74
|
-
alias :on_server_disconnect :setOnServerDisconnectHandler
|
75
|
-
|
16
|
+
# call-seq:
|
17
|
+
# setOnDetachHandler(proc=nil, &block)
|
18
|
+
#
|
19
|
+
# Assigns a handler that will be called when the Detach event occurs.
|
20
|
+
#
|
21
|
+
def setOnDetachHandler(cb_proc = nil, &cb_block)
|
22
|
+
@on_detach_thread.kill if defined? @on_detach_thread and @on_detach_thread.alive?
|
23
|
+
callback = cb_proc || cb_block
|
24
|
+
@on_detach_thread = Thread.new {ext_setOnDetachHandler(callback)}
|
76
25
|
end
|
77
26
|
|
27
|
+
alias :on_attach :setOnAttachHandler
|
28
|
+
alias :on_detach :setOnDetachHandler
|
29
|
+
|
78
30
|
end
|
79
31
|
end
|
80
32
|
|