Home
Categories
Dictionary
Glossary
Download
Project Details
Changes Log
What Links Here
FAQ
License

Continuous Datas and types



Numeric datas, structure fields, or union members can be specified as continuous or not continous. Setting a numeric data as not continuous specifies that even as this data is numeric, the possible values are discrete (as for enumerations)[1]
Numeric datas or types are int, long, short, byte, float, or double
.

Note that explicitly setting a data, structure field, or union member as continous or not continuous is only valid for int, short, long, or byte elements which are not enumerations

The continuous datas and types declarations are just declarative and are not used by the framework. However, it can be used by modules. For example, the scenario module does not perform any interpolation on continuous datas.

Inheritance

A data, structure field, or union member inherits its continuous attribute from its type. for example, here the aircraftID type is not continous, and all datas, fields, and union members which use this type which not be continuous by default:
      <types>
         <simpleType name="aircraftID" baseType="int" continuous="false"/>
      </types>
However it is possible to override the value of this attribute. For example:
      <services>
         <publish name="aircraft" >
            <data name="mySpecialID" type="aircraftID" continuous="true" />
            <data name="aircraftLongitude" type="float" />
            <data name="aircraftAltitude" type="float" />
         </publish>
      </services>

Setting the continuous attribute

For Datas

In the following example, the "aircraftID" is an int data but its values are not continuous (they correspond to an aircraft ID):
      <services>
         <publish name="aircraft" >
            <data name="aircraftID" type="int" continuous="false" />
            <data name="aircraftLongitude" type="float" />
            <data name="aircraftAltitude" type="float" />
         </publish>
      </services>

For structure fields

In the following example, the "aircraftID" field is an int field but its values are not continuous (they correspond to an aircraft ID):
      <types>
         <simpleType name="int" baseType="int" />
         <simpleType name="float" baseType="float" />
         <structType name="aircraft">
            <field name="aircraftID" type="int" continuous="false" />
            <field name="aircraftLongitude" type="float" />
            <field name="aircraftLatitude" type="float" />
         </structType>
      </types>

For union members

In the following example, the "aircraftID" member is an int member but its values are not continuous (they correspond to an aircraft ID):
      <types>
         <simpleType name="int" baseType="int" />
         <simpleType name="float" baseType="float" />
         <structType name="position">
            <field name="aircraftLongitude" type="float" />
            <field name="aircraftLatitude" type="float" />
         </structType>
      </types>
         <unionType name="myUnion" variant="int" >
            <member name="aircraftID" type="int" continuous="false" />
            <member name="aircraftPosition" type="position" />
         </structType>
      </types>

Notes

  1. ^ Numeric datas or types are int, long, short, byte, float, or double

See also


Categories: concepts

Copyright 2017-2020 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v3 licence