forked from Ivasoft/DSView
Auto set as max scale when device changed
This commit is contained in:
@@ -1699,15 +1699,21 @@ namespace pv
|
|||||||
_msg->close();
|
_msg->close();
|
||||||
_msg = NULL;
|
_msg = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
_sampling_bar->update_device_list();
|
|
||||||
reset_all_view();
|
reset_all_view();
|
||||||
load_device_config();
|
load_device_config();
|
||||||
|
_sampling_bar->update_device_list();
|
||||||
|
|
||||||
_logo_bar->dsl_connected(_session->get_device()->is_hardware());
|
_logo_bar->dsl_connected(_session->get_device()->is_hardware());
|
||||||
update_toolbar_view_status();
|
update_toolbar_view_status();
|
||||||
_session->device_event_object()->device_updated();
|
_session->device_event_object()->device_updated();
|
||||||
|
|
||||||
|
if (_device_agent->is_hardware())
|
||||||
|
_session->on_load_config_end();
|
||||||
|
|
||||||
|
if (_device_agent->get_work_mode() == LOGIC && _device_agent->is_file() == false)
|
||||||
|
_view->auto_set_max_scale();
|
||||||
|
|
||||||
if (_device_agent->is_file())
|
if (_device_agent->is_file())
|
||||||
{
|
{
|
||||||
check_session_file_version();
|
check_session_file_version();
|
||||||
@@ -1722,7 +1728,7 @@ namespace pv
|
|||||||
}
|
}
|
||||||
|
|
||||||
_session->start_capture(true);
|
_session->start_capture(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1737,12 +1743,18 @@ namespace pv
|
|||||||
_view->timebase_changed();
|
_view->timebase_changed();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DSV_MSG_DEVICE_MODE_CHANGED:
|
case DSV_MSG_DEVICE_MODE_CHANGED:
|
||||||
_sampling_bar->update_sample_rate_list();
|
|
||||||
_view->mode_changed();
|
_view->mode_changed();
|
||||||
reset_all_view();
|
reset_all_view();
|
||||||
load_device_config();
|
load_device_config();
|
||||||
update_toolbar_view_status();
|
update_toolbar_view_status();
|
||||||
|
_sampling_bar->update_sample_rate_list();
|
||||||
|
|
||||||
|
if (_device_agent->is_hardware())
|
||||||
|
_session->on_load_config_end();
|
||||||
|
|
||||||
|
if (_device_agent->get_work_mode() == LOGIC)
|
||||||
|
_view->auto_set_max_scale();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DSV_MSG_NEW_USB_DEVICE:
|
case DSV_MSG_NEW_USB_DEVICE:
|
||||||
|
|||||||
@@ -240,7 +240,7 @@ namespace pv
|
|||||||
_view_data->clear();
|
_view_data->clear();
|
||||||
_capture_data->clear();
|
_capture_data->clear();
|
||||||
_capture_data = _view_data;
|
_capture_data = _view_data;
|
||||||
|
|
||||||
init_signals();
|
init_signals();
|
||||||
|
|
||||||
set_cur_snap_samplerate(_device_agent.get_sample_rate());
|
set_cur_snap_samplerate(_device_agent.get_sample_rate());
|
||||||
@@ -812,8 +812,7 @@ namespace pv
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dsv_info("SigSession::init_signals(), clear signals");
|
|
||||||
clear_signals();
|
clear_signals();
|
||||||
|
|
||||||
std::vector<view::Signal *>().swap(_signals);
|
std::vector<view::Signal *>().swap(_signals);
|
||||||
@@ -2079,6 +2078,7 @@ namespace pv
|
|||||||
|
|
||||||
if (cur_mode == LOGIC){
|
if (cur_mode == LOGIC){
|
||||||
clear_all_decode_task2();
|
clear_all_decode_task2();
|
||||||
|
clear_decode_result();
|
||||||
}
|
}
|
||||||
|
|
||||||
_is_stream_mode = false;
|
_is_stream_mode = false;
|
||||||
@@ -2091,14 +2091,15 @@ namespace pv
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_view_data != _capture_data){
|
_capture_data->clear();
|
||||||
_capture_data->clear();
|
_view_data->clear();
|
||||||
_capture_data = _view_data;
|
_capture_data = _view_data;
|
||||||
}
|
|
||||||
set_cur_snap_samplerate(_device_agent.get_sample_rate());
|
|
||||||
set_cur_samplelimits(_device_agent.get_sample_limit());
|
|
||||||
|
|
||||||
init_signals();
|
init_signals();
|
||||||
|
|
||||||
|
set_cur_snap_samplerate(_device_agent.get_sample_rate());
|
||||||
|
set_cur_samplelimits(_device_agent.get_sample_limit());
|
||||||
|
|
||||||
dsv_info("Switch work mode to:%d", mode);
|
dsv_info("Switch work mode to:%d", mode);
|
||||||
broadcast_msg(DSV_MSG_DEVICE_MODE_CHANGED);
|
broadcast_msg(DSV_MSG_DEVICE_MODE_CHANGED);
|
||||||
return true;
|
return true;
|
||||||
@@ -2211,4 +2212,10 @@ namespace pv
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SigSession::on_load_config_end()
|
||||||
|
{
|
||||||
|
set_cur_snap_samplerate(_device_agent.get_sample_rate());
|
||||||
|
set_cur_samplelimits(_device_agent.get_sample_limit());
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace pv
|
} // namespace pv
|
||||||
|
|||||||
@@ -409,6 +409,8 @@ public:
|
|||||||
return get_signal_snapshot()->have_data();
|
return get_signal_snapshot()->have_data();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void on_load_config_end();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void set_cur_samplelimits(uint64_t samplelimits);
|
void set_cur_samplelimits(uint64_t samplelimits);
|
||||||
void set_cur_snap_samplerate(uint64_t samplerate);
|
void set_cur_snap_samplerate(uint64_t samplerate);
|
||||||
|
|||||||
@@ -246,7 +246,7 @@ static int hw_dev_open(struct sr_dev_inst *sdi)
|
|||||||
struct demo_context *const devc = sdi->priv;
|
struct demo_context *const devc = sdi->priv;
|
||||||
|
|
||||||
if (sdi->status == SR_ST_ACTIVE)
|
if (sdi->status == SR_ST_ACTIVE)
|
||||||
return;
|
return SR_OK;
|
||||||
|
|
||||||
reset_demo_device(sdi);
|
reset_demo_device(sdi);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user