Qt6 Migration: Complete migration with DDS/RTI support and build validation
Major Changes:
- Merged latest Qt5 devel content from dlbo (292 files changed, 7 new dirs)
- Consolidated forward-declarations and include folders
- Removed unneeded modules per Niklas' repo check list
Build System Fixes:
- Fixed CMake VERSION_GREATER syntax in ParticipantManagement/CMakeLists.txt
- Added VLC packages (libvlc-dev, vlc-plugin-base) to docker_build.sh
- Added PostgreSQL dev packages (libpq-dev, postgresql-server-dev-all) to Dockerfile
- Fixed locale warnings (ANSI_X3.4-1968 → C.UTF-8)
- Fixed ArcGIS SDK path warnings when BUILD_ARCGIS=OFF
Code Generation Fixes:
- Fixed IDL enum collisions (PortType→CorePortType/DdsutPortType, PdmEventType)
- Fixed Grantlee template svc_translation.cpp.grantlee:
- Changed {{ idl_enum.name }}_def:: to {{ idl_enum.name }}::
- Fixed .underlying() calls for C++11 scoped enums (enum class)
- Removed generated files from repo (moc_*, *_dtc.h, *_ftc.h)
Validation:
- BUILD_RTI=ON: SUCCESS
- BUILD_RTI=OFF: SUCCESS
- C++17 standard maintained for RTI 7.7 compatibility
- Ubuntu 26.04 Docker environment verified
Remaining Warnings (expected):
- BgViewer, KDChart, KDReports, Poppler-Qt6 not found (optional features)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
18662 files changed
+4115092
-5435
No files matched your search
@@ -0,0 +1,114 @@
|
||||
/**
|
||||
* @RDE_HEADER@
|
||||
* some models for LogViewGui
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QtCore/QAbstractTableModel>
|
||||
#include <QtCore/QSharedPointer>
|
||||
#include <QSortFilterProxyModel>
|
||||
#include <set>
|
||||
|
||||
#include <CoPrtCnv/CoPrtCnvLogHeader.hpp>
|
||||
#include <CoPrtCnv/CoPrtCnvRadioTelegram.hpp>
|
||||
|
||||
#include "LogViewTelegram.hpp"
|
||||
|
||||
namespace N_LogView
|
||||
{
|
||||
|
||||
class ParticipantModel final : public QAbstractTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
using QAbstractTableModel::QAbstractTableModel;
|
||||
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
|
||||
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
||||
|
||||
QVariant headerData(int section, Qt::Orientation orientation,
|
||||
int role = Qt::DisplayRole) const override;
|
||||
|
||||
void clearParticipants();
|
||||
bool addUpdateParticipants(const QVector<int> &eqIds,
|
||||
const QVector<int> &issis,
|
||||
const QVector<int> &numberOfTelegrams);
|
||||
protected:
|
||||
void updateHeatMap() const;
|
||||
protected:
|
||||
// eqId , issi
|
||||
QVector<QPair<int, int> > m_particpants;
|
||||
// eqid, count telegrams
|
||||
QHash<int, int> m_particpantMap;
|
||||
// eqId, QColor for heatmap
|
||||
mutable QHash<int, QColor> m_participantHeatmap;
|
||||
};
|
||||
|
||||
class TelegramModel final : public QAbstractTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
using QAbstractTableModel::QAbstractTableModel;
|
||||
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
|
||||
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
||||
|
||||
QVariant headerData(int section, Qt::Orientation orientation,
|
||||
int role = Qt::DisplayRole) const override;
|
||||
|
||||
void clearTelegrams();
|
||||
void appendTelegrams(const QVector<QSharedPointer<LogViewTelegram> > &telegrams);
|
||||
void appendTelegram(const QSharedPointer<LogViewTelegram> &telegram);
|
||||
QSharedPointer<LogViewTelegram> telegram(int row) const;
|
||||
protected:
|
||||
QVector<QSharedPointer<LogViewTelegram> > m_telegrams;
|
||||
};
|
||||
|
||||
class TelegramProxyModel final : public QSortFilterProxyModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
using QSortFilterProxyModel::QSortFilterProxyModel;
|
||||
|
||||
void setFilterByEquipmentIds(bool bFilterByEquipmentIds);
|
||||
void setAllowedEquipmentIds(const std::set<int> &allowedEquipmentIds);
|
||||
|
||||
void setFilteredCentralTelegramIds(const std::set<int> &filteredCentralTelegramIds);
|
||||
void setFilteredTetraTelegramIds(const std::set<int> &filteredTetraTelegramIds);
|
||||
void setFilteredWlsTelegramIds(const std::set<int> &filteredWlsTelegramIds);
|
||||
|
||||
void setFilterCentralTelegrams(N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol direction, bool bFilter);
|
||||
void setFilterTetraTelegrams(N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol direction, bool bFilter);
|
||||
void setFilterTetraPDU(N_CoPrtCnv::CoPrtCnvRadioTelegram::E_PDU_Type pduType, bool bFilter);
|
||||
void setFilterWlsTelegrams(N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol direction, bool bFilter);
|
||||
|
||||
void setFilterTetraLogin(bool bFilter);
|
||||
void setFilterTetraFragmented(bool bFilter);
|
||||
|
||||
QSharedPointer<LogViewTelegram> telegram(int row) const;
|
||||
protected:
|
||||
bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
|
||||
bool lessThan(const QModelIndex &left, const QModelIndex &right) const override;
|
||||
protected:
|
||||
std::set<int> m_allowedEquipmentIds;
|
||||
std::set<int> m_filteredCentralTelegramIds;
|
||||
std::set<int> m_filteredTetraTelegramIds;
|
||||
std::set<int> m_filteredWlsTelegramIds;
|
||||
bool m_bFilterByEquipmentIds = false;
|
||||
bool m_bFilterLoginTelegrams = false;
|
||||
bool m_bFilterFragmentedTelegrams = false;
|
||||
std::set<N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol> m_filterCentralTelegrams;
|
||||
std::set<N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol> m_filterTetraTelegrams;
|
||||
std::set<N_CoPrtCnv::CoPrtCnvLogHeader::E_CoPrtCnvProtocol> m_filterWlsTelegrams;
|
||||
std::set<N_CoPrtCnv::CoPrtCnvRadioTelegram::E_PDU_Type> m_filterTetraPDU;
|
||||
};
|
||||
|
||||
} // namespace N_LogView
|
||||
Reference in new issue
Block a user