Files
qt5-legatus-legacy/Lts/Proxies/TrainingAreaBase/Plugins/DebugJsonDir/directory_dispatcher.h
T
torstenandCopilot 3028302f7b Qt6 Migration: Merge latest Qt5 devel content and apply migration fixes
- Merged 292 changed files from dlbo snapshot
- Fixed IDL enum collisions (PortType, PdmEventType)
- Fixed Grantlee template for C++11 scoped enums
- Fixed CMake VERSION_GREATER syntax
- Added missing directories (THP, LtsRestClient, etc.)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-15 18:20:51 +00:00

54 lines
1.5 KiB
C++
Executable File

/**
* Send / Receive telegrams to/from TX/RX directory
* $Id$
* $HeadURL$
* $Author$
* Created by Christian Ehrlicher, SLSE, 2016-09-26
*/
#pragma once
#include <QObject>
#include <TrainingAreaBase/tab_plugin_interface.h>
#include <DDS/Core/function_reply_object.h>
#include "../TetraJson/convert_from_json.h"
#include "convert_to_json_file.h"
class XDR_DirHandler_emit;
namespace TetraRadio
{
class DirectoryCleaner;
class DirectoryDispatcher final : public TrainingAreaBase::Plugin::Interface,
protected ConvertFromJson
{
Q_OBJECT
public:
explicit DirectoryDispatcher(const std::shared_ptr<TrainingAreaBase::RecvFromTab> &recvFromTabCb,
const QString &txDir,
const QString &rxDir);
~DirectoryDispatcher();
bool init() override;
std::shared_ptr<TrainingAreaBase::SendToTab> sendToTab() override;
bool isDebugInterface() const override { return true; }
bool canSendData() const override { return true; }
void exerciseChanged() override { return; }
const char *name() const override { return tr_lts("dds", "Debug Directory XDR Dispatcher"); }
void handleAcknowledge(qint64, int) override {}
void handleTetraConnectionChanged(bool) override {}
private Q_SLOTS:
void newTelegramArrived(const QString &fullPath);
private:
std::shared_ptr<ConvertToJsonFile> m_tx;
std::shared_ptr<TrainingAreaBase::RecvFromTab> m_rx;
XDR_DirHandler_emit *m_xdrDirHandler;
DirectoryCleaner *m_txCleaner;
QString m_txDir;
QString m_rxDir;
};
} // namespace TetraRadio