55 lines
1.4 KiB
C++
Executable File
55 lines
1.4 KiB
C++
Executable File
#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
|