Files
qt5-legatus-legacy/Lts/Services/SoundManagement/som_service.xml
T
2026-08-13 18:33:10 +02:00

125 lines
6.2 KiB
XML
Executable File

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service namespace="SoundManagement" abbreviation="SOM" procNames="SoundManagement" exerciseDependency="Global" groups="Core">
<rcs>
<Id Id="$Id: ea_export_script.txt 41311 2018-04-23 09:43:45Z ehrlicher $"/>
<HeadURL HeadURL="$HeadURL: svn://slssvn/TDS/branches/product/devel/trunk/Lts/Common/CodeGen/ea_export_script.txt $"/>
<Author Author="$Author: ehrlicher $"/>
</rcs>
<operatorRights offset="52">
<guiPlugin name="SoundManagement" offset="1">
<operatorRightGroup name="Sound Management (Global)" description="Sound Management">
<operatorRight right="StartSoundDialog" value="1" description="Configure Sounds"/>
</operatorRightGroup>
</guiPlugin>
</operatorRights>
<tables>
<table name="som_device_type" comment="static data (&lt;b&gt;not&lt;/b&gt; project specific) generate from enum">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="name" datatype="text"/>
</table>
<table name="som_sound">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="category_id" datatype="integer" isForeignKey="1"/>
<column name="sound_id" datatype="integer"/>
<column name="name" datatype="text"/>
<column name="display_name" datatype="text"/>
<column name="duration" datatype="integer" comment="[ms]"/>
<column name="is_repeatable" datatype="boolean"/>
<foreignKey name="FK_som_sound_som_sound_category" referential_integrity="DeleteCascade">
<source table="som_sound" column="category_id"/>
<destination table="som_sound_category" column="id"/>
</foreignKey>
</table>
<table name="som_sound_category" comment="static data (&lt;b&gt;not&lt;/b&gt; project specific) generate from enum">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="name" datatype="text"/>
</table>
<table name="som_sound_type" comment="static data (&lt;b&gt;not&lt;/b&gt; project specific) generate from enum">
<column name="id" datatype="integer" isPrimaryKey="1">
<sequence start="1" increment="1"/>
</column>
<column name="name" datatype="text"/>
</table>
</tables>
<views/>
<dbServiceStructs>
<serviceStruct name="SomSound" table="som_sound"/>
<table name="som_sound"/>
</dbServiceStructs>
<topicTypes>
<topicType name="ControlSoundRequest">
<column name="egcuId" idlType="long"/>
<column name="soundId" idlType="long"/>
<column name="category" idlType="SoundCategory"/>
<column name="volumePercent" idlType="long"/>
<column name="control" idlType="PlayControl"/>
</topicType>
<topicType name="GetActiveSoundsRequest">
<column name="dummy" idlType="long"/>
</topicType>
<topicType name="GetSoundsRequest">
<column name="dummy" idlType="long"/>
</topicType>
<topicType name="Sound">
<column name="id" idlType="long"/>
<column name="name" idlType="string"/>
<column name="displayName" idlType="string"/>
<column name="category" idlType="SoundCategory"/>
<column name="soundId" idlType="long"/>
<column name="duration" idlType="long" comment="[ms]"/>
<column name="isRepeatable" idlType="boolean"/>
</topicType>
<topicType name="Sounds" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="0">
<column name="sounds" idlType="sequence&lt;Sound&gt;"/>
</topicType>
<topicType name="SoundState" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="0" recordTopic="1">
<column name="id" idlType="long" isKey="1"/>
<column name="soundId" idlType="long"/>
<column name="egcuId" idlType="long"/>
<column name="category" idlType="SoundCategory"/>
<column name="sampleTime" idlType="long long"/>
<column name="inLoop" idlType="boolean"/>
</topicType>
<topicType name="StopAllSoundsRequest">
<column name="egcuId" idlType="long" comment="if egcuId=-1 stopp all Sounds on each EGCU (EffectGenerationControlUnit)"/>
</topicType>
</topicTypes>
<functionTopics>
<functionTopic name="ControlSound" requestTopicType="ControlSoundRequest" replyTopicType="Core::FunctionReply" requestTopicName="ControlSoundRequest" replyTopicName="ControlSoundReply" routeInReplay="0"/>
<functionTopic name="GetActiveSounds" requestTopicType="GetActiveSoundsRequest" replyTopicType="Core::FunctionReply" requestTopicName="GetActiveSoundsRequest" replyTopicName="GetActiveSoundsReply" routeInReplay="0"/>
<functionTopic name="GetSounds" requestTopicType="GetSoundsRequest" replyTopicType="Core::FunctionReply" requestTopicName="GetSoundsRequest" replyTopicName="GetSoundsReply" routeInReplay="0"/>
<functionTopic name="StopAllSounds" requestTopicType="StopAllSoundsRequest" replyTopicType="Core::FunctionReply" requestTopicName="StopAllSoundsRequest" replyTopicName="StopAllSoundsReply" routeInReplay="0"/>
</functionTopics>
<enumerations>
<enumeration name="PlayControl">
<attribute key="PlaySingle" value="1"/>
<attribute key="StopSound" value="2"/>
<attribute key="PlayLoop" value="3"/>
<attribute key="StopAllSounds" value="4"/>
<attribute key="GetState" value="5"/>
</enumeration>
<enumeration name="SoundCategory" table="som_sound_category">
<attribute key="Aircraft" value="1"/>
<attribute key="Battlefield" value="2"/>
<attribute key="Boat" value="3"/>
<attribute key="Explosion" value="4"/>
<attribute key="Helicopter" value="5"/>
<attribute key="MotorsAndUrbanTraffic" value="6"/>
<attribute key="Vehicle" value="7"/>
<attribute key="InsideBuilding" value="8"/>
<attribute key="Unknown" value="9"/>
</enumeration>
<enumeration name="SoundType" table="som_sound_type">
<attribute key="OneTimeSound" value="1"/>
<attribute key="OneTimeSoundNotParallel" value="2"/>
<attribute key="LoopSounds" value="3"/>
</enumeration>
</enumerations>
</service>