return result;
}
-void Session::load_init_file(const string &file_name, const string &format)
+void Session::load_init_file(const string &file_name,
+ const string &format, const string &setup_file_name)
{
shared_ptr<InputFormat> input_format;
map<string, Glib::VariantBase> input_opts;
input_format->options());
}
- load_file(QString::fromStdString(file_name), input_format, input_opts);
+ load_file(QString::fromStdString(file_name), QString::fromStdString(setup_file_name),
+ input_format, input_opts);
}
-void Session::load_file(QString file_name,
- shared_ptr<sigrok::InputFormat> format,
- const map<string, Glib::VariantBase> &options)
+void Session::load_file(QString file_name, QString setup_file_name,
+ shared_ptr<sigrok::InputFormat> format, const map<string, Glib::VariantBase> &options)
{
const QString errorMessage(
QString("Failed to load file %1").arg(file_name));
return;
}
- // Auto-load the setup if one exists
- QString setup_file_name = file_name;
- setup_file_name.truncate(setup_file_name.lastIndexOf('.'));
- setup_file_name.append(".pvs");
+ // Use the input file with .pvs extension if no setup file was given
+ if (setup_file_name.isEmpty()) {
+ setup_file_name = file_name;
+ setup_file_name.truncate(setup_file_name.lastIndexOf('.'));
+ setup_file_name.append(".pvs");
+ }
+
if (QFileInfo::exists(setup_file_name) && QFileInfo(setup_file_name).isReadable()) {
QSettings settings_storage(setup_file_name, QSettings::IniFormat);
restore_setup(settings_storage);
{
bool changed;
+ if (state == Running)
+ acq_time_.restart();
+ if (state == Stopped)
+ qDebug("Acquisition took %.2f s", acq_time_.elapsed() / 1000.);
+
{
lock_guard<mutex> lock(sampling_mutex_);
changed = capture_state_ != state;
data_saved_ = true;
}
+#ifdef ENABLE_DECODE
+void Session::on_new_decoders_selected(vector<const srd_decoder*> decoders)
+{
+ assert(decoders.size() > 0);
+
+ shared_ptr<data::DecodeSignal> signal = add_decode_signal();
+
+ if (signal)
+ for (const srd_decoder* d : decoders)
+ signal->stack_decoder(d);
+}
+#endif
+
} // namespace pv