Home
Categories
Dictionary
Download
Project Details
Changes Log
Who We Are
FAQ
License

Parameter structure meta-definition



Parameter Structures defined in the meta-definition specify the ParameterStructure blocks used in Client => Server runtime communication.

Examples

Simple example

A simple ParameterStructure block Definition, specifying the A661_ParameterStructure_1Byte message structure as specified in the standard:
 <paramStructBlock type="byte_1" name="A661_ParameterStructure_1Byte">
   <pad size="8bit"/>
   <blockData size="8bit"/>
 </paramStructBlock>
Here (as specified in the standard), the ParameterStructure block contains:
  • One Padding of 8 bits
  • One parameter of a 8bit size (can be a bool, a char, an uchar)

Example for a String

Another ParameterStructure block Definition, specifying the A661_ParameterStructure_String message structure as specified in the standard:
 <paramStructBlock id="string" name="A661_ParameterStructure_String">
   <blockMetaData size="16bit" type="length"/>
   <blockData size="32bitArray" type="string cplxString" />
 </paramStructBlock>
Here the ParameterStructure block contains:
  • A 16 bits field containing the length of the String (including the last \0 character)
  • The parameter, whose size is an array of 32bit. To specify that we only want to have a String parameter, the type attribute specifies that the type of the data can only be a string or cplxString

Example for an array

Another ParameterStructure block Definition, specifying the A661_ParameterStructure_1ByteArray message structure as specified in the standard:
 <paramStructBlock id="enableArray" name="A661_ParameterStructure_1ByteArray" supp="4+">
   <blockMetaData size="16bit" type="size"/>
   <blockCellArray>
     <blockMetaData size="16bit" type="index"/>
     <blockData size="8bit"/>
     <pad size="8bit"/>
   </blockCellArray>
 </paramStructBlock>
Here the ParameterStructure block contains:
  • A 16 bits field containing the size of the array
  • An array of block cells, each cell containing:
    • A 16 bits field containing the index of the cell
    • The 8 bits data, which is the value of the array of data at the specified index
    • A 8 bits padding

A more complex example

Another ParameterStructure block Definition, specifying the A661_ParameterStructure_EntryArray message structure as specified in the standard:
 <paramStructBlock id="entryArray" name="A661_ParameterStructure_EntryArray" >
   <blockMetaData size="16bit" type="size"/>
   <blockCellArray>
     <blockMetaData size="16bit" type="length" ref="string" />
     <blockMetaData size="16bit" type="index"/>
     <blockData size="8bit" name="enable" type="boolArray" />
     <pad size="8bit"/>
     <blockData size="32bitArray" name="string" type="stringArray" />
   </blockCellArray>
 </paramStructBlock>
Here the ParameterStructure block contains:
  • A 16bit field containing the size of the array
  • An array of block cells, each cell containing:
    • A 16bit field containing the length of the String. You can remark that we use a ref attribute for this field, to specify which parameter is concerned by this MetaData
    • A 16bit field containing the index of the cell. There is no need to specify which parameter is concerned by this index MetaData, because of course all arrays elements will use the same index in one block cell
    • The 8bit data, which is the value of the array of data at the specified index. The data must be a boolArray
    • A 8bit padding
    • The String data, which is the value of the array of String at the specified index. The data must be a stringArray

Opaque ParamStructures

Another ParameterStructure block Definition, specifying the A661_ParameterStructure_BufferOfItems message structure:
 <paramStructBlock id="bufferOfParam" name="A661_ParameterStructure_BufferOfItems" type="opaque" />
In this case we specify that the encoding or decoding of the ParameterStructure is hard-coded for the type: the definition of the content for the ParameterStructure block is opaque.

Void ParamStructures

Another ParameterStructure block Definition, specifying the BroadcastData message structure:
 <paramStructBlock id="void" name="BroadcastData" type="void" />
In this case we specify that the type of the ParameterStructure is undefined at creation, it will be resolved at runtime. Contrary to the "opaque" type, the message has one of the specified structures at runtime.

See also


Categories: arinc661 | dev | extensions | meta

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