projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Append new segments to the end, not the beginning of the list
[pulseview.git]
/
pv
/
session.cpp
diff --git
a/pv/session.cpp
b/pv/session.cpp
index ad4c17e246f0609079e470750c9c3f979d3f20cd..07ee594d7c1ca0390e5af1cef6ca6d24c2f4b22e 100644
(file)
--- a/
pv/session.cpp
+++ b/
pv/session.cpp
@@
-677,6
+677,17
@@
double Session::get_samplerate() const
return samplerate;
}
return samplerate;
}
+int Session::get_segment_count() const
+{
+ int min_val = INT_MAX;
+
+ for (shared_ptr<data::SignalData> data : all_signal_data_)
+ if (data->get_segment_count() < min_val)
+ min_val = data->get_segment_count();
+
+ return min_val;
+}
+
const unordered_set< shared_ptr<data::SignalBase> > Session::signalbases() const
{
return signalbases_;
const unordered_set< shared_ptr<data::SignalBase> > Session::signalbases() const
{
return signalbases_;
@@
-941,7
+952,7
@@
void Session::free_unused_memory()
void Session::feed_in_header()
{
void Session::feed_in_header()
{
- cur_samplerate_ = device_->read_config<uint64_t>(ConfigKey::SAMPLERATE);
+ // Nothing to do here for now
}
void Session::feed_in_meta(shared_ptr<Meta> meta)
}
void Session::feed_in_meta(shared_ptr<Meta> meta)
@@
-1012,6
+1023,9
@@
void Session::feed_in_frame_end()
void Session::feed_in_logic(shared_ptr<Logic> logic)
{
void Session::feed_in_logic(shared_ptr<Logic> logic)
{
+ if (!cur_samplerate_)
+ cur_samplerate_ = device_->read_config<uint64_t>(ConfigKey::SAMPLERATE);
+
lock_guard<recursive_mutex> lock(data_mutex_);
if (!logic_data_) {
lock_guard<recursive_mutex> lock(data_mutex_);
if (!logic_data_) {
@@
-1044,6
+1058,9
@@
void Session::feed_in_logic(shared_ptr<Logic> logic)
void Session::feed_in_analog(shared_ptr<Analog> analog)
{
void Session::feed_in_analog(shared_ptr<Analog> analog)
{
+ if (!cur_samplerate_)
+ cur_samplerate_ = device_->read_config<uint64_t>(ConfigKey::SAMPLERATE);
+
lock_guard<recursive_mutex> lock(data_mutex_);
const vector<shared_ptr<Channel>> channels = analog->channels();
lock_guard<recursive_mutex> lock(data_mutex_);
const vector<shared_ptr<Channel>> channels = analog->channels();