Files
qt-migration-legatus/qt5-before/dlbo/Lts/Services/PresentationManagement/pre_service.xml
T
torstenandCopilot 7173785915 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>
2026-09-15 18:20:26 +00:00

141 lines
7.5 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service namespace="PresentationManagement" abbreviation="PRE" procNames="PresentationManagement" exerciseDependency="Exercise">
<rcs>
<Id Id="$Id$"/>
<HeadURL HeadURL="$HeadURL$"/>
<Author Author="$Author$"/>
</rcs>
<operatorRights offset="28">
<guiPlugin name="PresentationEdit" offset="1">
<operatorRightGroup name="Presentation" description="Edit Presentation Scripts">
<operatorRight right="PresentationScriptsShow" value="1" description="Show Presentations Scripts"/>
<operatorRight right="PresentationScriptsEdit" value="2" description="Edit Presentation Scripts"/>
<operatorRight right="PresentationScriptsAdmin" value="3" description="Administrative rights to remove / restore presentation scripts"/>
</operatorRightGroup>
</guiPlugin>
<guiPlugin name="ScriptEditor" offset="2">
<operatorRightGroup name="Script Editor" description="Edit Presentation Scripts and Topic Designer Items in Script Editor">
<operatorRight right="ScriptEditorShow" value="1" description="Show Presentation Script Editor"/>
<operatorRight right="ScriptEditorEdit" value="2" description="Edit Presentation Scripts in Script Editor"/>
<operatorRight right="TopicDesignerShow" value="3" description="Show Presentation Script Topic Designer Items"/>
<operatorRight right="TopicDesignerEdit" value="4" description="Edit Presentation Script Topic Designer Items"/>
</operatorRightGroup>
</guiPlugin>
<guiPlugin name="ScriptPlayer" offset="3">
<operatorRightGroup name="Script Player" description="Show Presentation Script Player">
<operatorRight right="ScriptPlayerShow" value="1" description="Show Presentation Script Player"/>
</operatorRightGroup>
</guiPlugin>
</operatorRights>
<tables>
<table name="pre_file_status">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="name" datatype="text"/>
</table>
<table name="pre_presentation">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="name" datatype="text"/>
<column name="description" datatype="text"/>
<column name="operator_id" datatype="integer" isForeignKey="1"/>
<column name="last_modified" datatype="bigint"/>
<column name="file_status_id" datatype="integer" isForeignKey="1"/>
<foreignKey name="FK_pre_presentation_pre_file_status">
<source table="pre_presentation" column="file_status_id"/>
<destination table="pre_file_status" column="id"/>
</foreignKey>
<foreignKey name="FK_pre_presentation_opm_operator">
<source table="pre_presentation" column="operator_id"/>
<destination service="OperatorManagement" serviceAbbr="opm" schema="opm" table="opm_operator" column="id"/>
</foreignKey>
</table>
<table name="pre_presentation_content">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="presentation_id" datatype="integer" isForeignKey="1"/>
<column name="presentation_topic_type" datatype="text"/>
<column name="channel" datatype="text"/>
<column name="start_time" datatype="bigint"/>
<column name="duration" datatype="integer"/>
<column name="attributes" datatype="jsonb"/>
<column name="x" datatype="real"/>
<column name="y" datatype="real"/>
<column name="width" datatype="real"/>
<column name="height" datatype="real"/>
<column name="index" datatype="integer"/>
<column name="description" datatype="text"/>
<foreignKey name="FK_presentation_content_presentation">
<source table="pre_presentation_content" column="presentation_id"/>
<destination table="pre_presentation" column="id"/>
</foreignKey>
</table>
</tables>
<views/>
<dbServiceStructs>
<serviceStruct name="PrePresentation" table="pre_presentation"/>
<serviceStruct name="PrePresentationContent" table="pre_presentation_content"/>
<table name="pre_presentation"/>
<table name="pre_presentation_content"/>
</dbServiceStructs>
<topicTypes>
<topicType name="GetPresentationContentReply" baseValueType="Core::FunctionReply">
<column name="content" idlType="sequence&lt;PresentationContent&gt;"/>
</topicType>
<topicType name="GetPresentationContentRequest">
<column name="presentationId" idlType="long"/>
</topicType>
<topicType name="Presentation" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="1" baseValueType="Core::BaseEntity">
<column name="description" idlType="string"/>
<column name="operatorId" idlType="long"/>
<column name="lastModified" idlType="long long"/>
<column name="fileStatus" idlType="FileStatus"/>
</topicType>
<topicType name="PresentationChangeStatusRequest">
<column name="id" idlType="long"/>
<column name="operatorId" idlType="long"/>
<column name="lastModified" idlType="long long"/>
<column name="fileStatus" idlType="FileStatus"/>
</topicType>
<topicType name="PresentationContent">
<column name="attributes" idlType="string"/>
<column name="channel" idlType="string"/>
<column name="description" idlType="string"/>
<column name="duration" idlType="long"/>
<column name="height" idlType="double"/>
<column name="id" idlType="long" isKey="1"/>
<column name="index" idlType="long"/>
<column name="presentationId" idlType="long"/>
<column name="presentationTopicType" idlType="string"/>
<column name="startTime" idlType="long long"/>
<column name="width" idlType="double"/>
<column name="x" idlType="double"/>
<column name="y" idlType="double"/>
</topicType>
<topicType name="PresentationModifyRequest">
<column name="id" idlType="long" isKey="1"/>
<column name="name" idlType="string"/>
<column name="description" idlType="string"/>
<column name="operatorId" idlType="long"/>
<column name="lastModified" idlType="long long"/>
<column name="fileStatus" idlType="FileStatus"/>
<column name="content" idlType="sequence&lt;PresentationContent&gt;"/>
</topicType>
</topicTypes>
<functionTopics>
<functionTopic name="GetPresentationContent" requestTopicType="GetPresentationContentRequest" replyTopicType="GetPresentationContentReply" requestTopicName="GetPresentationContentRequest" replyTopicName="GetPresentationContentReply" routeInReplay="1"/>
<functionTopic name="PresentationChangeStatus" requestTopicType="PresentationChangeStatusRequest" replyTopicType="Core::FunctionReply" requestTopicName="PresentationChangeStatusRequest" replyTopicName="PresentationChangeStatusReply" routeInReplay="0"/>
<functionTopic name="PresentationModify" requestTopicType="PresentationModifyRequest" replyTopicType="Core::FunctionReply" requestTopicName="PresentationModifyRequest" replyTopicName="PresentationModifyReply" routeInReplay="0"/>
<functionTopic name="PresentationRemove" requestTopicType="Core::RemoveElementRequest" replyTopicType="Core::FunctionReply" requestTopicName="PresentationRemoveRequest" replyTopicName="PresentationRemoveReply" routeInReplay="0"/>
</functionTopics>
<enumerations>
<enumeration name="FileStatus" table="pre_file_status">
<attribute key="Valid" value="0"/>
<attribute key="Deleted" value="1"/>
</enumeration>
</enumerations>
</service>