1
0
Fork 0

hla: Bring the object model in line with fgviewer.

This commit is contained in:
Mathias Froehlich 2012-12-16 17:46:34 +01:00
parent 7f1a8a1e96
commit c5692e4580

View file

@ -37,7 +37,7 @@
semantics="Generic object in the scene." semantics="Generic object in the scene."
sharing="PublishSubscribe"> sharing="PublishSubscribe">
<attribute name="location" <attribute name="location"
dataType="SGLocationWGS84" dataType="SGLocation"
updateType="Periodic" updateType="Periodic"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
@ -52,6 +52,14 @@
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="The angular and linear velocity of the vehicle."/> semantics="The angular and linear velocity of the vehicle."/>
<attribute name="sceneObjectName"
dataType="HLAASCIIstring"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="If the location is meant to be relative this is the hla object name of the parent object."/>
<objectClass name="FGAirVehicle" <objectClass name="FGAirVehicle"
semantics="Generic vehicle like object in the scene. Subscribe to this as a radar station." semantics="Generic vehicle like object in the scene. Subscribe to this as a radar station."
@ -65,7 +73,7 @@
order="Receive" order="Receive"
semantics="The call sign of the air vehicle."/> semantics="The call sign of the air vehicle."/>
<attribute name="transponder" <attribute name="transponder"
dataType="FGtransponderType" dataType="FGTransponderType"
updateType="Conditional" updateType="Conditional"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
@ -126,30 +134,21 @@
order="Receive" order="Receive"
semantics="The name of the view."/> semantics="The name of the view."/>
<attribute name="location" <attribute name="location"
dataType="SGLocationWGS84" dataType="SGLocation"
updateType="Conditional" updateType="Conditional"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="The relative or absolute position/orientation of the view."/> semantics="The relative or absolute position and orientation of the view."/>
<attribute name="sceneObjectName"
<objectClass name="FGStaticView" dataType="HLAASCIIstring"
semantics="A static view that is fixed in the scene." updateType="Conditional"
sharing="PublishSubscribe"> ownership="NoTransfer"
</objectClass> sharing="PublishSubscribe"
<objectClass name="FGObjectAttachedView" transportation="HLAreliable"
semantics="A view that is attached to a scene object." order="TimeStamp"
sharing="PublishSubscribe"> semantics="The hla object name of the a FGSceneObject that is referenced by this view."/>
<attribute name="referencedSceneObjectName"
dataType="HLAASCIIstring"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The hla object name of the a FGSceneObject that is referenced by this view."/>
</objectClass>
</objectClass> </objectClass>
<objectClass name="FGViewer" <objectClass name="FGViewer"
@ -166,7 +165,7 @@
<objectClass name="FGPerspectiveViewer" <objectClass name="FGPerspectiveViewer"
semantics="A perspective viewer - the usual simulation viewer." semantics="A perspective viewer - the usual simulation viewer."
sharing="PublishSubscribe"> sharing="PublishSubscribe">
<attribute name="referencedViewName" <attribute name="viewName"
dataType="HLAASCIIstring" dataType="HLAASCIIstring"
updateType="Conditional" updateType="Conditional"
ownership="NoTransfer" ownership="NoTransfer"
@ -175,7 +174,7 @@
order="TimeStamp" order="TimeStamp"
semantics="The name of the view that is viewer is attached to."/> semantics="The name of the view that is viewer is attached to."/>
<attribute name="location" <attribute name="location"
dataType="SGLocationWGS84" dataType="SGLocation"
updateType="Conditional" updateType="Conditional"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
@ -190,27 +189,40 @@
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="A zoom factor for the projections system. Leave at 1 for an immersive system."/> semantics="A zoom factor for the projections system. Leave at 1 for an immersive system."/>
<attribute name="leftEyeOffset" <attribute name="eyeTrackerName"
dataType="SGVec3f" dataType="HLAASCIIstring"
updateType="Conditional" updateType="Conditional"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="The relative position of the left eye within the projection system."/> semantics="The name of the view that is viewer is attached to."/>
<attribute name="rightEyeOffset"
dataType="SGVec3f"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The relative position of the right eye within the projection system."/>
</objectClass> </objectClass>
</objectClass> </objectClass>
<objectClass name="FGEyeTracker"
semantics="A head tracking offset that can be attached to a viewer system."
sharing="PublishSubscribe">
<attribute name="leftEyeOffset"
dataType="SGVec3f"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The relative position of the left eye within the projection system. Use for eye tracking."/>
<attribute name="rightEyeOffset"
dataType="SGVec3f"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The relative position of the right eye within the projection system. Use for eye tracking."/>
</objectClass>
<objectClass name="FGRenderer" <objectClass name="FGRenderer"
semantics="A renderer is an application that provides one or more graphics contexts." semantics="A renderer is an application that provides one or more drawables."
sharing="PublishSubscribe"> sharing="PublishSubscribe">
<attribute name="name" <attribute name="name"
dataType="HLAASCIIstring" dataType="HLAASCIIstring"
@ -220,6 +232,7 @@
transportation="HLAreliable" transportation="HLAreliable"
order="Receive" order="Receive"
semantics="The name of the renderer."/> semantics="The name of the renderer."/>
<!-- Publish the available display names and geometries somehow. -->
</objectClass> </objectClass>
<objectClass name="FGDrawable" <objectClass name="FGDrawable"
@ -277,7 +290,7 @@
order="Receive" order="Receive"
semantics="The size of the window."/> semantics="The size of the window."/>
</objectClass> </objectClass>
<objectClass name="FGVideoDrawable" <!--objectClass name="FGVideoDrawable"
semantics="An offscreen buffer encoding its pictures into a video." semantics="An offscreen buffer encoding its pictures into a video."
sharing="PublishSubscribe"> sharing="PublishSubscribe">
<attribute name="size" <attribute name="size"
@ -288,7 +301,7 @@
transportation="HLAreliable" transportation="HLAreliable"
order="Receive" order="Receive"
semantics="The size of the window."/> semantics="The size of the window."/>
</objectClass> </objectClass-->
</objectClass> </objectClass>
<objectClass name="FGCamera" <objectClass name="FGCamera"
@ -302,14 +315,6 @@
transportation="HLAreliable" transportation="HLAreliable"
order="Receive" order="Receive"
semantics="The name of the camera."/> semantics="The name of the camera."/>
<attribute name="drawable"
dataType="HLAASCIIstring"
updateType="Static"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The drawable this camera lives in."/>
<attribute name="viewer" <attribute name="viewer"
dataType="HLAASCIIstring" dataType="HLAASCIIstring"
updateType="Static" updateType="Static"
@ -318,44 +323,55 @@
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="The viewer this camera belongs to."/> semantics="The viewer this camera belongs to."/>
<attribute name="drawable"
dataType="HLAASCIIstring"
updateType="Static"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The drawable this camera lives in."/>
<attribute name="viewport"
dataType="SGVec4i"
updateType="Static"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The viewport within the drawable for this camera."/>
<attribute name="location"
dataType="SGLocation"
updateType="Periodic"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The position and orientation offset within the viewer."/>
<!-- <attribute name="unwrapMesh"/> -->
<objectClass name="FGPerspectiveCamera" <objectClass name="FGPerspectiveCamera"
semantics="Simple perspective camera. Think of it as the default camera for a flightgear window." semantics="Camera defining a perspective view."
sharing="PublishSubscribe"> sharing="PublishSubscribe">
<attribute name="fieldOfView" <attribute name="projection"
dataType="SGfloat32" dataType="SGCameraProjectionPerspective"
updateType="Conditional"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The field of view for this camera."/>
</objectClass>
<objectClass name="FGMultiviewerCamera"
semantics="Camera which is defined by a projection systems point in space."
sharing="PublishSubscribe">
<attribute name="viewport"
dataType="SGVec4i"
updateType="Static" updateType="Static"
ownership="NoTransfer" ownership="NoTransfer"
sharing="PublishSubscribe" sharing="PublishSubscribe"
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp" order="TimeStamp"
semantics="The viewport within the renderer for this camera."/> semantics="The projection of this camera."/>
<!-- <attribute name="referencePoints"/> --> </objectClass>
<!-- <attribute name="unwrapMesh"/> --> <objectClass name="FGOrthographicCamera"
semantics="Camera defining an orthographic view."
sharing="PublishSubscribe">
<attribute name="projection"
dataType="SGCameraProjectionOrthographic"
updateType="Static"
ownership="NoTransfer"
sharing="PublishSubscribe"
transportation="HLAreliable"
order="TimeStamp"
semantics="The projection of this camera."/>
</objectClass> </objectClass>
<!-- <objectClass name="FGOrthographicCamera" -->
<!-- semantics="Camera which is defined by a projection systems point in space." -->
<!-- sharing="PublishSubscribe"> -->
<!-- <attribute name="viewport" -->
<!-- dataType="SGVec4i" -->
<!-- updateType="Static" -->
<!-- ownership="NoTransfer" -->
<!-- sharing="PublishSubscribe" -->
<!-- transportation="HLAreliable" -->
<!-- order="TimeStamp" -->
<!-- semantics="The viewport within the renderer for this camera."/> -->
<!-- </objectClass> -->
</objectClass> </objectClass>
</objectClass> </objectClass>
</objects> </objects>
@ -367,6 +383,38 @@
dimensions="NA" dimensions="NA"
transportation="HLAreliable" transportation="HLAreliable"
order="TimeStamp"> order="TimeStamp">
<!-- Is sent out when a click or something happens on a scene object -->
<interactionClass name="SGSceneObjectEvent"
sharing="PublishSubscribe"
dimensions="NA"
transportation="HLAreliable"
order="Receive">
<!-- Is sent out when a click or something happens on a scene object -->
<interactionClass name="SGSceneObjectMouseEvent"
sharing="PublishSubscribe"
dimensions="NA"
transportation="HLAreliable"
order="Receive">
<parameter
name="mousePosition"
dataType="SGVec2i"/>
</interactionClass>
</interactionClass>
<!-- Is sent out when a click or something happens on a scene object -->
<interactionClass name="SGViewerEvent"
sharing="PublishSubscribe"
dimensions="NA"
transportation="HLAreliable"
order="Receive">
<interactionClass name="SGViewerMouseEvent"
sharing="PublishSubscribe"
dimensions="NA"
transportation="HLAreliable"
order="Receive">
</interactionClass>
</interactionClass>
</interactionClass> </interactionClass>
</interactions> </interactions>
@ -621,17 +669,17 @@
</enumeratedData> </enumeratedData>
<enumeratedData <enumeratedData
name="FGtransponderModeType" name="FGTransponderModeType"
representation="HLAoctet" representation="HLAoctet"
semantics="The type of the transponder echo."> semantics="The type of the transponder echo.">
<enumerator <enumerator
name="FGtransponderModeA" name="FGTransponderModeA"
values="1"/> values="1"/>
<enumerator <enumerator
name="FGtransponderModeC" name="FGTransponderModeC"
values="2"/> values="2"/>
<enumerator <enumerator
name="FGtransponderModeS" name="FGTransponderModeS"
values="3"/> values="3"/>
</enumeratedData> </enumeratedData>
@ -1177,17 +1225,11 @@
semantics="4-dimensional vector"/> semantics="4-dimensional vector"/>
<arrayData <arrayData
name="SGPositionWGS84" name="SGOrientation"
dataType="SGfloat64"
cardinality="3"
encoding="HLAfixedArray"
semantics="WGS84 cartesian coordinates"/>
<arrayData
name="SGOrientationWGS84"
dataType="SGfloat32" dataType="SGfloat32"
cardinality="3" cardinality="3"
encoding="HLAfixedArray" encoding="HLAfixedArray"
semantics="WGS84 orientation represented as vector part of the quaternion"/> semantics="Orientation represented as vector part of the quaternion."/>
<arrayData <arrayData
name="SGmultiplayerPropertyArray" name="SGmultiplayerPropertyArray"
@ -1226,17 +1268,17 @@
</fixedRecordData> </fixedRecordData>
<fixedRecordData <fixedRecordData
name="SGLocationWGS84" name="SGLocation"
encoding="HLAfixedRecord" encoding="HLAfixedRecord"
semantics="Location of something in the WGS84 coordinate system"> semantics="Cartesian location consisting of a position and orientation.">
<field <field
name="position" name="position"
dataType="SGPositionWGS84" dataType="SGVec3d"
semantics="The cartesian position in the wgs84 system"/> semantics="The cartesian position."/>
<field <field
name="orientation" name="orientation"
dataType="SGOrientationWGS84" dataType="SGOrientation"
semantics="The cartesian orientation in the wgs84 system"/> semantics="The cartesian orientation"/>
</fixedRecordData> </fixedRecordData>
<fixedRecordData <fixedRecordData
@ -1253,30 +1295,109 @@
semantics="Linear velocity vector in body coordinates"/> semantics="Linear velocity vector in body coordinates"/>
</fixedRecordData> </fixedRecordData>
<fixedRecordData
name="FGTransponderModeA"
encoding="HLAfixedRecord"
semantics="Mode A transponder response.">
<field
name="squawk"
dataType="SGint16"
semantics="The squawk value."/>
</fixedRecordData>
<fixedRecordData
name="FGTransponderModeC"
encoding="HLAfixedRecord"
semantics="Mode C transponder response.">
<field
name="squawk"
dataType="SGint16"
semantics="The squawk value."/>
<!-- fields are missing, extend these -->
</fixedRecordData>
<fixedRecordData
name="FGTransponderModeS"
encoding="HLAfixedRecord"
semantics="Mode S transponder response.">
<field
name="squawk"
dataType="SGint16"
semantics="The squawk value."/>
<!-- fields are missing, extend these -->
</fixedRecordData>
<fixedRecordData
name="SGCameraProjectionPerspective"
encoding="HLAfixedRecord"
semantics="Perspective camera projection definition.">
<field
name="left"
dataType="SGfloat64"
semantics="Left border of the projection space."/>
<field
name="right"
dataType="SGfloat64"
semantics="Right border of the projection space."/>
<field
name="bottom"
dataType="SGfloat64"
semantics="Bottom border of the projection space."/>
<field
name="top"
dataType="SGfloat64"
semantics="Top border of the projection space."/>
<field
name="distance"
dataType="SGfloat64"
semantics="The reference distance the above values are meant for. Similar to the near plane but does not impact clipping."/>
</fixedRecordData>
<fixedRecordData
name="SGCameraProjectionOrthographic"
encoding="HLAfixedRecord"
semantics="Orthographic camera projection definition.">
<field
name="left"
dataType="SGfloat64"
semantics="Left border of the projection space."/>
<field
name="right"
dataType="SGfloat64"
semantics="Right border of the projection space."/>
<field
name="bottom"
dataType="SGfloat64"
semantics="Bottom border of the projection space."/>
<field
name="top"
dataType="SGfloat64"
semantics="Top border of the projection space."/>
</fixedRecordData>
</fixedRecordDataTypes> </fixedRecordDataTypes>
<variantRecordDataTypes> <variantRecordDataTypes>
<variantRecordData <variantRecordData
encoding="HLAvariantRecord" encoding="HLAvariantRecord"
dataType="FGtransponderModeType" dataType="FGTransponderModeType"
semantics="The content of an aircraft typical transponder." semantics="The content of an aircraft typical transponder."
discriminant="transponderModeType" discriminant="transponderModeType"
name="FGtransponderType"> name="FGTransponderType">
<alternative <alternative
dataType="UnsignedShort" dataType="FGTransponderModeA"
semantics="Mode A transponder value - just the squawk" semantics="Mode A transponder value."
enumerator="FGtransponderModeA" enumerator="FGTransponderModeA"
name="a"/> name="a"/>
<!-- <alternative --> <alternative
<!-- dataType="" --> dataType="FGTransponderModeC"
<!-- semantics="Mode C transponder value" --> semantics="Mode C transponder value."
<!-- enumerator="FGtransponderModeC" --> enumerator="FGTransponderModeC"
<!-- name="c"/> --> name="c"/>
<!-- <alternative --> <alternative
<!-- dataType="" --> dataType="FGTransponderModeS"
<!-- semantics="Mode S transponder value" --> semantics="Mode S transponder value."
<!-- enumerator="FGtransponderModeS" --> enumerator="FGTransponderModeS"
<!-- name="c"/> --> name="s"/>
</variantRecordData> </variantRecordData>
<variantRecordData <variantRecordData