Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module HardwareBase
- def self.register_device_type mod, sym
- @@device_registrations ||= {}
- @@device_registrations[sym] = mod
- end
- end
- module Servo
- include HardwareBase
- HardwareBase.register_device_type self, :servo
- def output_pin_setup(num,opts)
- #...do stuff...
- end
- end
- module I2C
- include HardwareBase
- HardwareBase.register_device_type self, :i2c
- def output_pin_setup(num,opts)
- #...do stuff...
- end
- end
- class ArduinoSketch
- include Servo
- include I2C
- def initialize
- puts @@device_registrations.inspect
- end
- end
- ArduinoSketch.new#.device_registrations.inspect
Add Comment
Please, Sign In to add comment