- flm_db.h: Stub-Header mit Folder/FileContent Klassen erstellt - flm_enums.hpp: MainFolder Enum hinzugefügt (None=0) - flm_translation.h: toInt() entfernt, trFolderName() angepasst - Plugin-Interfaces erstellt (flm, opm, exm) - Viewer-Dialogs: QString-Konvertierungen behoben - AdvancedSymbology CMakeLists.txt: Ungültige Pfade entfernt - ism_mounting_point.cpp: Redundante Definitionen entfernt Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
181 lines
6.3 KiB
C++
181 lines
6.3 KiB
C++
#pragma once
|
|
|
|
// STUB-HEADER: Diese Datei wird normalerweise von DDS/RTI Codegen generiert
|
|
// Für die Migration mit BUILD_RTI=OFF erstellen wir minimale Implementierungen
|
|
|
|
#include "flm_enums.hpp"
|
|
#include <QString>
|
|
#include <QDateTime>
|
|
#include <QByteArray>
|
|
#include <vector>
|
|
#include <cstdint>
|
|
#include <memory>
|
|
#include <optional>
|
|
|
|
namespace FileManagement
|
|
{
|
|
|
|
// Forward declarations
|
|
class Folder;
|
|
class FileContent;
|
|
|
|
/**
|
|
* @brief Folder class - Stub für DDS-generierten Code
|
|
*
|
|
* Diese Klasse wird normalerweise von DDS aus flm_service.xml generiert.
|
|
* Für BUILD_RTI=OFF verwenden wir diese minimale Implementierung.
|
|
*/
|
|
class Folder
|
|
{
|
|
public:
|
|
Folder() : m_id(0), m_parentId(0), m_mainFolder(MainFolder::None), m_operatorId(0) {}
|
|
|
|
// Getter
|
|
int32_t id() const { return m_id; }
|
|
std::string name() const { return m_name.toStdString(); }
|
|
int32_t parentId() const { return m_parentId; }
|
|
std::vector<int32_t> path() const { return m_path; }
|
|
QDateTime created() const { return m_created; }
|
|
QDateTime modified() const { return m_modified; }
|
|
MainFolder mainFolder() const { return m_mainFolder; }
|
|
int32_t operatorId() const { return m_operatorId; }
|
|
bool isHidden() const { return m_hidden; }
|
|
bool isEditable() const { return m_editable; }
|
|
bool isDeleted() const { return m_deleted; }
|
|
|
|
// Setter
|
|
void setId(int32_t id) { m_id = id; }
|
|
void setName(const QString& name) { m_name = name; }
|
|
void setName(const std::string& name) { m_name = QString::fromStdString(name); }
|
|
void setParentId(int32_t parentId) { m_parentId = parentId; }
|
|
void setPath(const std::vector<int32_t>& path) { m_path = path; }
|
|
void setCreated(const QDateTime& created) { m_created = created; }
|
|
void setModified(const QDateTime& modified) { m_modified = modified; }
|
|
void setMainFolder(MainFolder mainFolder) { m_mainFolder = mainFolder; }
|
|
void setOperatorId(int32_t operatorId) { m_operatorId = operatorId; }
|
|
void setHidden(bool hidden) { m_hidden = hidden; }
|
|
void setEditable(bool editable) { m_editable = editable; }
|
|
void setDeleted(bool deleted) { m_deleted = deleted; }
|
|
|
|
// Utility
|
|
bool isValid() const { return m_id > 0; }
|
|
|
|
private:
|
|
int32_t m_id;
|
|
QString m_name;
|
|
int32_t m_parentId;
|
|
std::vector<int32_t> m_path;
|
|
QDateTime m_created;
|
|
QDateTime m_modified;
|
|
MainFolder m_mainFolder;
|
|
int32_t m_operatorId;
|
|
bool m_hidden = false;
|
|
bool m_editable = true;
|
|
bool m_deleted = false;
|
|
};
|
|
|
|
/**
|
|
* @brief FileContent class - Stub für DDS-generierten Code
|
|
*
|
|
* Diese Klasse wird normalerweise von DDS aus flm_service.xml generiert.
|
|
* Für BUILD_RTI=OFF verwenden wir diese minimale Implementierung.
|
|
*/
|
|
class FileContent
|
|
{
|
|
public:
|
|
FileContent()
|
|
: m_id(0)
|
|
, m_fileId(0)
|
|
, m_folderId(0)
|
|
, m_operatorId(0)
|
|
, m_exerciseId(std::nullopt)
|
|
, m_phaseId(std::nullopt)
|
|
, m_size(0)
|
|
, m_fileStatus(FileStatus::Valid)
|
|
, m_fileCategory(FileCategory::Global)
|
|
, m_fileType(FileType::Unknown)
|
|
, m_isTemplate(false)
|
|
, m_mainFolder(MainFolder::None)
|
|
, m_hidden(false)
|
|
, m_used(false)
|
|
{
|
|
}
|
|
|
|
// Getter
|
|
int32_t id() const { return m_id; }
|
|
int32_t fileId() const { return m_fileId; }
|
|
int32_t folderId() const { return m_folderId; }
|
|
int32_t operatorId() const { return m_operatorId; }
|
|
std::optional<int32_t> exerciseId() const { return m_exerciseId; }
|
|
std::optional<int32_t> phaseId() const { return m_phaseId; }
|
|
QString name() const { return m_fileName; }
|
|
QString fileName() const { return m_fileName; }
|
|
QString mimeType() const { return m_mimeType; }
|
|
int64_t size() const { return m_size; }
|
|
QByteArray content() const { return m_content; }
|
|
std::string properties() const { return m_properties; }
|
|
QDateTime created() const { return m_created; }
|
|
QDateTime modified() const { return m_modified; }
|
|
QDateTime lastModified() const { return m_modified; }
|
|
FileStatus fileStatus() const { return m_fileStatus; }
|
|
FileCategory fileCategory() const { return m_fileCategory; }
|
|
FileType fileType() const { return m_fileType; }
|
|
bool isTemplate() const { return m_isTemplate; }
|
|
bool isDeleted() const { return m_fileStatus == FileStatus::Deleted; }
|
|
bool isHidden() const { return m_hidden; }
|
|
bool isUsedBy() const { return m_used; }
|
|
std::string usedBy() const { return m_usedBy; }
|
|
MainFolder mainFolder() const { return m_mainFolder; }
|
|
|
|
// Setter
|
|
void setId(int32_t id) { m_id = id; }
|
|
void setFileId(int32_t fileId) { m_fileId = fileId; }
|
|
void setFolderId(int32_t folderId) { m_folderId = folderId; }
|
|
void setOperatorId(int32_t operatorId) { m_operatorId = operatorId; }
|
|
void setExerciseId(std::optional<int32_t> exerciseId) { m_exerciseId = exerciseId; }
|
|
void setPhaseId(std::optional<int32_t> phaseId) { m_phaseId = phaseId; }
|
|
void setName(const QString& fileName) { m_fileName = fileName; }
|
|
void setFileName(const QString& fileName) { m_fileName = fileName; }
|
|
void setMimeType(const QString& mimeType) { m_mimeType = mimeType; }
|
|
void setSize(int64_t size) { m_size = size; }
|
|
void setContent(const QByteArray& content) { m_content = content; }
|
|
void setProperties(const std::string& properties) { m_properties = properties; }
|
|
void setCreated(const QDateTime& created) { m_created = created; }
|
|
void setModified(const QDateTime& modified) { m_modified = modified; }
|
|
void setFileStatus(FileStatus status) { m_fileStatus = status; }
|
|
void setFileCategory(FileCategory category) { m_fileCategory = category; }
|
|
void setFileType(FileType type) { m_fileType = type; }
|
|
void setTemplate(bool isTemplate) { m_isTemplate = isTemplate; }
|
|
void setHidden(bool hidden) { m_hidden = hidden; }
|
|
void setUsedBy(bool used) { m_used = used; }
|
|
void setUsedBy(const std::string& usedBy) { m_usedBy = usedBy; m_used = !usedBy.empty(); }
|
|
void setMainFolder(MainFolder mainFolder) { m_mainFolder = mainFolder; }
|
|
|
|
// Utility
|
|
bool isValid() const { return m_id > 0; }
|
|
|
|
private:
|
|
int32_t m_id;
|
|
int32_t m_fileId;
|
|
int32_t m_folderId;
|
|
int32_t m_operatorId;
|
|
std::optional<int32_t> m_exerciseId;
|
|
std::optional<int32_t> m_phaseId;
|
|
QString m_fileName;
|
|
QString m_mimeType;
|
|
int64_t m_size;
|
|
QByteArray m_content;
|
|
std::string m_properties;
|
|
QDateTime m_created;
|
|
QDateTime m_modified;
|
|
FileStatus m_fileStatus;
|
|
FileCategory m_fileCategory;
|
|
FileType m_fileType;
|
|
bool m_isTemplate;
|
|
MainFolder m_mainFolder;
|
|
bool m_hidden;
|
|
bool m_used;
|
|
std::string m_usedBy;
|
|
};
|
|
|
|
} // namespace FileManagement
|