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 33 34 35 36 37 38 39 40 41 42 43 44 45
|
#ifndef BASELINE_PAGE_CONTROLLER_H
#define BASELINE_PAGE_CONTROLLER_H
#include "heatmappagecontroller.h"
#include <string>
#include <utility>
#include <vector>
class AntennaInfo;
class BaselinePageController final : public HeatMapPageController {
public:
BaselinePageController() : _statCollection(nullptr), _antennas(nullptr) {}
void SetStatistics(const StatisticsCollection* statCollection,
const std::vector<class AntennaInfo>& antennas) override {
_statCollection = statCollection;
_antennas = &antennas;
HeatMap& map = Plot();
map.SetXAxisDescription("Antenna 1 index");
map.SetXAxisMin(0);
map.SetXAxisMax(antennas.size() - 1);
map.SetYAxisDescription("Antenna 2 index");
map.SetYAxisMin(0);
map.SetYAxisMax(antennas.size() - 1);
UpdateImage();
}
void CloseStatistics() override {
_statCollection = nullptr;
_antennas = nullptr;
}
bool HasStatistics() const { return _statCollection != nullptr; }
std::string AntennaName(size_t index) const;
protected:
std::pair<TimeFrequencyData, TimeFrequencyMetaDataCPtr> constructImage(
QualityTablesFormatter::StatisticKind kind) override;
private:
const StatisticsCollection* _statCollection;
const std::vector<AntennaInfo>* _antennas;
};
#endif
|