phidgets 0.1.3 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
|