174 lines
10 KiB
XML
Executable File
174 lines
10 KiB
XML
Executable File
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
<service namespace="CentralEffectSimulation" abbreviation="CES" procNames="CentralEffectSimulation" exerciseDependency="Exercise" groups="ExerciseExecution">
|
|
<rcs>
|
|
<Id Id="$Id$"/>
|
|
<HeadURL HeadURL="$HeadURL$"/>
|
|
<Author Author="$Author$"/>
|
|
</rcs>
|
|
<operatorRights offset="7">
|
|
<guiPlugin name="ParticipantMove" offset="1">
|
|
<operatorRightGroup name="Participant Movement Simulation" description="Set Participant Position">
|
|
<operatorRight right="ParticipantMove" value="1" description="Set Participant Position"/>
|
|
</operatorRightGroup>
|
|
<operatorRightGroup name="UAS Control" description="Control UAS">
|
|
<operatorRight right="UasControl" value="1"/>
|
|
</operatorRightGroup>
|
|
</guiPlugin>
|
|
</operatorRights>
|
|
<tables>
|
|
<table name="ces_ownership">
|
|
<column name="id" datatype="integer" isPrimaryKey="1">
|
|
<sequence start="1" increment="1"/>
|
|
</column>
|
|
<column name="building_id" datatype="integer"/>
|
|
<column name="floor_id" datatype="integer"/>
|
|
<column name="party_id" datatype="integer"/>
|
|
<constraint name="UQ_ces_ownership_id" type="unique">
|
|
<column name="id"/>
|
|
</constraint>
|
|
<constraint name="IDX_ces_ownership_building_id" type="index">
|
|
<column name="building_id"/>
|
|
</constraint>
|
|
</table>
|
|
<table name="ces_simulated_movement">
|
|
<column name="id" datatype="integer" isPrimaryKey="1">
|
|
<sequence start="1" increment="1"/>
|
|
</column>
|
|
<column name="name" datatype="text"/>
|
|
<column name="start_time" datatype="bigint"/>
|
|
<column name="participant_id" datatype="integer"/>
|
|
<column name="repeat" datatype="boolean"/>
|
|
<column name="nextpoint" datatype="integer"/>
|
|
</table>
|
|
<table name="ces_simulated_movement_segment">
|
|
<column name="id" datatype="integer" isPrimaryKey="1">
|
|
<sequence start="1" increment="1"/>
|
|
</column>
|
|
<column name="simulated_movement_id" datatype="integer" isForeignKey="1"/>
|
|
<column name="position_index" datatype="integer"/>
|
|
<column name="position" datatype="point_2d"/>
|
|
<column name="speed" datatype="real" comment="speed in m/s"/>
|
|
<column name="delay" datatype="real" comment="[sec]"/>
|
|
<column name="name" datatype="text"/>
|
|
<constraint name="IDX_ces_simulated_movement_segment_movement_id" type="index">
|
|
<column name="simulated_movement_id"/>
|
|
</constraint>
|
|
<foreignKey name="FK_ces_simulated_movement_segment_ces_simulated_movement">
|
|
<source table="ces_simulated_movement_segment" column="simulated_movement_id"/>
|
|
<destination table="ces_simulated_movement" column="id"/>
|
|
</foreignKey>
|
|
</table>
|
|
</tables>
|
|
<views/>
|
|
<dbServiceStructs>
|
|
<serviceStruct name="CesOwnership" table="ces_ownership"/>
|
|
<serviceStruct name="CesSimulatedMovement" table="ces_simulated_movement"/>
|
|
<serviceStruct name="CesSimulatedMovementSegment" table="ces_simulated_movement_segment"/>
|
|
<table name="ces_ownership"/>
|
|
<table name="ces_simulated_movement"/>
|
|
<table name="ces_simulated_movement_segment"/>
|
|
</dbServiceStructs>
|
|
<topicTypes>
|
|
<topicType name="DetonationLocationReply" baseValueType="Core::FunctionReply">
|
|
<column name="index" idlType="long" comment="Context AES: index of a single explosion in the cluster"/>
|
|
<column name="buildingId" idlType="long" comment="intersection trajectory with building"/>
|
|
<column name="position" idlType="Core::GeoPosition"/>
|
|
</topicType>
|
|
<topicType name="DetonationLocationRequest">
|
|
<column name="id" idlType="long" isKey="1" comment="Context AES: aesItemId"/>
|
|
<column name="index" idlType="long" comment="Context AES: index of a single explosion in the cluster"/>
|
|
<column name="chargeTypeId" idlType="long"/>
|
|
<column name="igniterTypeId" idlType="long"/>
|
|
<column name="igniterFunctionId" idlType="long"/>
|
|
<column name="trajectory" idlType="sequence<Core::GeoPosition>"/>
|
|
</topicType>
|
|
<topicType name="GetLineBuildingIntersectionReply" baseValueType="Core::FunctionReply">
|
|
<column name="intersection" idlType="Core::GeoPosition"/>
|
|
<column name="requestId" idlType="string" comment="to be used to assign request and reply"/>
|
|
</topicType>
|
|
<topicType name="GetLineBuildingIntersectionRequest">
|
|
<column name="line" idlType="sequence<Core::GeoPosition>" comment="most of the times, two coordinates: start, end. But to be prepared for future requirements, use a sequence"/>
|
|
<column name="requestId" idlType="string" comment="to be used to assign request and reply"/>
|
|
</topicType>
|
|
<topicType name="GetLineBuildingIntersectsReply" baseValueType="Core::FunctionReply">
|
|
<column name="intersects" idlType="boolean"/>
|
|
<column name="requestId" idlType="string" comment="to be used to assign request and reply"/>
|
|
</topicType>
|
|
<topicType name="GetLineBuildingIntersectsRequest">
|
|
<column name="line" idlType="sequence<Core::GeoPosition>" comment="most of the times, two coordinates: start, end. But to be prepared for future requirements, use a sequence"/>
|
|
<column name="requestId" idlType="string" comment="to be used to assign request and reply"/>
|
|
</topicType>
|
|
<topicType name="ParticipantEvent" isDataObject="1" autosubscribe="0" routeToClient="1" routeToServer="0" routeInReplay="0">
|
|
<column name="aesItemId" idlType="long"/>
|
|
<column name="eventTypeId" idlType="ProjectDataManagement::EventType"/>
|
|
<column name="participantId" idlType="long"/>
|
|
<column name="eventTime" idlType="long long"/>
|
|
<column name="friendlyFire" idlType="boolean"/>
|
|
<column name="vulnerability" idlType="long"/>
|
|
<column name="id" idlType="long" isKey="1"/>
|
|
<column name="equipmentNumber" idlType="long"/>
|
|
<column name="partyId" idlType="long"/>
|
|
<column name="position" idlType="Core::GeoPosition"/>
|
|
<column name="aesName" idlType="string"/>
|
|
</topicType>
|
|
<topicType name="BuildingOwnership" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="0" recordTopic="1">
|
|
<column name="buildingId" idlType="long" isKey="1"/>
|
|
<column name="sampleTime" idlType="long long"/>
|
|
<column name="ownerships" idlType="sequence<Ownership>"/>
|
|
</topicType>
|
|
<topicType name="Ownership">
|
|
<column name="floorId" idlType="long"/>
|
|
<column name="partyId" idlType="long"/>
|
|
</topicType>
|
|
<topicType name="SetOwnershipRequest">
|
|
<column name="buildingId" idlType="long"/>
|
|
<column name="partyId" idlType="long"/>
|
|
</topicType>
|
|
<topicType name="SimulatedMovement" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="0">
|
|
<column name="id" idlType="long" isKey="1"/>
|
|
<column name="name" idlType="string"/>
|
|
<column name="startTime" idlType="long long"/>
|
|
<column name="participantId" idlType="long"/>
|
|
<column name="segments" idlType="sequence<SimulatedMovementSegment>"/>
|
|
<column name="repeat" idlType="boolean"/>
|
|
<column name="nextPoint" idlType="long"/>
|
|
<column name="jumpToStart" idlType="boolean"/>
|
|
</topicType>
|
|
<topicType name="SimulatedMovementRemoveByParticipantId">
|
|
<column name="participantId" idlType="long"/>
|
|
</topicType>
|
|
<topicType name="SimulatedMovementSegment">
|
|
<column name="position" idlType="Core::GeoPosition2D"/>
|
|
<column name="delay" idlType="double"/>
|
|
<column name="speed" idlType="double" comment="[m/s]"/>
|
|
<column name="name" idlType="string"/>
|
|
</topicType>
|
|
</topicTypes>
|
|
<functionTopics>
|
|
<functionTopic name="DetonationLocation" requestTopicType="DetonationLocationRequest" replyTopicType="DetonationLocationReply" requestTopicName="DetonationLocationRequest" replyTopicName="DetonationLocationReply" routeInReplay="0"/>
|
|
<functionTopic name="GetLineBuildingIntersection" requestTopicType="GetLineBuildingIntersectionRequest" replyTopicType="GetLineBuildingIntersectionReply" requestTopicName="GetLineBuildingIntersectionRequest" replyTopicName="GetLineBuildingIntersectionReply" routeInReplay="0"/>
|
|
<functionTopic name="GetLineBuildingIntersects" requestTopicType="GetLineBuildingIntersectsRequest" replyTopicType="GetLineBuildingIntersectsReply" requestTopicName="GetLineBuildingIntersectsRequest" replyTopicName="GetLineBuildingIntersectsReply" routeInReplay="0"/>
|
|
<functionTopic name="SetOwnership" requestTopicType="SetOwnershipRequest" replyTopicType="Core::FunctionReply" requestTopicName="SetOwnershipRequest" replyTopicName="SetOwnershipReply" routeInReplay="0"/>
|
|
<functionTopic name="SimulatedMovementModify" requestTopicType="SimulatedMovement" replyTopicType="Core::FunctionReply" requestTopicName="SimulatedMovementModifyRequest" replyTopicName="SimulatedMovementModifyReply" routeInReplay="0"/>
|
|
<functionTopic name="SimulatedMovementRemove" requestTopicType="Core::RemoveElementRequest" replyTopicType="Core::FunctionReply" requestTopicName="SimulatedMovementRemoveRequest" replyTopicName="SimulatedMovementRemoveReply" routeInReplay="0"/>
|
|
<functionTopic name="SimulatedMovementRemoveByParticipantId" requestTopicType="SimulatedMovementRemoveByParticipantId" replyTopicType="Core::FunctionReply" requestTopicName="SimulatedMovementRemoveByParticipantIdRequest" replyTopicName="SimulatedMovementRemoveByParticipantIdReply" routeInReplay="0"/>
|
|
</functionTopics>
|
|
<enumerations>
|
|
<enumeration name="dummy">
|
|
<attribute key="CombatReady" value="0"/>
|
|
<attribute key="LightDamage" value="1"/>
|
|
<attribute key="MediumDamage" value="2"/>
|
|
<attribute key="HeavyDamage" value="3"/>
|
|
<attribute key="MobilityKill" value="4"/>
|
|
<attribute key="VisibleMobilityKill" value="5"/>
|
|
<attribute key="WeaponSystemDamage" value="6"/>
|
|
<attribute key="VisibleWeaponSystemDamage" value="7"/>
|
|
<attribute key="CatastrophicKill" value="8"/>
|
|
<attribute key="TemporarySeverance" value="9"/>
|
|
<attribute key="NearMiss" value="10"/>
|
|
<attribute key="HitWithNoEffect" value="11"/>
|
|
<attribute key="NotReady" value="99"/>
|
|
</enumeration>
|
|
</enumerations>
|
|
</service>
|