55 lines
1.4 KiB
C++
55 lines
1.4 KiB
C++
|
#include "XNAerodynamics.hpp"
|
||
|
#include "XNAerodynamicsPubSubTypes.hpp"
|
||
|
#include <QString>
|
||
|
#include <QMutex>
|
||
|
#include <QMutexLocker>
|
||
|
#include <QHash>
|
||
|
#include <functional>
|
||
|
|
||
|
namespace XNSim
|
||
|
{
|
||
|
namespace ATA04
|
||
|
{
|
||
|
class Aerodynamics_input_Interface
|
||
|
{
|
||
|
public:
|
||
|
Aerodynamics_input_Interface();
|
||
|
~Aerodynamics_input_Interface();
|
||
|
QString getData(const QString &varName);
|
||
|
void inputDataListener(const XNSim::ATA04::Aerodynamics_input &input);
|
||
|
|
||
|
private:
|
||
|
XNSim::ATA04::Aerodynamics_input input;
|
||
|
QHash<QString, std::function<QString(const QString &)>> getDataFunction;
|
||
|
QMutex mutex;
|
||
|
};
|
||
|
|
||
|
class Aerodynamics_output_Interface
|
||
|
{
|
||
|
public:
|
||
|
Aerodynamics_output_Interface();
|
||
|
~Aerodynamics_output_Interface();
|
||
|
QString getData(const QString &varName);
|
||
|
void outputDataListener(const XNSim::ATA04::Aerodynamics_output &output);
|
||
|
|
||
|
private:
|
||
|
XNSim::ATA04::Aerodynamics_output output;
|
||
|
QHash<QString, std::function<QString(const QString &)>> getDataFunction;
|
||
|
QMutex mutex;
|
||
|
};
|
||
|
|
||
|
class Aerodynamics_heartbeat_Interface
|
||
|
{
|
||
|
public:
|
||
|
Aerodynamics_heartbeat_Interface();
|
||
|
~Aerodynamics_heartbeat_Interface();
|
||
|
QString getData(const QString &varName);
|
||
|
void heartbeatListener(const XNSim::ATA04::Aerodynamics_heartbeat &heartbeat);
|
||
|
|
||
|
private:
|
||
|
XNSim::ATA04::Aerodynamics_heartbeat heartbeat;
|
||
|
QHash<QString, std::function<QString(const QString &)>> getDataFunction;
|
||
|
QMutex mutex;
|
||
|
};
|
||
|
} // namespace ATA04
|
||
|
} // namespace XNSim
|