lib/vedeu/repository/interface.rb in vedeu-0.0.11 vs lib/vedeu/repository/interface.rb in vedeu-0.0.12

- old
+ new

@@ -1,52 +1,34 @@ module Vedeu class Interface - attr_accessor :id, :active, :attributes, :result, :name, :geometry + attr_accessor :id, :attributes, :active, :geometry, :name, :result class << self def create(attributes = {}) new(attributes).create end end def initialize(attributes = {}) @attributes = attributes || {} - @name = attributes[:name] + @active = false - @geometry = Geometry.new(attributes[:geometry]) + @geometry = attributes[:geometry] + @name = attributes[:name] + @result = nil end def create InterfaceRepository.create(self) InterfaceRepository.activate(self.name) self end - def origin(index = 0) - Position.set(geometry.vy(index), geometry.vx) - end + def initial_state; end - def initial_state - # raise NotImplementedError, 'Subclasses implement this method.' - end - - def input - raise Collapse if evaluate == :stop - end - - def output - Compositor.arrange(@result, self) unless @result.nil? || @result.empty? - end - - private - - def evaluate - @result = Input.evaluate(read) - end - - def read - Terminal.input + def geometry + Geometry.new(@geometry) end end end