WIP on event emitter for device and connection.
This commit is contained in:
parent
f169e5c10b
commit
cc24e89249
|
@ -1,6 +1,6 @@
|
|||
Cylon = require('..')
|
||||
|
||||
Cylon.robot
|
||||
cylon = Cylon.robot
|
||||
connection:
|
||||
name: 'sphero', adaptor: 'sphero', port: '/dev/rfcomm0'
|
||||
|
||||
|
@ -10,4 +10,9 @@ Cylon.robot
|
|||
work: (me) ->
|
||||
every 1.second(), -> me.sphero.roll(60, Math.floor(Math.random() * 360), 1)
|
||||
|
||||
.start()
|
||||
console.log(cylon.devices['sphero'])
|
||||
|
||||
cylon.devices['sphero'].on('driver_load', ->
|
||||
console.log("DRIVER LOAD EVENT TRIGGERED!")
|
||||
)
|
||||
cylon.start()
|
||||
|
|
|
@ -10,8 +10,9 @@
|
|||
|
||||
require("./robot")
|
||||
Port = require("./port")
|
||||
EventEmitter = require('events').EventEmitter
|
||||
|
||||
module.exports = class Connection
|
||||
module.exports = class Connection extends EventEmitter
|
||||
|
||||
constructor: (opts = {}) ->
|
||||
@self = this
|
||||
|
@ -23,6 +24,7 @@ module.exports = class Connection
|
|||
|
||||
connect: ->
|
||||
Logger.info "Connecting to '#{@name}' on port '#{@port.toString()}'..."
|
||||
@self.emit('connected')
|
||||
@adaptor.connect(@self)
|
||||
|
||||
disconnect: ->
|
||||
|
|
|
@ -9,8 +9,9 @@
|
|||
'use strict';
|
||||
|
||||
require('./cylon')
|
||||
EventEmitter = require('events').EventEmitter
|
||||
|
||||
module.exports = class Device
|
||||
module.exports = class Device extends EventEmitter
|
||||
constructor: (opts = {}) ->
|
||||
@self = this
|
||||
@robot = opts.robot
|
||||
|
@ -33,6 +34,7 @@ module.exports = class Device
|
|||
|
||||
requireDriver: (driverName) ->
|
||||
Logger.info "dynamic load driver"
|
||||
@self.emit('driver_load')
|
||||
@robot.requireDriver(driverName, @self)
|
||||
|
||||
addCommands: (object) ->
|
||||
|
|
Loading…
Reference in New Issue