#include <pv/data/decoderstack.hpp>
#include <pv/data/decode/decoder.hpp>
#include <pv/data/logic.hpp>
-#include <pv/data/logicsnapshot.hpp>
+#include <pv/data/logicsegment.hpp>
#include <pv/data/decode/annotation.hpp>
#include <pv/view/logicsignal.hpp>
#include <pv/view/view.hpp>
{
/// @todo Replace this with an implementation that knows the true
/// height of the trace
- QFontMetrics m(QApplication::font());
- const int text_height = m.boundingRect(QRect(), 0, "Tg").height();
- const int row_height = (text_height * 6) / 4;
+ const int row_height = (RowItemPaintParams::text_height() * 6) / 4;
return make_pair(-row_height / 2, row_height * 7 / 2);
}
{
using namespace pv::data::decode;
- QFontMetrics m(QApplication::font());
- text_height_ = m.boundingRect(QRect(), 0, "Tg").height();
+ text_height_ = RowItemPaintParams::text_height();
row_height_ = (text_height_ * 6) / 4;
const int annotation_height = (text_height_ * 5) / 4;
// We get the logic data of the first channel in the list.
// This works because we are currently assuming all
- // LogicSignals have the same data/snapshot
+ // LogicSignals have the same data/segment
for (const shared_ptr<Decoder> &dec : stack)
if (dec && !dec->channels().empty() &&
((logic_signal = (*dec->channels().begin()).second)) &&
((data = logic_signal->logic_data())))
break;
- if (!data || data->get_snapshots().empty())
+ if (!data || data->logic_segments().empty())
return;
- const shared_ptr<LogicSnapshot> snapshot =
- data->get_snapshots().front();
- assert(snapshot);
- const int64_t sample_count = (int64_t)snapshot->get_sample_count();
+ const shared_ptr<LogicSegment> segment =
+ data->logic_segments().front();
+ assert(segment);
+ const int64_t sample_count = (int64_t)segment->get_sample_count();
if (sample_count == 0)
return;
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();