def init(self): super().init() @self.bp.route('/api/plugins') async def get_plugins(request): raw_plugins = plugin.get_plugins_in_category(self.plugin_category) plugins = [{ 'id': raw_plugin.details.get('Core', 'Id'), 'name': raw_plugin.name, 'description': raw_plugin.description, 'configurable': raw_plugin.plugin_object.configurable, } for raw_plugin in raw_plugins] return response.json({ 'code': 200, 'data': { 'available': plugins, 'enabled': self._get_current_activated_plugins(), }, }) @self.bp.route('/api/plugins/enabled', methods=['POST']) async def set_activated_plugins(request): activated_plugins = request.json['id'] plugin.set_activated_plugins(self.plugin_category, activated_plugins) self.config[ 'enabled_plugins'] = self._get_current_activated_plugins() self.save_config() return response.json({ 'code': 200, 'data': activated_plugins, }) event.subscribe(self._activate_plugins, ['hexi.start']) plugin.add_category(self.plugin_category, self.plugin_class)
def init(self): super().init() self.last_signal = EMPTY_SIGNAL asyncio.ensure_future(self.fetch_signal_loop_async()) self.data_log_queue.attach_ws_endpoint(self.bp, '/api/input_log') event.subscribe(self.on_input_raw_signal, ['hexi.pipeline.input.raw_data'])
def init(): event.subscribe(on_start, ['hexi.start'])
def init(self): super().init() self.data_log_queue.attach_ws_endpoint(self.bp, '/api/mca_log') event.subscribe(self.on_mca_raw_signal, ['hexi.pipeline.mca.raw_data'])
def activate(self): super().activate() event.subscribe(self._on_input_signal, ['hexi.pipeline.input.data'])
def activate(self): super().activate() event.subscribe(self._on_mca_signal, ['hexi.pipeline.mca.data'])