Module: don't sign all modules up for ON_CONFIG_RELOAD- they don't all use the event.
authorMichael Moon <triffid.hunter@gmail.com>
Wed, 6 Feb 2013 00:30:12 +0000 (11:30 +1100)
committerMichael Moon <triffid.hunter@gmail.com>
Wed, 6 Feb 2013 00:30:12 +0000 (11:30 +1100)
src/libs/Kernel.cpp
src/modules/robot/Planner.cpp
src/modules/robot/Robot.cpp
src/modules/robot/Stepper.cpp
src/modules/tools/endstops/Endstops.cpp
src/modules/tools/extruder/Extruder.cpp
src/modules/tools/switch/Switch.cpp
src/modules/tools/temperaturecontrol/TemperatureControl.cpp

index a9c4137..9250351 100644 (file)
@@ -108,7 +108,6 @@ Kernel::Kernel(){
 void Kernel::add_module(Module* module){
     module->kernel = this;
     module->on_module_loaded();
-    module->register_for_event(ON_CONFIG_RELOAD);
 }
 
 void Kernel::register_for_event(_EVENT_ENUM id_event, Module* module){
index 6e1a50b..8aa6668 100644 (file)
@@ -25,6 +25,7 @@ Planner::Planner(){
 }
 
 void Planner::on_module_loaded(){
+    register_for_event(ON_CONFIG_RELOAD);
     this->on_config_reload(this);
 }
 
index 26ce232..48bf866 100644 (file)
@@ -33,6 +33,7 @@ Robot::Robot(){
 
 //Called when the module has just been loaded
 void Robot::on_module_loaded() {
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_GCODE_RECEIVED);
 
     // Configuration
index a1d82d1..aaa3f92 100644 (file)
@@ -34,6 +34,7 @@ Stepper::Stepper(){
 //Called when the module has just been loaded
 void Stepper::on_module_loaded(){
     stepper = this;
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_BLOCK_BEGIN);
     this->register_for_event(ON_BLOCK_END);
     this->register_for_event(ON_GCODE_EXECUTE);
index 3b2cf55..993a5e5 100644 (file)
@@ -20,6 +20,7 @@ Endstops::Endstops(){
 }
 
 void Endstops::on_module_loaded() {
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_GCODE_RECEIVED);
 
     // Take StepperMotor objects from Robot and keep them here
index 38f6582..aef91ad 100644 (file)
@@ -35,6 +35,7 @@ void Extruder::on_module_loaded() {
     this->en_pin->set(1);
 
     // We work on the same Block as Stepper, so we need to know when it gets a new one and drops one
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_BLOCK_BEGIN);
     this->register_for_event(ON_BLOCK_END);
     this->register_for_event(ON_GCODE_RECEIVED);
index f0bf46a..b54dc1b 100644 (file)
@@ -20,6 +20,7 @@ Switch::Switch(uint16_t name){
 }
 
 void Switch::on_module_loaded(){
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_GCODE_EXECUTE);
 
     // Settings
index 6307b28..469ee45 100644 (file)
@@ -36,6 +36,7 @@ void TemperatureControl::on_module_loaded(){
     this->acceleration_factor = 10;
 
     // Register for events
+    register_for_event(ON_CONFIG_RELOAD);
     this->register_for_event(ON_GCODE_EXECUTE);
     this->register_for_event(ON_GCODE_RECEIVED);
     this->register_for_event(ON_MAIN_LOOP);