The SuperLayer Windowing XML configuration file specifies the cockpit configuration for a SuperLayer Window Manager.
See the Super Layer configuration Schema
Windows Configuration Definition
A Windows Configuration contains the following elements:
- Constants used in the configuration file
- Layouts: A layout defines a particular windows arrangement for this display. Several layouts can be defined for one particular display, but of course only one is active at any time (it is possible to set the default layout explicitly)
- Also Definition Files references define where to look for the Layers used in the cockpit definition
- Additionally, constants can be defined for specifying reusable values (mainly positions and size values which have to be identical for several elements)
The configuration can be defined in two different ways:
- By " inlining" each element in its parent. The specification is simple, but the downside is that each element must be defined as many times is is used. For example, if the same Layout is used in two different displays, one Layout will have to be defined for each display
- By defining types for each element and instanciating these types when they are used. The specification can be initially more complex to define, but you don't have to define the same element for each time you use it
Inlined cockpit specification
In this definition, an element is completely defined "in−place".
The specification is simple, but the downside is that each element must be defined as many times is is used. For example, if the same Layout is used in two different displays, one Layout will have to be defined for each display. For example, if two Windows have the same definition, their content will have to be defined twice.
<windowDef name="Window" width="10000" height="10000" x="0" y="0" />
<configs border="255,255,255" borderWidth="3">
<display id="1" name="simple" width="10000" height="10000" defaultLayout="layout1">
<window name="Window1" selector="all">
<layer layerID="2" />
See the complete inlined cockpit specification example
Typed cockpit specification
The specification is more complex because you have to define types and their instances, but if the same kind of element is used twice, you only have to instanciate the type twice.
<geom name="full" width="width" height="height" transparent="false"/>
<windowType name="WindowType1" geometry="full" selector="all">
<layer name="Layer1" layerID="2"/>
<layoutType name="layout1" >
<windowTypeRef name="Window1" type="WindowType1" x="0" y="0"/>
<displayType name="du" width="width" height="height" defaultLayout="layout1">
<configs border="0,0,0" borderWidth="3">
<display id="1" name="display">
See a typed cockpit specification example
for one display, and another typed cockpit specification example
for two displays based on the same types specifications.
- They are useful to define only once values that must be reused
- SuperLayer: The SuperLayer concept is a generalized method to define and manage Layers and Windows in a Cockpit
- Window Management: The ARINC 661 standard specifies the content of Layers, but does not specify how to manage Layers in Windows and Displays
- SuperLayer Window Manager: A SuperLayer Window Manager is a J661 Window Manager which implements the ARINC 661 notion of the SuperLayer