DecoderStack::DecoderStack(pv::Session &session,
const srd_decoder *const dec) :
session_(session),
+ start_time_(0),
+ samplerate_(0),
sample_count_(0),
frame_complete_(false),
samples_decoded_(0)
stack_.erase(iter);
}
+double DecoderStack::samplerate() const
+{
+ return samplerate_;
+}
+
+double DecoderStack::start_time() const
+{
+ return start_time_;
+}
+
int64_t DecoderStack::samples_decoded() const
{
lock_guard<mutex> decode_lock(output_mutex_);
class Logic;
-class DecoderStack : public QObject, public SignalData
+class DecoderStack : public QObject
{
Q_OBJECT
void push(std::shared_ptr<decode::Decoder> decoder);
void remove(int index);
+ double samplerate() const;
+
+ double start_time() const;
+
int64_t samples_decoded() const;
std::vector<decode::Row> get_visible_rows() const;
private:
pv::Session &session_;
+ double start_time_;
+ double samplerate_;
+
/**
* This mutex prevents more than one decode operation occuring
* concurrently.
assert(scale > 0);
const double pixels_offset =
- (view->offset() - decoder_stack_->get_start_time()) / scale;
+ (view->offset() - decoder_stack_->start_time()) / scale;
double samplerate = decoder_stack_->samplerate();