/** * @RDE_HEADER@ * GUI Plugin for SituationReplayManagement - Replay Partition Dialog Model * $Id$ * $HeadURL$ * $Author$ * Created by Patric Karwat, SLSE, 2016-07-19 */ #pragma once #include #include #include #include namespace SituationReplayManagement { // -------------------------------------------------------- // ReplayPartitionDialogModel // -------------------------------------------------------- class ReplayPartitionDialogModel final : public LtsWidgets::LtsAbstractTableModel { Q_OBJECT public: enum Columns { Id, Name, Exercise, WorkstationId, ConnectionString }; explicit ReplayPartitionDialogModel(QObject *parent = nullptr); ~ReplayPartitionDialogModel(); bool initModel(int partitionId, const std::shared_ptr &dtc); QVariant data(const QModelIndex &, int) const override final; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()) override final; protected: bool isFiltered(const Core::ReplayPartition &data, DataModification modType) const override { if (data.exerciseId() != m_partitionid) return true; return LtsWidgets::LtsAbstractTableModel::isFiltered(data, modType); } private: int m_partitionid; std::shared_ptr m_dtc; LOGGER_T m_logger; }; }