mfea_base.hh
来自「BCAST Implementation for NS2」· HH 代码 · 共 1,093 行 · 第 1/3 页
HH
1,093 行
const XrlCmdError handle_mfea_0_1_disable_all_vifs(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_start_all_vifs(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_stop_all_vifs(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_enable_mfea(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_disable_mfea(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_enable_cli(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_disable_cli(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_start_mfea(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_stop_mfea(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_start_cli(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_stop_cli(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_enable_log_trace(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_disable_log_trace(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_get_mrib_table_default_metric_preference(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_set_mrib_table_default_metric_preference(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_reset_mrib_table_default_metric_preference(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_get_mrib_table_default_metric(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_set_mrib_table_default_metric(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_mfea_0_1_reset_mrib_table_default_metric(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_fea_ifmgr_client_0_1_interface_update(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_fea_ifmgr_client_0_1_vif_update(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_fea_ifmgr_client_0_1_vifaddr4_update(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_fea_ifmgr_client_0_1_vifaddr6_update(const XrlArgs& in, XrlArgs* out); void add_handlers() { if (_cmds->add_handler("common/0.1/get_target_name", callback(this, &XrlMfeaTargetBase::handle_common_0_1_get_target_name)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/common/0.1/get_target_name"); } if (_cmds->add_handler("common/0.1/get_version", callback(this, &XrlMfeaTargetBase::handle_common_0_1_get_version)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/common/0.1/get_version"); } if (_cmds->add_handler("common/0.1/get_status", callback(this, &XrlMfeaTargetBase::handle_common_0_1_get_status)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/common/0.1/get_status"); } if (_cmds->add_handler("common/0.1/shutdown", callback(this, &XrlMfeaTargetBase::handle_common_0_1_shutdown)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/common/0.1/shutdown"); } if (_cmds->add_handler("cli_processor/0.1/process_command", callback(this, &XrlMfeaTargetBase::handle_cli_processor_0_1_process_command)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/cli_processor/0.1/process_command"); } if (_cmds->add_handler("mfea/0.1/have_multicast_routing4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_have_multicast_routing4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/have_multicast_routing4"); } if (_cmds->add_handler("mfea/0.1/have_multicast_routing6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_have_multicast_routing6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/have_multicast_routing6"); } if (_cmds->add_handler("mfea/0.1/add_protocol4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_protocol4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_protocol4"); } if (_cmds->add_handler("mfea/0.1/add_protocol6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_protocol6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_protocol6"); } if (_cmds->add_handler("mfea/0.1/delete_protocol4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_protocol4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_protocol4"); } if (_cmds->add_handler("mfea/0.1/delete_protocol6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_protocol6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_protocol6"); } if (_cmds->add_handler("mfea/0.1/start_protocol_vif4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_protocol_vif4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_protocol_vif4"); } if (_cmds->add_handler("mfea/0.1/start_protocol_vif6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_protocol_vif6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_protocol_vif6"); } if (_cmds->add_handler("mfea/0.1/stop_protocol_vif4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_protocol_vif4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_protocol_vif4"); } if (_cmds->add_handler("mfea/0.1/stop_protocol_vif6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_protocol_vif6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_protocol_vif6"); } if (_cmds->add_handler("mfea/0.1/allow_signal_messages", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_allow_signal_messages)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/allow_signal_messages"); } if (_cmds->add_handler("mfea/0.1/allow_mrib_messages", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_allow_mrib_messages)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/allow_mrib_messages"); } if (_cmds->add_handler("mfea/0.1/join_multicast_group4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_join_multicast_group4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/join_multicast_group4"); } if (_cmds->add_handler("mfea/0.1/join_multicast_group6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_join_multicast_group6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/join_multicast_group6"); } if (_cmds->add_handler("mfea/0.1/leave_multicast_group4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_leave_multicast_group4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/leave_multicast_group4"); } if (_cmds->add_handler("mfea/0.1/leave_multicast_group6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_leave_multicast_group6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/leave_multicast_group6"); } if (_cmds->add_handler("mfea/0.1/add_mfc4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_mfc4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_mfc4"); } if (_cmds->add_handler("mfea/0.1/add_mfc6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_mfc6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_mfc6"); } if (_cmds->add_handler("mfea/0.1/delete_mfc4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_mfc4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_mfc4"); } if (_cmds->add_handler("mfea/0.1/delete_mfc6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_mfc6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_mfc6"); } if (_cmds->add_handler("mfea/0.1/send_protocol_message4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_send_protocol_message4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/send_protocol_message4"); } if (_cmds->add_handler("mfea/0.1/send_protocol_message6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_send_protocol_message6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/send_protocol_message6"); } if (_cmds->add_handler("mfea/0.1/add_dataflow_monitor4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_dataflow_monitor4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_dataflow_monitor4"); } if (_cmds->add_handler("mfea/0.1/add_dataflow_monitor6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_add_dataflow_monitor6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/add_dataflow_monitor6"); } if (_cmds->add_handler("mfea/0.1/delete_dataflow_monitor4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_dataflow_monitor4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_dataflow_monitor4"); } if (_cmds->add_handler("mfea/0.1/delete_dataflow_monitor6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_dataflow_monitor6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_dataflow_monitor6"); } if (_cmds->add_handler("mfea/0.1/delete_all_dataflow_monitor4", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_all_dataflow_monitor4)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_all_dataflow_monitor4"); } if (_cmds->add_handler("mfea/0.1/delete_all_dataflow_monitor6", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_delete_all_dataflow_monitor6)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/delete_all_dataflow_monitor6"); } if (_cmds->add_handler("mfea/0.1/enable_vif", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_enable_vif)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/enable_vif"); } if (_cmds->add_handler("mfea/0.1/disable_vif", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_disable_vif)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/disable_vif"); } if (_cmds->add_handler("mfea/0.1/start_vif", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_vif)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_vif"); } if (_cmds->add_handler("mfea/0.1/stop_vif", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_vif)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_vif"); } if (_cmds->add_handler("mfea/0.1/enable_all_vifs", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_enable_all_vifs)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/enable_all_vifs"); } if (_cmds->add_handler("mfea/0.1/disable_all_vifs", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_disable_all_vifs)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/disable_all_vifs"); } if (_cmds->add_handler("mfea/0.1/start_all_vifs", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_all_vifs)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_all_vifs"); } if (_cmds->add_handler("mfea/0.1/stop_all_vifs", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_all_vifs)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_all_vifs"); } if (_cmds->add_handler("mfea/0.1/enable_mfea", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_enable_mfea)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/enable_mfea"); } if (_cmds->add_handler("mfea/0.1/disable_mfea", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_disable_mfea)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/disable_mfea"); } if (_cmds->add_handler("mfea/0.1/enable_cli", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_enable_cli)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/enable_cli"); } if (_cmds->add_handler("mfea/0.1/disable_cli", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_disable_cli)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/disable_cli"); } if (_cmds->add_handler("mfea/0.1/start_mfea", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_mfea)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_mfea"); } if (_cmds->add_handler("mfea/0.1/stop_mfea", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_mfea)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_mfea"); } if (_cmds->add_handler("mfea/0.1/start_cli", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_start_cli)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/start_cli"); } if (_cmds->add_handler("mfea/0.1/stop_cli", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_stop_cli)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/stop_cli"); } if (_cmds->add_handler("mfea/0.1/enable_log_trace", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_enable_log_trace)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/enable_log_trace"); } if (_cmds->add_handler("mfea/0.1/disable_log_trace", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_disable_log_trace)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/disable_log_trace"); } if (_cmds->add_handler("mfea/0.1/get_mrib_table_default_metric_preference", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_get_mrib_table_default_metric_preference)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/get_mrib_table_default_metric_preference"); } if (_cmds->add_handler("mfea/0.1/set_mrib_table_default_metric_preference", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_set_mrib_table_default_metric_preference)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/set_mrib_table_default_metric_preference"); } if (_cmds->add_handler("mfea/0.1/reset_mrib_table_default_metric_preference", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_reset_mrib_table_default_metric_preference)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/reset_mrib_table_default_metric_preference"); } if (_cmds->add_handler("mfea/0.1/get_mrib_table_default_metric", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_get_mrib_table_default_metric)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/get_mrib_table_default_metric"); } if (_cmds->add_handler("mfea/0.1/set_mrib_table_default_metric", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_set_mrib_table_default_metric)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/set_mrib_table_default_metric"); } if (_cmds->add_handler("mfea/0.1/reset_mrib_table_default_metric", callback(this, &XrlMfeaTargetBase::handle_mfea_0_1_reset_mrib_table_default_metric)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/mfea/0.1/reset_mrib_table_default_metric"); } if (_cmds->add_handler("fea_ifmgr_client/0.1/interface_update", callback(this, &XrlMfeaTargetBase::handle_fea_ifmgr_client_0_1_interface_update)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/fea_ifmgr_client/0.1/interface_update"); } if (_cmds->add_handler("fea_ifmgr_client/0.1/vif_update", callback(this, &XrlMfeaTargetBase::handle_fea_ifmgr_client_0_1_vif_update)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/fea_ifmgr_client/0.1/vif_update"); } if (_cmds->add_handler("fea_ifmgr_client/0.1/vifaddr4_update", callback(this, &XrlMfeaTargetBase::handle_fea_ifmgr_client_0_1_vifaddr4_update)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/fea_ifmgr_client/0.1/vifaddr4_update"); } if (_cmds->add_handler("fea_ifmgr_client/0.1/vifaddr6_update", callback(this, &XrlMfeaTargetBase::handle_fea_ifmgr_client_0_1_vifaddr6_update)) == false) { XLOG_ERROR("Failed to xrl handler finder://mfea/fea_ifmgr_client/0.1/vifaddr6_update"); } _cmds->finalize(); } void remove_handlers() { _cmds->remove_handler("common/0.1/get_target_name"); _cmds->remove_handler("common/0.1/get_version"); _cmds->remove_handler("common/0.1/get_status"); _cmds->remove_handler("common/0.1/shutdown"); _cmds->remove_handler("cli_processor/0.1/process_command"); _cmds->remove_handler("mfea/0.1/have_multicast_routing4"); _cmds->remove_handler("mfea/0.1/have_multicast_routing6"); _cmds->remove_handler("mfea/0.1/add_protocol4"); _cmds->remove_handler("mfea/0.1/add_protocol6"); _cmds->remove_handler("mfea/0.1/delete_protocol4"); _cmds->remove_handler("mfea/0.1/delete_protocol6"); _cmds->remove_handler("mfea/0.1/start_protocol_vif4"); _cmds->remove_handler("mfea/0.1/start_protocol_vif6"); _cmds->remove_handler("mfea/0.1/stop_protocol_vif4"); _cmds->remove_handler("mfea/0.1/stop_protocol_vif6"); _cmds->remove_handler("mfea/0.1/allow_signal_messages"); _cmds->remove_handler("mfea/0.1/allow_mrib_messages"); _cmds->remove_handler("mfea/0.1/join_multicast_group4"); _cmds->remove_handler("mfea/0.1/join_multicast_group6"); _cmds->remove_handler("mfea/0.1/leave_multicast_group4"); _cmds->remove_handler("mfea/0.1/leave_multicast_group6"); _cmds->remove_handler("mfea/0.1/add_mfc4"); _cmds->remove_handler("mfea/0.1/add_mfc6"); _cmds->remove_handler("mfea/0.1/delete_mfc4"); _cmds->remove_handler("mfea/0.1/delete_mfc6"); _cmds->remove_handler("mfea/0.1/send_protocol_message4"); _cmds->remove_handler("mfea/0.1/send_protocol_message6"); _cmds->remove_handler("mfea/0.1/add_dataflow_monitor4"); _cmds->remove_handler("mfea/0.1/add_dataflow_monitor6"); _cmds->remove_handler("mfea/0.1/delete_dataflow_monitor4"); _cmds->remove_handler("mfea/0.1/delete_dataflow_monitor6"); _cmds->remove_handler("mfea/0.1/delete_all_dataflow_monitor4"); _cmds->remove_handler("mfea/0.1/delete_all_dataflow_monitor6"); _cmds->remove_handler("mfea/0.1/enable_vif"); _cmds->remove_handler("mfea/0.1/disable_vif"); _cmds->remove_handler("mfea/0.1/start_vif"); _cmds->remove_handler("mfea/0.1/stop_vif"); _cmds->remove_handler("mfea/0.1/enable_all_vifs"); _cmds->remove_handler("mfea/0.1/disable_all_vifs"); _cmds->remove_handler("mfea/0.1/start_all_vifs"); _cmds->remove_handler("mfea/0.1/stop_all_vifs"); _cmds->remove_handler("mfea/0.1/enable_mfea"); _cmds->remove_handler("mfea/0.1/disable_mfea"); _cmds->remove_handler("mfea/0.1/enable_cli"); _cmds->remove_handler("mfea/0.1/disable_cli"); _cmds->remove_handler("mfea/0.1/start_mfea"); _cmds->remove_handler("mfea/0.1/stop_mfea"); _cmds->remove_handler("mfea/0.1/start_cli"); _cmds->remove_handler("mfea/0.1/stop_cli"); _cmds->remove_handler("mfea/0.1/enable_log_trace"); _cmds->remove_handler("mfea/0.1/disable_log_trace"); _cmds->remove_handler("mfea/0.1/get_mrib_table_default_metric_preference"); _cmds->remove_handler("mfea/0.1/set_mrib_table_default_metric_preference"); _cmds->remove_handler("mfea/0.1/reset_mrib_table_default_metric_preference"); _cmds->remove_handler("mfea/0.1/get_mrib_table_default_metric"); _cmds->remove_handler("mfea/0.1/set_mrib_table_default_metric"); _cmds->remove_handler("mfea/0.1/reset_mrib_table_default_metric"); _cmds->remove_handler("fea_ifmgr_client/0.1/interface_update"); _cmds->remove_handler("fea_ifmgr_client/0.1/vif_update"); _cmds->remove_handler("fea_ifmgr_client/0.1/vifaddr4_update"); _cmds->remove_handler("fea_ifmgr_client/0.1/vifaddr6_update"); }};#endif /* __XRL_INTERFACES_MFEA_BASE_HH__ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?