Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_dtc.h
T

77 lines
2.0 KiB
C++

#pragma once
// STUB-HEADER: Diese Datei wird normalerweise von ddsdtc generiert
// Für die Migration erstellen wir minimale Implementierungen
#include <functional>
#include <QObject>
#include "flm_db.h"
namespace FileManagement
{
namespace Interface
{
// DataModification Enum (aus DDS generiert)
enum class DataModification
{
eAdded,
eModified,
eRemoved
};
// Callback types
using FolderCallback = std::function<void(const std::vector<Folder>&, const std::vector<int32_t>&, DataModification)>;
using FileContentCallback = std::function<void(const std::vector<FileContent>&, const std::vector<int32_t>&, DataModification)>;
// Dtc - Data Transfer Component interface for FileManagement
class Dtc : public QObject
{
Q_OBJECT
public:
virtual ~Dtc() = default;
// Initialization methods
virtual void enableFolder() {}
virtual void waitForHistoricalDataFolder() {}
virtual void enableFileContent() {}
virtual void waitForHistoricalDataFileContent() {}
// Folder operations
virtual void folders(FolderCallback callback) const
{
// STUB-Implementierung - keine Ordner vorhanden
std::vector<Folder> emptyFolders;
std::vector<int32_t> emptyIds;
callback(emptyFolders, emptyIds, DataModification::eModified);
}
virtual std::shared_ptr<Folder> folder(int32_t /*folderId*/) const
{
return nullptr;
}
// FileContent operations
virtual void fileContents(FileContentCallback callback) const
{
// STUB-Implementierung
std::vector<FileContent> emptyContents;
std::vector<int32_t> emptyIds;
callback(emptyContents, emptyIds, DataModification::eModified);
}
virtual std::shared_ptr<FileContent> fileContent(int32_t /*fileContentId*/) const
{
return nullptr;
}
signals:
void folderChanged(const FileManagement::Folder &folder, DataModification modification);
void fileContentChanged(const FileManagement::FileContent &fileContent, DataModification modification);
};
class Ftc;
} // namespace Interface
} // namespace FileManagement