Difference between revisions of "Technical topic: SedsConverter"

From TASTE
Jump to: navigation, search
(Available commands)
m (Building from sources: typo fix)
Line 20: Line 20:
  
 
=== Building from sources ===
 
=== Building from sources ===
SedsConverter is built as a part of the SpaceCreator. For the SpaceCreator building instructions please consult it's [https://gitrepos.estec.esa.int/taste/spacecreator/-/blob/master/README.md README] file.
+
SedsConverter is built as a part of the SpaceCreator. For the SpaceCreator building instructions please consult its [https://gitrepos.estec.esa.int/taste/spacecreator/-/blob/master/README.md README] file.
  
 
=== Updating with SpaceCreator ===
 
=== Updating with SpaceCreator ===

Revision as of 11:04, 29 November 2021

Introduction

SedsConverter is a tool that provides EDS import/export capabilities to TASTE:

  • generation of TASTE compliant ASN.1/ACN, InterfaceView and SDL from EDS;
  • generation of EDS from TASTE InterfaceView and ASN.1.

InterfaceView XML files can be then converted to AADL with the usage of the SpaceCreator.

SedsConverter is a part of the SpaceCreator project. It can be used either from the command line interface or from the SpaceCreator GUI.

Capabilities

The following conversion directions are supported:

  • SEDS → ASN.1
  • SEDS → InterfaceView
  • SEDS → SDL
  • ASN.1 → SEDS
  • InterfaceView → SEDS

Building and updating

Building from sources

SedsConverter is built as a part of the SpaceCreator. For the SpaceCreator building instructions please consult its README file.

Updating with SpaceCreator

SedsConverter is updated as a part of the SpaceCreator. To perform an update run the following commands in the terminal:

   $ cd ~/tool-src
   $ ./install/88_spaceCreator.sh

Console interface usage

SedsConverter can be accessed through the SpaceCreator AppImage

   $ spacecreator.AppImage --sedsconverter --help

If SedsConverter was built from sources, then the console interface can be found in the build directory

   $ <build_dir>/bin/sedsconverter --help

Basic usage

Conversion requires input filename and conversion direction to be passed via options

   $ spacecreator.AppImage --in <filename> --from <input models> --to <output models>

i.e to convert a SEDS file to ASN.1 type the following command:

   $ spacecreator.AppImage --sedsconverter --in input.xml --from SEDS --to ASN.1


Models could also have dependencies. Those dependencies can be resolved in two ways: 1. User provides input files for all models that are required for the given conversion 2. SedsConverter tries to resolve dependencies using available inputs

Example: SEDS to InterfaceView conversion requires an ASN.1 model. User can either: provide ASN.1 input file to be used during the conversion

   $ spacecreator.AppImage --sedsconverter --in input.xml,input.asn --from SEDS,ASN.1 --to InterfaceView

or use SEDS input to create an intermediate ASN.1 model

   $ spacecreator.AppImage --sedsconverter --in input.xml --from SEDS --to InterfaceView


Additionally the intermediate models can be also exported using --aux option:

   $ spacecreator.AppImage --sedsconverter --in input.xml --from SEDS --to InterfaceView --aux ASN.1

Available commands

ASN.1

--acn-filepath-prefix <prefix> <prefix> to add at the beginning of the ACN output filepath
--asn1-filepath-prefix <prefix> <prefix> to add at the beginning of the ASN1 output filepath

InterfaceView

--iv-config <file> Specify config xml <file> for InterfaceView
--iv-generate-parent-functions Generate parent functions for each SEDS package

SDL

--sdl-filepath-prefix <prefix> SDL filepath <prefix>

SEDS

--seds-preprocessed-filepath Path to the intermediate file that will be created during preprocessing
--seds-schema Specify schema <file> for SEDS
--seds-ext-ref <references> Specify external <references> for SEDS, e.g. foo:bar,foo2:bar2,foo3:bar3,...
--seds-ext-ref-file <file> Specify <file> with an external references for SEDS
--skip-validation Skip validation for SEDS
--keep-intermediate-files Keep SEDS intermediate files

GUI usage