File: tfpagecontroller.cpp

package info (click to toggle)
aoflagger 3.4.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 8,688 kB
  • sloc: cpp: 83,116; python: 10,187; sh: 260; makefile: 178
file content (32 lines) | stat: -rw-r--r-- 1,074 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "tfpagecontroller.h"

#include "../../quality/statisticscollection.h"
#include "../../quality/statisticsderivator.h"

TFPageController::TFPageController() : _statCollection(nullptr) {
  HeatMap& map = Plot();
  map.SetXAxisDescription("Time index");
  map.SetXAxisType(AxisType::kTime);
  map.SetYAxisDescription("Frequency index");
}

std::pair<TimeFrequencyData, TimeFrequencyMetaDataCPtr>
TFPageController::constructImage(QualityTablesFormatter::StatisticKind kind) {
  if (HasStatistics()) {
    StatisticsDerivator derivator(*_statCollection);

    std::pair<TimeFrequencyData, TimeFrequencyMetaDataCPtr> data =
        derivator.CreateTFData(kind);
    if (data.second == nullptr) {
      Plot().SetXAxisDescription("Time index");
      Plot().SetYAxisDescription("Frequency index");
    } else {
      Plot().SetXAxisDescription("Time");
      Plot().SetYAxisDescription("Frequency (MHz)");
    }
    return data;
  } else {
    return std::pair<TimeFrequencyData, TimeFrequencyMetaDataCPtr>(
        TimeFrequencyData(), TimeFrequencyMetaDataCPtr());
  }
}