| 117 | |
| 118 | |
| 119 | static void Engine_updateExpander_NoLock(Engine* that, Module* module, bool side) { |
| 120 | Module::Expander& expander = side ? module->rightExpander : module->leftExpander; |
| 121 | Module* oldExpanderModule = expander.module; |
| 122 | |
| 123 | if (expander.moduleId >= 0) { |
| 124 | if (!expander.module || expander.module->id != expander.moduleId) { |
| 125 | expander.module = that->getModule_NoLock(expander.moduleId); |
| 126 | } |
| 127 | } |
| 128 | else { |
| 129 | if (expander.module) { |
| 130 | expander.module = NULL; |
| 131 | } |
| 132 | } |
| 133 | |
| 134 | if (expander.module != oldExpanderModule) { |
| 135 | // Dispatch ExpanderChangeEvent |
| 136 | Module::ExpanderChangeEvent e; |
| 137 | e.side = side; |
| 138 | module->onExpanderChange(e); |
| 139 | } |
| 140 | } |
| 141 | |
| 142 | |
| 143 | static void Cable_step(Cable* that) { |
no test coverage detected