The I_AppDesignCenterEditor Application Design Center supports you in creating an Adaptive Application model that can be validated and generated. The Application Design Center provides a convenient workflow for setting up a project and building an Adaptive Application model based on a minimum set of information. This enables quickly building Adaptive Application design and deployment models, e.g., as a starting point, for qualification, or for test scenarios.

notice

For a general description of the workflow with the Application Design Center, refer to the sub-page Workflow.

For a practical instruction, refer to the Using the Application Design Center cheat sheet which guides you through the basic workflow utilizing an practical example.

Open Application Design Center

<CTRL> + <SHIFT> + <D>, <A>

Open Editor

To open the Application Design Center, expand your DaVinci Adaptive project in the DaVinci Project Explorer and double click on I_DaVinciDeveloperAdaptive Open Project Dashboard. The Project Frame opens showing the Project Home. You can then open the Application Design Center as follows:

The Application Design Center opens in a new tab of the Project Frame.

Functionality

The Application Design Center consists of the following sub-editors:

You can collapse or expand the sub-editor pane on the left using the I_Arrow_LeftI_Arrow_Leftor I_Arrow_RightI_Arrow_Righticon on the top right of the sub-editor pane.

For details on each sub-editor, refer to the sections below.

I_DataType Data Types

To open the Data Types sub-editor, select I_DataType Data Types in the left pane.

The Data Types sub-editor is an implementation of the Data Type Editor I_EditorDatatype, refer to its help section for more information.

I_Services Service Interfaces

To open the Service Interfaces sub-editor, select I_ServicesService Interfaces in the left pane.

The Service Interfaces sub-editor is an implementation of the I_EditorServiceDeployment Service Editor 's handling of the Service Interfaces, i.e., not including handling of Service Deployments or Instances. Refer to its help section for more information.

I_Executable Executables

To open the Executables sub-editor, select I_Executable Executables in the left pane.

The Executables sub-editor is an implementation of the Executable EditorI_EditorExecutables, refer to its help section for more information.

I_ARXMLBuilder Model Builder

With the Model Builder, you can generate Adaptive Deployment models that are based on the Adaptive Application definitions.

To open the Model Builder sub-editor, select I_ARXMLBuilder Model Builder in the left pane.

The Model Builder sub-editor provides the following functionalities:

Model Builder Action Area:

As soon as all required settings are specified, click the [Build Model] button to build the Adaptive Application models.

General Settings:

Specify the following general settings:

  • Root Package: Define the root package for new elements to be created.
  • ARXML File: Define the ARXML file for new elements to be created.
  • Generate for SOME/IP deployment: Activate this check box if deployment for service communication shall be done using SOME/IP. Note that the generation for SOME/IP and IPC deployment are mutually exclusive.
  • Generate for IPC deployment: Activate this check box if deployment for service communication shall be done using IPC. Note that the generation for IPC and SOME/IP deployment are mutually exclusive.
  • Generate Stubs: Activate this check box if design and deployment model elements shall be generated for a test stub process that communicates with the application.

Included Executables:

On the Included Executables tab, the Executables to be part of your Adaptive Application can be defined. This tab provides the following functionalities:

  • I_Add Add Executable: Click this icon to open the Select Executable wizard. In the wizard, select the Executable to be added to your configuration.
  • I_Delete Remove Executable: Click this icon to remove a selected Executable from your configuration.

Port Connections:

On the Port Connections tab, the Ports of your Adaptive Application can be managed. The tables Service Consumpl ers and Service Provider list all Executables that are configured on the tab Adaptive Application. The table Port Connections displays all configured connections between Required and Provided Ports.

The Port Connections tab provides the following functionalities:

  • I_ExpandAll Expand All: Expands the trees of the Service Consumers or Service Providers tables to show the Ports contained in the Executables.
  • I_Collapseall Collapse All: Collapses the trees of the Service Consumers or Service Providers tables.
  • I_Port_CreateConnection Create Connection: To create a Port Connection, expand the Executables in the Service Consumer and Service Provider tables that contain the Ports to be connected. Select a Required Port in the table Service Consumer and a Provided Port in the table Service Provider and click this icon. The Port Connection has been created and has been added to the Port Connections table.
  • I_Delete Delete Connection: Click this icon to delete the selected Port Connection.

Machine Network Properties:

On the Machine Network Properties tab, the properties of the Machine network can be defined. Double-click on a property value to change it.

Machine Properties:

