83 lines
809 B
C++
83 lines
809 B
C++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
#include "PrtCnvThread.hpp"
|
|
#include "PrtCnvRadioThread.hpp"
|
|
#include <QtCore/QMap>
|
|
#include <QtCore/QMutex>
|
|
|
|
namespace PrtCnv
|
|
{
|
|
|
|
|
|
class PrtCnvRadioTrafficThread final : public PrtCnvThread
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit PrtCnvRadioTrafficThread(PrtCnvThreadStarter* a_parent);
|
|
|
|
|
|
|
|
void newTelegramArrived(unsigned int size);
|
|
|
|
|
|
|
|
int32_t start() override;
|
|
|
|
protected Q_SLOTS:
|
|
|
|
|
|
void onCalculateTrafficLoad();
|
|
|
|
|
|
|
|
void onCleanupTimeout();
|
|
|
|
protected:
|
|
|
|
|
|
PrtCnvRadioThread::E_TrafficLoad m_receiveLoad;
|
|
|
|
|
|
|
|
unsigned int m_fullLoad;
|
|
|
|
|
|
|
|
unsigned int m_highLoad;
|
|
|
|
|
|
|
|
unsigned int m_hystLoad;
|
|
|
|
|
|
|
|
int m_calcTimeout;
|
|
|
|
|
|
|
|
int m_cleanupTimeout;
|
|
|
|
|
|
|
|
QMutex m_mutex;
|
|
|
|
|
|
|
|
QMap<time_t, unsigned int> m_data;
|
|
QMap<time_t, unsigned int> m_telegrams;
|
|
};
|
|
}
|