Class: Agent
- Inherits:
-
Object
- Object
- Agent
- Includes:
- Celluloid, Celluloid::Internals::Logger
- Defined in:
- lib/agens/agent.rb
Defined Under Namespace
Classes: NotImplementedError
Instance Method Summary collapse
-
#initialize ⇒ Agent
constructor
A new instance of Agent.
- #to_s ⇒ Object
Constructor Details
#initialize ⇒ Agent
Returns a new instance of Agent.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/agens/agent.rb', line 9 def initialize @sensor_classes = {} @actuator_classes = {} @sensors = {} @actuators = {} setup @sensor_classes.each do |name, sensor_clazz| sensor = sensor_clazz.new_link @sensors[name] = sensor end @actuator_classes.each do |name, actuator_clazz| actuator = actuator_clazz.new_link @actuators[name] = actuator end self.async.think_loop end |
Instance Method Details
#to_s ⇒ Object
30 31 32 33 34 35 36 37 38 |
# File 'lib/agens/agent.rb', line 30 def to_s s = "Agent #{self.class.name}:\n" s << " Sensors:\n" @sensor_classes.each {|n, _| s << " <- #{n}\n"} s << " Actuators:\n" @actuator_classes.each {|n, _| s << " -> #{n}\n"} s end |