MCPcopy Index your code
hub / github.com/DreamSourceLab/DSView / signals_changed

Method signals_changed

DSView/pv/view/view.cpp:676–842  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

674}
675
676void View::signals_changed(const Trace* eventTrace)
677{
678 double actualMargin = SignalMargin;
679 int total_rows = 0;
680 int label_size = 0;
681 uint8_t max_height = MaxHeightUnit;
682 std::vector<Trace*> time_traces;
683 std::vector<Trace*> fft_traces;
684 std::vector<Trace*> traces;
685 std::vector<Trace*> logic_traces;
686 std::vector<Trace*> decoder_traces;
687
688 (void)eventTrace;
689
690 get_traces(ALL_VIEW, traces);
691
692 for(auto t : traces) {
693 if (_trace_view_map[t->get_type()] == TIME_VIEW){
694 time_traces.push_back(t);
695 }
696 else if (_trace_view_map[t->get_type()] == FFT_VIEW){
697 if (t->enabled())
698 fft_traces.push_back(t);
699 }
700
701 if (t->get_type() == SR_CHANNEL_LOGIC)
702 logic_traces.push_back(t);
703 else if (t->get_type() == SR_CHANNEL_DECODER)
704 decoder_traces.push_back(t);
705 }
706
707 if (!fft_traces.empty()) {
708 if (!_fft_viewport->isVisible()) {
709 _fft_viewport->setVisible(true);
710 _fft_viewport->clear_measure();
711 _viewport_list.push_back(_fft_viewport);
712 _vsplitter->refresh();
713 }
714
715 for(auto t : fft_traces) {
716 t->set_view(this);
717 t->set_viewport(_fft_viewport);
718 t->set_totalHeight(_fft_viewport->height());
719 t->set_v_offset(_fft_viewport->geometry().bottom());
720 }
721 }
722 else {
723 _fft_viewport->setVisible(false);
724 _vsplitter->refresh();
725
726 // Find the _fft_viewport in the stack
727 std::list< QWidget *>::iterator iter = _viewport_list.begin();
728
729 for(unsigned int i = 0; i < _viewport_list.size(); i++, iter++){
730 if ((*iter) == _fft_viewport)
731 break;
732 }
733

Callers 2

mouseReleaseEventMethod · 0.45
on_new_decode_dataMethod · 0.45

Calls 15

emptyMethod · 0.80
clear_measureMethod · 0.80
refreshMethod · 0.80
set_viewportMethod · 0.80
set_totalHeightMethod · 0.80
set_v_offsetMethod · 0.80
sizeMethod · 0.80
have_instanceMethod · 0.80
get_work_modeMethod · 0.80
get_config_byteMethod · 0.80
get_view_indexMethod · 0.80
signal_typeMethod · 0.80

Tested by

no test coverage detected