async def _reset_vector(self):
        """Initialize the controller's subsystems inside the emulation thread."""

        # Send ourselves all of our config variable assignments
        config_rpcs = self.config_database.stream_matching(8, self.name)
        for rpc in config_rpcs:
            await self._device.emulator.await_rpc(*rpc)

        config_assignments = self.latch_config_variables()
        self._logger.info("Latched config variables at reset for controller: %s", config_assignments)

        for system in self._post_config_subsystems:
            try:
                system.clear_to_reset(config_assignments)
                await asyncio.wait_for(system.initialize(), timeout=2.0)
            except:
                self._logger.exception("Error initializing %s", system)
                raise

        self._logger.info("Finished clearing controller to reset condition")

        # Now reset all of the tiles
        for address, _ in self._device.iter_tiles(include_controller=False):
            self._logger.info("Sending reset signal to tile at address %d", address)

            try:
                await self._device.emulator.await_rpc(address, rpcs.RESET)
            except TileNotFoundError:
                pass
            except:
                self._logger.exception("Error sending reset signal to tile at address %d", address)
                raise

        self.initialized.set()
async def _reset_vector ( self ) : config_rpcs = self . config_database . stream_matching ( 8 , self . name ) for rpc in config_rpcs : await self . _device . emulator . await_rpc ( * rpc ) config_assignments = self . latch_config_variables ( ) self . _logger . info ( "Latched config variables at reset for controller: %s" , config_assignments ) for system in self . _post_config_subsystems : try : system . clear_to_reset ( config_assignments ) await asyncio . wait_for ( system . initialize ( ) , timeout = 2.0 ) except : self . _logger . exception ( "Error initializing %s" , system ) raise self . _logger . info ( "Finished clearing controller to reset condition" ) for address , _ in self . _device . iter_tiles ( include_controller = False ) : self . _logger . info ( "Sending reset signal to tile at address %d" , address ) try : await self . _device . emulator . await_rpc ( address , rpcs . RESET ) except TileNotFoundError : pass except : self . _logger . exception ( "Error sending reset signal to tile at address %d" , address ) raise self . initialized . set ( )
Initialize the controller's subsystems inside the emulation thread.