2024-01-29 10:00:51 +00:00
|
|
|
// Copyright (C) 2024 The Qt Company Ltd.
|
2024-03-15 10:30:53 +00:00
|
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
|
2024-01-29 10:00:51 +00:00
|
|
|
|
|
|
|
|
#include "barseries.h"
|
|
|
|
|
|
|
|
|
|
#include <QtGraphs/QBarSet>
|
|
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
BarSeries::BarSeries(QObject *series)
|
|
|
|
|
: QBarSeries(series)
|
|
|
|
|
, m_cpuUpdater(this)
|
|
|
|
|
, m_axis1(this)
|
|
|
|
|
, m_axis2(this)
|
|
|
|
|
, m_counter(0)
|
2024-01-29 10:00:51 +00:00
|
|
|
{
|
|
|
|
|
connect(&m_timer, &QTimer::timeout, this, &BarSeries::frameUpdate);
|
|
|
|
|
m_timer.start(100);
|
|
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
m_axis1.setCategories({"Reading 1", "Reading 2", "Reading 3", "Reading 4", "Reading 5"});
|
2024-01-29 10:00:51 +00:00
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
m_axis2.setMin(0);
|
|
|
|
|
m_axis2.setMax(100);
|
2024-01-29 10:00:51 +00:00
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
setAxisX(&m_axis1);
|
|
|
|
|
setAxisY(&m_axis2);
|
2024-01-29 10:00:51 +00:00
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
m_barList = new QBarSet(this);
|
2024-01-29 10:00:51 +00:00
|
|
|
|
|
|
|
|
for (int i = 0; i < 5; ++i)
|
2024-01-30 08:30:56 +00:00
|
|
|
m_barList->append(double(0));
|
2024-01-29 10:00:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void BarSeries::frameUpdate()
|
|
|
|
|
{
|
|
|
|
|
auto reading = m_cpuUpdater.update();
|
|
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
m_barList->replace(m_counter++, reading);
|
2024-01-29 10:00:51 +00:00
|
|
|
|
2024-01-30 08:30:56 +00:00
|
|
|
if (m_counter == 5)
|
|
|
|
|
m_counter = 0;
|
2024-01-29 10:00:51 +00:00
|
|
|
}
|