On the Machine Properties tab, the properties of the Machine can be defined. At the top of the tab, define the name of the Machine. The properties can be changed by double-clicking on a property value in the table. To restore the Machine properties to the default values, click the [Reset to Default] button.

Logging Properties:

On the Logging Properties tab, the properties related to the logging for the Adaptive Application can be defined. The logging configuration will apply to all Processes of the Adaptive Application.

The Logging Properties tab provides the following functionalities:

  • Logging level: Displays the initial log reporting level. Click the arrow to select a log level.
  • Console: Displays whether the logging information is passed to the console or not. Activate the check box to enable the logging information to be displayed in the console.
  • File: Displays whether the logging information is passed to a file or not. Activate the check box to enable the logging information to be passed to the file that is specified in the attribute File Path.
  • File Path: Displays the file path that is used for the logging information if the attribute File is enabled.
  • Application Id and Contexts for the Executable: This table displays the Executables contained in your Adaptive Application. Double-click on an Application ID or Context to change it.

Stub Configuration:

On the Stub Configuration tab, the Ports to be supported in the stub implementation can be defined. If Stubs are to be generated, activate the check box Generate Stubs above the table. In the table of the Stub Configuration tab, activate the check boxes of the Ports to be supported.

I_Projectbuilder Project Builder

With the Project Builder, you can configure and generate C++ projects that are based on the information of the referenced models and the application configuration.

To open the Project Builder sub-editor, select I_Projectbuilder Project Builder in the left pane.

The Project Builder sub-editor provides the following functionalities:

Project Builder Action Area:

As soon as all required settings are specified, click the [Build C++ Project] button to generate the C++ project.

General Settings:

Specify the following general settings:

  • C++ Project Root: Enter the path to the directory where the C++ project for the application shall be created.
  • MSRA Generation Result Root: Enter the path to the root directory where the generated source is located.
  • Platform SDK Root: Enter the path to the Platform SDK root directory.
  • Platform Runtime Root: Enter the path to the Platform Runtime root directory.
notice

For more information, please refer to Define the C++ Project Location and Basic Dependency Paths in the Workflow documentation.

C++ Project Setup:

On the C++ Project Setup tab, all parts of the C++ project can be defined and managed:

  • Project Table:
    The Project table displays the project structure that has been configured with the Application Design Center. The top-level element is an integration project containing one or more application projects that can be configured. You can modify the project structure as follows:
    • I_Add Add Integration Project:
      Select the root project in the table and click the I_Add Add Integration Project icon to create an integration project. Alternatively, use the context menu command of the root project.
      A root project contains one integration project.
    • I_Add Add Application Project:
      Select the integration project in the table and click the I_Add Add Application Project icon to create an application project. Alternatively, use the context menu command of the integration project.
      An integration project can contain one or more application projects.
    • I_Add Add Executable:
      An application project can contain one or more Executables. To add an Executable, select the application project in the table and click I_Add Add Executable. A dialog opens in which you can select from the available Executables. Activate the check box of the Executables to be added to the configuration and click [Finish]. The added Executables are shown in the Project table below the respective application project.
    • I_Delete Delete Integration/Application/Executable from Project:
      To delete an integration project, application project, or an Executable from the project, select the element to be deleted in the table and click the I_Delete Delete icon.
    • Edit Project Name
      To edit a project name, select the project, click the respective cell again, and adapt the name.
      To edit the name of an Executable, use the I_Executable Executables sub-editor.
  • Executable Properties:
    Select the Executable to be configured in the Project table. On the right side of the editor, the properties are displayed and can be edited as follows:
    • Add Available Components:
      The upper table lists available MICROSAR Adaptive components that can be linked. To link an available component, activate the check box.
    • Add Additional Components:
      In the bottom table, additional components can be added manually. Click I_Add Add Component to add a new component to the list. To edit the component name, double-click on the respective cell and adapt the name. To link the created component, activate the check box.
  • Directory Structure:
    In the Directory Structure table, all predefined folders are listed. To edit the name of a directory to be used, double-click on the respective cell in the table and adapt the name.

C++ Project Properties:

On the C++ Project Properties tab, the general and CMake properties of the C++ project to be generated can be set:

  • Project Description: Optionally enter a description of the project.
  • CMake Minimum Required Version: Enter the minimum required CMake version.
  • CMake Tool Chain File Path: Enter the path to the CMake file where architecture, compiler, and options are defined.
  • Deploy Package Root (Install Prefix): Enter the path to the location where the deployment package should be installed.
  • C Standard: Enter the version of the C standard.
  • C++ Standard: Enter the version of the C++ standard.