# CGI Studio Connector

# Overview

<span lang="en-us">The CGI Studio Connector is an additional tool for CGI Studio which makes it easy to connect a CGI Studio Courier application to other systems. It provides a visual editor to define the data, actions and events which are received and send by the application.</span>

<span lang="en-us">Further it provides additional tools to integrate more deeply with specific 3<sup>rd</sup> party tools and interfaces.</span>

# Connector

This is the central tool which allows the user to define the interfaces to interact with the other system.

# Welcome Screen

The welcome screen allows the user to create a new (Ctrl + N) or open an existing (Ctrl + O) CGI Connector Project.

Additionally, it also shows a list of the recently used projects to provide quick access. The exact location of the project can be seen in the tooltip of the individual projects.

It will also display a list of sample projects that can be used as references.

<div drawio-diagram="8305"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744607904.png" alt=""/></div>

---

# New Project

A new project can be created from the Welcome Screen or via the menu bar (File &gt; New Project) or via the shortcut “Ctrl + N”. This will open additional windows to help setting up the new project.

#### Template-Selection

In the Template-Selection screen the user needs to first select the location where the new project shall be stored and select which template shall be used as a starting point for the project.

A template usually contains premade application code, build scripts, tooling related files and predefined project settings.

<div drawio-diagram="8325"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744868171.png" alt=""/></div>

#### Setup

On the next screen the user can configure the most important project settings.

##### General

<table border="1" id="bkmrk-property-name-descri" style="width: 76.7857%;"><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35); width: 22.4806%;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); width: 77.5194%;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 22.4806%;">Name</td><td style="width: 77.5194%;">Name of the project.</td></tr><tr><td style="width: 22.4806%;">Description</td><td style="width: 77.5194%;">Description of the project.</td></tr></tbody></table>

##### Tools

<table border="1" id="bkmrk-property-name-descri-1" style="width: 76.7857%;"><tbody><tr><td class="align-center" style="width: 22.3608%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="width: 77.6416%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 22.3608%;">Generic</td><td style="width: 77.6416%;">Enables generic support. This will provide a plain C/C++ interface.</td></tr><tr><td style="width: 22.3608%;">MATLAB</td><td style="width: 77.6416%;">Enables support for MATLAB. This will provide additional options/setting related to MathWorks MATLAB support</td></tr></tbody></table>

##### CGI Studio

<table border="1" id="bkmrk-property-name-descri-2" style="width: 76.7857%;"><tbody><tr><td class="align-center" style="width: 22.24%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="width: 77.7624%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 22.24%;">Root Path</td><td style="width: 77.7624%;">Path to CGI Studio package. The path can be either absolute or relative to CGI Connector/Project paths.</td></tr></tbody></table>

##### Device-Platform

<table border="1" id="bkmrk-property-name-descri-3" style="width: 76.9048%;"><tbody><tr><td class="align-center" style="width: 28.3055%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="width: 71.6969%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 28.3055%;">Platform</td><td style="width: 71.6969%;">Name of the CGI Studio Platform (as found in CMake)</td></tr><tr><td style="width: 28.3055%;">Platform Configuration</td><td style="width: 71.6969%;">Name of the CGI Studio Platform configuration (as found in CMake)</td></tr></tbody></table>

##### Code Generation

<table border="1" id="bkmrk-property-name-descri-4" style="width: 76.7857%;"><tbody><tr><td class="align-center" style="width: 28.062%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="width: 71.938%; background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 28.062%;">Compiler</td><td style="width: 71.938%;">Compiler used to build code.</td></tr><tr><td style="width: 28.062%;">Architecture</td><td style="width: 71.938%;">Architecture used to build the code.</td></tr></tbody></table>

<div drawio-diagram="8326"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744868266.png" alt=""/></div>

<p class="callout info">These, and more, settings can later be changed. For more information, please refer to the <span style="color: rgb(230, 126, 35);">[“Project Settings”](https://doc316en.candera.eu/books/cgi-studio-connector/page/project-settings)</span> chapter.</p>

#### Custom Templates

It is possible to add custom templates to the CGI Connector. This can be useful to apply customizations from a project to other projects.  
To create a template, pack all needed content into a ZIP file. Make sure that it contains the CGI Connector-Project file (.cop) in the root. Then add an entry to the “Templates.xml” in “cgi\_studio\_connector/bin” where the name, description and file location needs to be specified. Note that the file location is relative to the CGI Connector binaries.

---

# Modules

<span lang="EN-US">Modules are used to group a set of interfaces which usually belong logically together. </span>

<span lang="EN-US">It is possible to add, remove and reorder them using the corresponding buttons at the top of the module list.</span>

<div drawio-diagram="6514"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724375420.png" alt=""/></div>

#### Properties

In general, these offer a few basic options. However, depending on the targeted tool, different tool-specific options might be available. For more information about tool specific options and limitation refer to the specific target tool chapter.

<div drawio-diagram="6513"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724375397.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 18.2942%;"></col><col style="width: 81.7058%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);">**<span style="color: rgb(255, 255, 255);">Property Name</span>**</td><td class="align-center" style="background-color: rgb(230, 126, 35);">**<span style="color: rgb(255, 255, 255);">Description</span>**</td></tr><tr><td>Name</td><td>Name of the module. Only characters from ‘a’-‘z’, ‘A’-Z’, ‘0’-‘9’, ‘ ‘ , ‘-‘ and ‘\_’ are allowed, though the name must start with a character.</td></tr><tr><td>UId</td><td>The UId is used to identify the module. It can be seen as the tooltip of the ‘UId’ button. When the button is clicked a new UId will be generated.</td></tr><tr><td>Type</td><td>Defines the type of module. The available options depend on the specific target tool.</td></tr></tbody></table>

---

# Interfaces

<span lang="EN-US">Interfaces define the inputs and outputs of the CGI Application. Depending on the module type either one or both types of interfaces are available. </span>

<span lang="EN-US">By selecting the corresponding tab, interfaces can be added, removed or rearranged using the buttons at the top of the interface list.</span>

<div drawio-diagram="6627"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649376.png" alt=""/></div>

---

#### General Properties

The following general properties are available for all interfaces.

<div drawio-diagram="6628"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649397.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 97.5309%; height: 175.953px;"><colgroup><col style="width: 16.3511%;"></col><col style="width: 83.6489%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Name**</td><td style="height: 46.5938px;">Name of the interface. Only characters from ‘a’-‘z’, ‘A’-Z’, ‘0’-‘9’, ‘ ‘, ‘-’ and ‘\_’ are allowed, though the name must start with a character.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**UId**</td><td style="height: 46.5938px;">The UId is used to identify the interface. It can be seen as the tooltip of the ‘UId’ button. When the button is clicked a new UId will be generated.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Type**</td><td style="height: 29.7969px;">Defines the type of interface. The available options depend on the specific target tool.</td></tr><tr style="height: 23.1719px;"><td style="height: 23.1719px;">**Data-Type**</td><td style="height: 23.1719px;">The used basic data type of the interface to transfer data. This value is automatically calculated depending on the used interface type and set properties.

For arrays the length is indicated in brackets.

</td></tr></tbody></table>

---

#### Types

The following general interface types are available.

**Input:**

<table border="1" id="bkmrk-name-scene-scene-tab" style="border-collapse: collapse; width: 64.1975%; height: 158.984px;"><colgroup><col style="width: 100%;"></col></colgroup><tbody><tr style="height: 10px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 10px;"><span style="color: rgb(255, 255, 255);">**Name**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Scene**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Scene-Table**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Data-Input**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Function Call (Action)**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Message (Action)**</td></tr></tbody></table>

**Output:**

<table border="1" id="bkmrk-name-data-input-gene" style="border-collapse: collapse; width: 64.0741%; height: 148.984px;"><colgroup><col style="width: 100%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Name**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Data-Output**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Generic Event**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Function Call (Event)**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Message (Event)**</td></tr></tbody></table>

<p class="callout info">Depending on the used module type, some interface types might not be available or special interface types might be supported. Please refer to the target tool specific section for more details.</p>

##### Scene Interface

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The Scene interface allows to control the state of a scene or group of scenes. Depending on the set value the scene/scenes will change to a different state. By default, the values have the following meaning:</span>

<table border="1" id="bkmrk-property-name-descri-1" style="border-collapse: collapse; width: 97.4074%; height: 174.375px;"><colgroup><col style="width: 16.4978%;"></col><col style="width: 83.5042%;"></col></colgroup><tbody><tr style="height: 19.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 19.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 19.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">0</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Destroyed (No data loaded)</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**1**</td><td style="height: 29.7969px;"><span lang="EN-US">Loaded (Scene data is loaded to system memory)</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**2**</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Uploaded (Scene data is uploaded to VRAM)</span></td></tr><tr style="height: 35.3906px;"><td style="height: 35.3906px;">**3**</td><td style="height: 35.3906px;">Active (Scene and related behaviors are updated)

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**4**</td><td style="height: 29.7969px;"><span lang="EN-US"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Rendering (Scene is drawing)</span></span></td></tr></tbody></table>

<p class="callout info">The actual meaning of each value is controlled by the application specific implementation.</p>

**Icon:**

<div drawio-diagram="6629"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649437.png" alt=""/></div>

**Properties:**

<div drawio-diagram="8327"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744868459.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-2" style="border-collapse: collapse; width: 97.4074%; height: 318.75px;"><colgroup><col style="width: 21.574%;"></col><col style="width: 78.428%;"></col></colgroup><tbody><tr style="height: 27.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 27.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 27.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 63.3906px;"><td style="height: 63.3906px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Single Instance</span>**</td><td style="height: 63.3906px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">When selected, only a single instance of this action will be queue. If the action is triggered again before the previous instance is executed it will overwrite the previous action in the queue instead.</span></span></td></tr><tr style="height: 63.3906px;"><td style="height: 63.3906px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Value Check</span>**</td><td style="height: 63.3906px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</span></span></td></tr><tr style="height: 164.172px;"><td style="height: 164.172px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Scenes</span>**</td><td style="height: 164.172px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Scene controlled by the interface. A scene is defined by the following expression:  
  
\[FOLDERNAME#….#\]SCENENAME  
  
Clicking on the ‘…’ button next to the field opens a dialog window which lists possible scenes from the referenced Scene Composer solution.  
  
Multiple scenes can be specified by adding or removing additional lines with the ‘+’ and ‘-‘ buttons.</span></span></td></tr></tbody></table>

##### Scene Table Interface

<span lang="EN-US">The Scene-Table signal allows to specify a collection of scenes and assigns them a certain Id. <span lang="EN-US" style="font-size: 10.5pt; font-family: 'Segoe UI',sans-serif; mso-fareast-font-family: 游ゴシック; color: #444444; background: white; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The interface value controls this Id and therefore selects the next entry to be activated. If the new entry contains a scene which was not ‘active’ before, it will be ‘activated’. Similar if the new entry is missing a scene which was ‘active’ before it will be ‘deactivated’.</span> If a scene was part of the previous set of scenes and is still part of the new set, no action will be performed. </span>

<span lang="EN-US">Additionally, “Hints” can be specified which can affect how the change between different sets happens. These are primarily used to control the transition animation.</span>

<p class="callout info"><span lang="EN-US">The actual behavior is controlled by the application specific implementation. </span></p>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6631"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649497.png" alt=""/></div>

**Properties:**

<div drawio-diagram="6632"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649516.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-3" style="border-collapse: collapse; width: 97.5309%; height: 144.578px;"><colgroup><col style="width: 21.5463%;"></col><col style="width: 78.4537%;"></col></colgroup><tbody><tr style="height: 17.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 17.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 17.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 63.3906px;"><td style="height: 63.3906px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Single Instance</span>**</td><td style="height: 63.3906px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">When selected, only a single instance of this action will be queue. If the action is triggered again before the previous instance is executed it will overwrite the previous action in the queue instead.</span></span></td></tr><tr style="height: 63.3906px;"><td style="height: 63.3906px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Value Check</span>**</td><td style="height: 63.3906px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</span></span></td></tr></tbody></table>

<div drawio-diagram="8328"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744868560.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-4" style="border-collapse: collapse; width: 97.6543%; height: 322.953px;"><colgroup><col style="width: 29.7474%;"></col><col style="width: 70.2546%;"></col></colgroup><tbody><tr style="height: 22.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 22.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 22.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">(Scenes) Entries</span>**

</td><td style="height: 46.5938px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Collection of Scenes represented by an Id. Multiple collections can be specified by adding or removing additional lines with the ‘+’ and ‘-‘ buttons.</span></span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">(Scenes) Entries ID</span>**

</td><td style="height: 29.7969px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The Id representing this set of Scenes.</span></span>

</td></tr><tr style="height: 164.172px;"><td style="height: 164.172px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">(Scenes) Entries Scenes</span>**

</td><td style="height: 164.172px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Scenes which belong to this entry. A scene is defined by the following expression:  
  
\[FOLDERNAME#….#\]SCENENAME  
  
Clicking on the ‘…’ button next to the field opens a dialog window which lists possible scenes from the referenced Scene Composer solution.  
</span></span>

<span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">  
Multiple scenes can be specified by adding or removing additional lines with the ‘+’ and ‘-‘ buttons.</span></span>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">(Scenes) Entries Activation</span>**</td><td style="height: 29.7969px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">State of the scene to be applied when scene is activated.</span></span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">(Scenes) Entries Deactivation</span>**</td><td style="height: 29.7969px;"><span lang="EN-US"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">State of the scene to be applied when scene is deactivated.</span></span></td></tr></tbody></table>

<div drawio-diagram="6634"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649594.png" alt=""/></div>

<table border="1" cellpadding="0" cellspacing="0" class="MsoTable15Grid4Accent2" id="bkmrk-property-name-descri-5" style="border-collapse: collapse; width: 788px; height: 126.797px; border-width: 1px; border-style: none;"><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px; width: 199.5px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px; width: 587.5px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 33px;"><td style="width: 199.5px; border-width: 1px; border-style: none solid solid; border-image: initial; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 33px;" valign="top" width="127">**<span lang="EN-US" style="color: black; mso-color-alt: windowtext;">(Hints) Entries</span>**

</td><td style="width: 587.5px; border-width: 1px; border-style: none solid solid none; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 33px;" valign="top" width="496"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Collection of Hints represented by an Id. Multiple collections can be specified by adding or removing additional lines with the ‘+’ and ‘-‘ buttons.</span>

</td></tr><tr style="height: 32px;"><td style="width: 199.5px; border-width: 1px; border-style: none solid solid; border-image: initial; height: 32px;" valign="top" width="127">**<span lang="EN-US">(Hints) </span><span lang="EN-US">Entries ID</span>**

</td><td style="width: 587.5px; border-width: 1px; border-style: none solid solid none; height: 32px;" valign="top" width="496"><span lang="EN-US">The Id representing this Hint.</span>

</td></tr><tr style="height: 32px;"><td style="width: 199.5px; border-width: 1px; border-style: none solid solid; border-image: initial; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 32px;" valign="top" width="127">**<span lang="EN-US" style="color: black; mso-color-alt: windowtext;">(Hints) </span><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Entries Hint</span>**

</td><td style="width: 587.5px; border-width: 1px; border-style: none solid solid none; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 32px;" valign="top" width="496"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Hint which belongs to this entry.</span>

</td></tr></tbody></table>

##### Data-Input Interface

The Data-Input interface is used to send data values from external to the CGI Studio application. Only data-items provided by Courier Data-Binding can be set as destination. For more information about Data-Binding please refer to the <span style="color: rgb(230, 126, 35);">[Courier documentation](https://doc316en.candera.eu/books/courier)</span>.

**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Icon:</span>**

<div drawio-diagram="6635"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649663.png" alt=""/></div>

**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Properties:</span>**

<div drawio-diagram="6636"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649684.png" alt=""/></div>

<table border="1" cellpadding="0" cellspacing="0" class="MsoTable15Grid4Accent2" id="bkmrk-property-name-descri-6" style="border-collapse: collapse; border-width: 1px; border-style: none; width: 97.284%; height: 101.797px;"><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px; width: 16.5187%;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px; width: 83.4813%;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 51px;"><td style="width: 16.5187%; border-width: 1px; border-style: none solid solid; border-image: initial; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 51px;" valign="top" width="127">**<span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Item</span>**

</td><td style="width: 83.4813%; border-width: 1px; border-style: none solid solid none; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; height: 51px;" valign="top" width="496"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Data-Item used as a destination for the data value transferred via this signal. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible data items defined for this application.</span>

</td></tr><tr style="height: 21px;"><td style="width: 16.5187%; border-width: 1px; border-style: none solid solid; border-image: initial; height: 21px;" valign="top" width="127">**<span lang="EN-US">Value Check</span>**

</td><td style="width: 83.4813%; border-width: 1px; border-style: none solid solid none; height: 21px;" valign="top" width="496"><span lang="EN-US">If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</span>

</td></tr></tbody></table>

##### <span lang="EN-US">Function Call (Action) Interface </span>

<span lang="EN-US">The Function-Call (Action) interface allows to trigger a user defined function. To learn how to define functions to be used in the Connector refer to the <span style="color: rgb(230, 126, 35);">[Native Functions](https://doc316en.candera.eu/books/cgi-studio-connector/chapter/native-functions)</span> chapter.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6616"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648244.png" alt=""/></div>

<span lang="EN-US"><span style="mso-no-proof: yes;"> </span></span>

**<span lang="EN-US">Properties:  
</span>**

<div drawio-diagram="6617"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648290.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-7" style="border-collapse: collapse; width: 98.0247%; height: 277.766px;"><colgroup><col style="width: 16.0156%;"></col><col style="width: 83.9844%;"></col></colgroup><tbody><tr style="height: 44.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 44.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 44.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Single Instance**</td><td style="height: 46.5938px;">When selected, only a single instance of this action will be queue. If the action is triggered again before the previous instance is executed it will overwrite the previous action in the queue instead.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Value Check**</td><td style="height: 46.5938px;">If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Name**</td><td style="height: 46.5938px;">Name of the function to execute. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible functions defined for this application.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Input Argument**</td><td style="height: 46.5938px;">When enabled, a single argument of the function can be defined as Input-Argument. The value of the argument will then depend directly on the data sent when triggering the interface.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Arguments**</td><td style="height: 46.5938px;">List of arguments for this function (excluding the Input-Argument if specified). Here the values for the arguments that will be used to execute the function are set.

Depending on the type of the argument, the \[ … \] button will be displayed next to the field. When clicking it, it will open a dialog window which lists possible objects from the referenced Scene Composer solution that can be used as a value.

</td></tr></tbody></table>

##### <span lang="EN-US">Message (Action) Interface</span>

<span lang="EN-US">The Message (Action) interface allows to trigger the sending of a Courier message. For more information about Messaging in Courier please refer to the <span style="color: rgb(230, 126, 35);">[Courier documentation](https://doc316en.candera.eu/books/courier)</span>.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6614"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648115.png" alt=""/></div>

<span lang="EN-US"><span style="mso-spacerun: yes;"> </span></span>**<span lang="EN-US">Properties:</span>**

<div drawio-diagram="6615"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648209.png" alt=""/></div>

<span lang="EN-US" style="mso-no-proof: yes;"> </span>

<table border="1" id="bkmrk-property-name-descri-8" style="border-collapse: collapse; width: 97.4074%;"><colgroup><col style="width: 22.2017%;"></col><col style="width: 77.8003%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Single Instance**</td><td>When selected, only a single instance of this action will be queue. If the action is triggered again before the previous instance is executed it will overwrite the previous action in the queue instead.</td></tr><tr><td>**Value Check**</td><td>If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr><tr><td>**Name**</td><td>Name of the message to send. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible messages defined for this application.</td></tr><tr><td>**Input Argument**</td><td>When enabled, a single argument of the message can be defined as Input-Argument. The value of the argument will then depend directly on the data sent when triggering the interface.</td></tr><tr><td>**Arguments**</td><td>List of arguments for this message (excluding the Input-Argument if specified). Here the values for the arguments that will be used to send the message are set.

Depending on the type of the argument, the \[ … \] button will be displayed next to the field. When clicking it, it will open a dialog window which lists possible objects from the referenced Scene Composer solution that can be used as a value.

</td></tr></tbody></table>

##### <span lang="EN-US">Data-Output Interface</span>

<span lang="EN-US">The Data-Output interface is used to receive data values from CGI Studio application. Only data-items provided by Courier Data-Binding can be set as source. For more information about Data-Binding please refer to the <span style="color: rgb(230, 126, 35);">[Courier documentation](https://doc316en.candera.eu/books/courier)</span>.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6618"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648527.png" alt=""/></div>

<span lang="EN-US"><span style="mso-spacerun: yes;"> </span></span>**<span lang="EN-US">Properties:</span>**

<div drawio-diagram="6622"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648763.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-9" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 16.4838%;"></col><col style="width: 83.5162%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Item**</td><td>Data-Item used as a destination for the data value transferred via this signal. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible data items defined for this application.</td></tr><tr><td>**Value Check**</td><td>If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr></tbody></table>

<span lang="EN-US" style="mso-no-proof: yes;"> </span>

##### <span lang="EN-US">Generic Event Interface</span>

<span lang="EN-US">The Generic Event interface is used to signal an event. Instead of being automatically triggered, this interface must be manually triggered from the CGI Application side. For more information on how to do this refer to the <span style="color: rgb(230, 126, 35);">[TriggerGenericEvent](https://doc316en.candera.eu/link/1210#bkmrk-triggergenericevent)</span> article.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6620"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648700.png" alt=""/></div>

<span lang="EN-US"><span style="mso-spacerun: yes;"> </span></span>**<span lang="EN-US">Properties:</span>**

<div drawio-diagram="6621"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648739.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-10" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 21.5464%;"></col><col style="width: 78.4536%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Single Instance**</td><td>When selected, only a single instance of this event will be queue. If the event is triggered again before the previous instance is executed it will overwrite the previous event in the queue instead.</td></tr><tr><td>**Value Check**</td><td>If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr><tr><td>**Output Argument**</td><td>If enabled the event will be accompanied by an output value.</td></tr><tr><td>**Type**</td><td>Data type of the value.</td></tr></tbody></table>

##### <span lang="EN-US">Function Call Interface (Event)</span>

<span lang="EN-US">The Function-Call (Event) interface will execute a native function to check if an event has been triggered. Depending on the result of the function call (return value must be true) and specified conditions, an event will be queued.</span>

<span lang="EN-US">To learn how to define functions to be used in the Connector refer to the <span style="color: rgb(230, 126, 35);">[Native Functions](https://doc316en.candera.eu/books/cgi-studio-connector/chapter/native-functions)</span> chapter.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6623"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648910.png" alt=""/></div>

**<span lang="EN-US">Properties:</span>**

<div drawio-diagram="6624"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724648968.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-11" style="border-collapse: collapse; width: 97.4074%; height: 331.953px;"><colgroup><col style="width: 21.7013%;"></col><col style="width: 78.3007%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Single Instance**</td><td style="height: 46.5938px;">When selected, only a single instance of this event will be queue. If the event is triggered again before the previous instance is executed it will overwrite the previous event in the queue instead.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Value Check**</td><td style="height: 46.5938px;">If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Name**</td><td style="height: 46.5938px;">Name of the function which triggers the event. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible messages defined for this application.</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Output Argument**</td><td style="height: 46.5938px;">If enabled, the event will be accompanied by an output value. This value can be selected from the available members of the related message.</td></tr><tr style="height: 26.3906px;"><td style="height: 26.3906px;">**Conditions**</td><td style="height: 26.3906px;">Conditions allow to specify additional conditions which the function must fulfill before the event is triggered. If multiple conditions are set, all <span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">conditions must be fulfilled. Conditions can be added and removed with the ‘+’ and ‘-‘ buttons. </span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Argument**</td><td style="height: 29.7969px;">Name of the argument of the function this condition is applied to</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Operator**</td><td style="height: 29.7969px;">Operator used to check the condition</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Value**</td><td style="height: 29.7969px;">Value of the condition.

Depending on the type of the argument, the \[ … \] button will be displayed next to the field. When clicking it, it will open a dialog window which lists possible objects from the referenced Scene Composer solution that can be used as a value.

</td></tr></tbody></table>

<span lang="EN-US" style="mso-no-proof: yes;"> </span>

##### <span lang="EN-US">Message Interface (Event)</span>

<span lang="EN-US">The Message (Event) interface allows to react to incoming Courier messages. If a matching message is received and all conditions are fulfilled an event will be queued.</span>

<span lang="EN-US">For more information about Messaging in Courier please refer to the <span style="color: rgb(230, 126, 35);">[Courier documentation](https://doc316en.candera.eu/books/courier)</span>.</span>

**<span lang="EN-US">Icon:</span>**

<div drawio-diagram="6625"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649194.png" alt=""/></div>

<span lang="EN-US"><span style="mso-spacerun: yes;"> </span></span>**<span lang="EN-US">Properties:</span>**

<div drawio-diagram="6626"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-08/drawing-7-1724649226.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-12" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 21.646%;"></col><col style="width: 78.356%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Single Instance**</td><td>When selected, only a single instance of this event will be queue. If the event is triggered again before the previous instance is executed it will overwrite the previous event in the queue instead.</td></tr><tr><td>**Value Check**</td><td>If enabled, the sent value will be compared to the previous value and processing will be skipped if it has not changed. This can improve performance if the sent value is often the same/different.</td></tr><tr><td>**Name**</td><td>Name of the message which triggers the event. Clicking on the ‘…’ button next to the field opens a dialog window which lists all possible messages defined for this application.</td></tr><tr><td>**Output Argument**</td><td>If enabled, the event will be accompanied by an output value. This value can be selected from the available members of the related message.</td></tr><tr><td>**Conditions**</td><td>Conditions allow to specify additional conditions which the message must fulfill before the event is triggered. If multiple conditions are set, all conditions must be fulfilled. Conditions can be added and removed with the ‘+’ and ‘-‘ buttons.</td></tr><tr><td>**Argument**</td><td>Name of the member of the message this condition is applied to</td></tr><tr><td>**Operator**</td><td>Operator used to check the condition</td></tr><tr><td>**Value**</td><td>Value of the condition.

Depending on the type of the argument, the \[ … \] button will be displayed next to the field. When clicking it, it will open a dialog window which lists possible objects from the referenced Scene Composer solution that can be used as a value.

</td></tr></tbody></table>

<span lang="EN-US" style="mso-no-proof: yes;"> </span>

---

# Edit Menu

It is possible to quickly edit external resources with via the edit menu or the toolbar.

<div drawio-diagram="7210"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730275143.png" alt=""/></div>

<div drawio-diagram="7211"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730275169.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-13" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 29.8982%;"></col><col style="width: 70.1018%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Edit Project**</td><td>Opens the Project configuration window.</td></tr><tr><td>**Edit Scene Composer Solution**</td><td>Edits the configured Scene Composer solution.</td></tr><tr><td>**Edit Courier Definition**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Displays all Courier definition files based on the configured XCDL file and allows to quickly edit them using the Courier Editor.</span></td></tr><tr><td>**Edit Complex Types**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Edits the configured Complex-Types definition file.</span></td></tr><tr><td>**Edit Native-Functions**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Edits the configured Native-Functions definition file.</span></td></tr></tbody></table>

<p class="callout info">If a resource or related script file is not available, the function is disabled.</p>

---

# Build Menu

The build menu allows to quickly trigger a build from the specified Build-Projects. It lists all available default builds and, depending on the tool configuration, special tool specific builds. Same can be done via the toolbar.

<div drawio-diagram="8308"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744609006.png" alt=""/></div>

<div drawio-diagram="7213"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730275295.png" alt=""/></div>

Additionally, the related Build-Projects can be directly edited from the menu (not available via the Toolbar)

---

# Project Settings

Several project related configurations can be performed in the project settings window which is accessible var the “Edit” menu or the shortcut “Ctrl + 0”.

<div drawio-diagram="6936"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728276701.png" alt=""/></div>

Via the List on the left the displayed options can be filtered to make it faster to find a related setting.  
All project settings (with a few additions) are available in any build that is executed. For more details about this refer to <span style="color: rgb(230, 126, 35);">[Builds chapter](https://doc316en.candera.eu/books/cgi-studio-connector/page/builds)</span>.

##### General

<div drawio-diagram="6937"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728276791.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-14" style="border-collapse: collapse; width: 97.4074%;"><colgroup><col style="width: 21.701%;"></col><col style="width: 78.299%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name** </td><td>Name of the project.</td></tr><tr><td>**Description** </td><td>Description of the project.</td></tr><tr><td>**Icon**</td><td>Custom icon used for the project.</td></tr></tbody></table>

##### Interface

<div drawio-diagram="6938"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728277079.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-15" style="border-collapse: collapse; width: 97.6543%;"><colgroup><col style="width: 25.4453%;"></col><col style="width: 74.5547%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Interface Definition** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing the Interface definition. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Complex-Type Definition**</td><td>File containing the Complex-Type definition. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</td></tr><tr><td>**Native-Function Definition**</td><td>File containing the Native-Function definition. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</td></tr></tbody></table>

##### Tools

<div drawio-diagram="6939"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728277203.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-16" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 16.285%;"></col><col style="width: 83.715%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Generic** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Enables generic support. This will provide a plain C/C++ interface.</span></td></tr><tr><td>**MATLAB**</td><td>Enables support for MATLAB. This will provide additional options/setting related to Mathworks MATLAB support</td></tr></tbody></table>

##### CGI Studio

<div drawio-diagram="6940"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728277503.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-17" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 16.1783%;"></col><col style="width: 83.8217%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Root Path** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Path to CGI Studio package. The path can be either absolute or relative to CGI Connector/Project path.</span></td></tr></tbody></table>

##### Device-Platform

<div drawio-diagram="6941"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728278193.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-18" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 22.4814%;"></col><col style="width: 77.488%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Platform** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Name of the CGI Studio Platform (as found in CMake)</span></td></tr><tr><td>**Platform Configuration**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Name of the CGI Studio Platform configuration (as found in CMake)</span></td></tr></tbody></table>

##### Scene Composer

<div drawio-diagram="6942"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728278275.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-19" style="border-collapse: collapse; width: 97.4074%;"><colgroup><col style="width: 16.285%;"></col><col style="width: 83.715%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Executable** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Executable used to edit the Scene Composer solution file.</span></td></tr><tr><td>**Solution**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Scene Composer solution file. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr></tbody></table>

##### Courier

<div drawio-diagram="6943"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728278352.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-20" style="border-collapse: collapse; width: 97.4074%;"><colgroup><col style="width: 25.6962%;"></col><col style="width: 74.3038%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**XCDL Definition File** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing the Courier definition. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**XCDL Include Path**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Additional include path required to by the XCDL definition. Multiple path must be separated by a ‘;’. Paths must be relative to the project file or CGI Studio root path.</span></td></tr></tbody></table>

##### Code Generation

<div drawio-diagram="7214"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730276369.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-21" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 21.6285%;"></col><col style="width: 78.3715%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Compiler** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Compiler used to build code.</span></td></tr><tr><td>**Architecture**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Architecture used to build the code.</span></td></tr><tr><td>**Build-Project File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing default builds. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr></tbody></table>

##### MATLAB

<div drawio-diagram="7215"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730276428.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-22" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 25.4453%;"></col><col style="width: 74.5547%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Build-Project File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing MATLAB related builds. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr></tbody></table>

##### Connector

<div drawio-diagram="7216"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730276530.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-23" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 29.7845%;"></col><col style="width: 70.2155%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Edit Complex-Types Script File** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing Complex-Types. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Edit Native-Functions Script File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing Native-Functions. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Edit SC Solution Script File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing SC Solution. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Edit XCDL Script File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing Courier definition. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Edit Build-Project Script File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing a Build-Project. The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr><tr><td>**Show Console Window**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">When enabled, shows a command line window executing scripts. This can be used to debug scripts.</span></td></tr><tr><td>**Show Code Script File**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Script file executed when editing code (via the log window). The path can be either absolute or relative to CGI Connector/Project/CGI Studio path.</span></td></tr></tbody></table>

---

# Builds

When a build is started the Build-Window will be shown and the build will be automatically started.

If the build contains some Option-Values an additional dialog will be displayed before the actual Build-Window, which allows the user to configure the build. Depending on the option, the user can either select from a set of predefined values or needs to enter a custom value.

<div drawio-diagram="8309"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744609190.png" alt=""/></div>

A build is commonly separated into multiple steps each corresponding to a separate script file that is executed from the specified build-script folder.

<div drawio-diagram="7217"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730336981.png" alt=""/></div>

<span lang="EN-US">The top row shows the current build state. It indicates the progress or if the build has finished/failed. On the right side the combined information about all build steps is shown. It displays the total amount of info, warning and error messages from the output. The second row provides information about the current executed step.</span>

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">When enabling the details, by checking the option in the bottom right, the output of the build scripts can be seen, grouped by the step. This output is also saved into a log-file into the specified build folder.</span>

#### Build Settings

When a build is started, the builds specific options defined in the related Build Project are set (See <span style="color: rgb(230, 126, 35);">[Build Projects](https://doc316en.candera.eu/books/cgi-studio-connector/chapter/build-projects)</span> for more information). Further the following settings are applied by the Connector.

**Root-Paths:**

<table border="1" id="bkmrk-property-name-descri-22" style="width: 71.2346%;"><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35); width: 32.789%;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); width: 67.211%;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td style="width: 32.789%;">**CONNECTOR\_ROOT** </td><td style="width: 67.211%;"><span lang="EN-US">Path to the Connector binary</span></td></tr><tr><td style="width: 32.789%;">**PROJECT\_ROOT**</td><td style="width: 67.211%;"><span lang="EN-US">Path to the Connector project file</span></td></tr><tr><td style="width: 32.789%;">**CGI\_ROOT**</td><td style="width: 67.211%;"><span lang="EN-US">Path to the CGI packages</span></td></tr></tbody></table>

**Variables:**

<table border="1" id="bkmrk-argument-description" style="width: 97.1605%; height: 965.095px;"><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); width: 50.7643%; height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); width: 49.2357%; height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EXECUTABLE\_PATH**</td><td style="width: 49.2357%; height: 29.7969px;">Path to the Connector binary</td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_PROJECT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Connector project file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_PROJECT\_PATH**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Path to the Connector project file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_PROJECT\_NAME**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Connector project Name</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_PROJECT\_DESCRIPTION** </td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Connector project Description</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_PROJECT\_ICON\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Connector project icon file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_INTERFACE\_DEFINITION\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Interface definition file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_COMPLEXTYPE\_DEFINITION\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Complex-Type definition file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_NATIVEFUNCTION\_DEFINITION\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Native-Function definition file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_ENABLE\_GENERIC\_TOOL**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Indicates if ‘Generic Tool’ is enabled</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_ENABLE\_MATLAB\_TOOL**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Indicates if ‘MATLAB Tool’ is enabled</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CGISTUDIO\_ROOT\_PATH**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Path to CGI Studio root folder</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CGISTUDIO\_PLATFORM**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">CGI Studio Platform (e.g. Android, RCar,..)</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CGISTUDIO\_PLATFORM\_CONFIG**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">CGI Studio Platform Configuration (x86/x64)</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_SCENECOMPOSER\_EXECUTABLE\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Scene-Composer executable file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_SCENECOMPOSER\_EXECUTABLE\_PATH**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Scene-Composer executable path</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_SCENECOMPOSER\_SOLUTION\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Scene-Composer solution file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_COURIER\_XCDL\_DEFINITION\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">XCDL root definition file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_COURIER\_XCDL\_INCLUDE\_PATHS**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">XCDL include paths (separated by ‘;’)</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_COURIER\_XCDL\_RESOLVED\_INCLUDE\_PATHS**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Resolved XCDL include paths using available root paths</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CODE\_GENERATION\_COMPILER**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Compiler used for code generation/build</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CODE\_GENERATION\_ARCHITECTURE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Architecture used for code generation/build</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_CODE\_GENERATION\_BUILD\_PROJECT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Default Build-Project file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_MATLAB\_ENABLE\_LEGACY\_OPTIONS**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Indicates if MATLAB legacy options are enabled</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_MATLAB\_BUILD\_PROJECT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">MATLAB Build-Project file</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EDIT\_COMPLEX\_TYPES\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for ‘Edit Complex-Type definition’</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EDIT\_NATIVE\_FUNTIONS\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for ‘Edit Native-Function definition’</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EDIT\_SC\_SOLUTION\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for ‘Edit Scene Composer solution’</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EDIT\_XCDL\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for ‘Edit Courier Definition’</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_EDIT\_BUILD\_PROJECT\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for ‘Edit Build-Project’</span></td></tr><tr style="height: 11.5938px;"><td style="width: 50.7643%; height: 11.5938px;">**CONNECTOR\_SHOW\_CONSOLE\_WINDOW**</td><td style="width: 49.2357%; height: 11.5938px;"><span lang="EN-US">Indicates if console window is shown when running scripts.</span></td></tr><tr style="height: 29.7969px;"><td style="width: 50.7643%; height: 29.7969px;">**CONNECTOR\_SHOW\_CODE\_SCRIPT\_FILE**</td><td style="width: 49.2357%; height: 29.7969px;"><span lang="EN-US">Script for triggering editor from Build details</span></td></tr></tbody></table>

The same environment variables are also set when any other script is executed (such as ‘Edit Scene-Composer solution’)

#### Close on Success

If a build contains the CONNECTOR\_BUILD\_CLOSE\_ON\_SUCCESS variable and sets a value of ‘1’ then the Build-Window will be automatically closed when the build is finished successfully.  
This can feature is very useful if Builds are used to just perform simple tasks or open other programs.

<p class="callout info">Note that some programs do ‘block’ the command script execution until closed even when started using the START command. To workaround this problem the provided ‘ProcRun’ tool found in ‘cgi\_studio\_connector\\BuildScripts\\Common\\ProcRun‘ can be used. The syntax to use it is:  
ProcRun &lt;Executable&gt; \[“&lt;Arguments&gt;”\]  
</p>

---

# Complex Types

Besides integral types, such as various integer and floating-point types, also complex types are supported. This is achieved by converting the complex type into an array of basic types. These can be static or dynamic in size.  
  
To make this possible, the code generator must know the underlying basic-types for a specific complex type which is done by providing an optional Complex-Type definition file. Further the user must implement matching conversion functions between the specified basic and complex types.  
  
Note: Complex-Types using mixed data types can be supported by treating them as simple byte-arrays

# XML Definition

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Complex Types are defined in an XML Schema file which is located at “cgi\_studio\_connector/schema/ComplexType.xsd”. This file can be used to validate xml files and with some editors (e.g. Visual-Studio) and provide code-completion when writing the XML file.</span>

#### ComplexTypeDefinition-Element

Root Element. List of Complex types.

**<span lang="EN-US">Attributes:  
</span>**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">None</span>

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">**Children:**</span>

<table border="1" id="bkmrk-argument-occurrence-" style="border-collapse: collapse; width: 55.3086%;"><colgroup><col style="width: 28.8591%;"></col><col style="width: 33.7912%;"></col><col style="width: 37.5734%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);">**<span style="color: rgb(255, 255, 255);">Argument</span>**</td><td class="align-center" style="background-color: rgb(230, 126, 35);">**<span style="color: rgb(255, 255, 255);"><span lang="EN-US">Occurrence</span></span>**</td><td class="align-center" style="background-color: rgb(230, 126, 35);">**<span style="color: rgb(255, 255, 255);">Description</span>**</td></tr><tr><td>ComplexType</td><td>0 - \*</td><td>Complex type</td></tr></tbody></table>

#### <span style="mso-bookmark: _Toc135401528;"><span lang="EN-US">ComplexType-Element</span></span>

<span lang="EN-US">Defines a specific Complex type.</span>

**<span lang="EN-US">Attributes:</span>**

<table border="1" id="bkmrk-argument-occurrence--1" style="border-collapse: collapse; width: 73.3333%; height: 148.984px;"><colgroup><col style="width: 22.1284%;"></col><col style="width: 25%;"></col><col style="width: 52.8716%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;">**<span style="color: rgb(255, 255, 255);">Argument</span>**</td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;">**<span style="color: rgb(255, 255, 255);"><span lang="EN-US">Occurrence</span></span>**</td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;">**<span style="color: rgb(255, 255, 255);">Description</span>**</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">native\_type</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Yes</span></td><td style="height: 29.7969px;">Native data type (e.g. Candera::Vector3)</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">basic\_type</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Yes</span></td><td style="height: 29.7969px;">Corresponding basic type. Valid values are:  
- Double  
- Single  
- Int8  
- UInt8  
- Int16  
- UInt16  
- Int32  
- UInt32  
- Int64  
- UInt64  
- Bool</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">basic\_type\_length</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Yes</span></td><td style="height: 29.7969px;">Length of basic type  
-1: Dynamic size  
&gt;0: Fixed size</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">default\_value</td><td style="height: 29.7969px;"><span lang="EN-US" style="color: black; mso-color-alt: windowtext;">Yes</span></td><td style="height: 29.7969px;">Default value of type</td></tr></tbody></table>

**<span lang="EN-US">Children:  
</span>**<span lang="EN-US">None</span>

#### <span lang="EN-US">Sample</span>

<span lang="EN-US">Below a sample XML file is shown</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-%3C%3Fxml-version%3D%221.0%22%3F" style="width: 78.1481%;" width="100%"><tbody><tr><td style="width: 100%;"><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;?</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">xml</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">version</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">1.0</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">?&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexTypeDefinition</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xsi:noNamespaceSchemaLocation</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">../../tools/Core/Schema/ComplexType.xsd</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xmlns:xsi</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">http://www.w3.org/2001/XMLSchema-instance</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexType</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">native\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Candera::Vector2</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Single</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type\_length</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">2</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">default\_value</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Candera::Vector2(0.0F, 0.0F)</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexType</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">native\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Candera::Vector3</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Single</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type\_length</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">3</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">default\_value</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Candera::Vector3(0.0F, 0.0F, 0.0F)</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexType</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">native\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::String</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">UInt8</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type\_length</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">-1</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">default\_value</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::String(</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">&amp;quot;&amp;quot;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">)</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexType</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">native\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Custom::ByteArray</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">UInt8</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">basic\_type\_length</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">-1</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span>

<span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">default\_value</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">""</span><span lang="EN-US" style="font-size: 8.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 8.0pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;/</span><span lang="EN-US" style="font-size: 8.0pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ComplexTypeDefinition</span><span lang="EN-US" style="font-size: 8.0pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

</td></tr></tbody></table>

---

<span lang="EN-US"> </span>

# Converter

<span lang="EN-US">For conversion between the basic type and actual complex type, conversion functions needs to be available. This function must be implemented inside the “ComplexType” namespace (additionally to the default namespace for the Interface) and within the “ComplexType.h/cpp” files. </span>

<span lang="EN-US">For fixed size data types the conversion looks like the following:</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-void-convert%28featstd" width="100%"><tbody><tr><td><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> Convert(FeatStd::</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Float</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, Candera::</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Vector3</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">)</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;SetX(</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[0\]);</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;SetY(</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[1\]);</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;SetZ(</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[2\]);</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">}</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> Convert(Candera::</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Vector3</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, FeatStd::</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Float</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">)</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[0\] = </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;GetX();</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[1\] = </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;GetY();</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\[2\] = </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">-&gt;GetZ();</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">}</span>

</td></tr></tbody></table>

<span lang="EN-US"> </span>

<span lang="EN-US">For login/tracing purposes a “PrintValue\_CUSTOM\_TYPE” function is also required. This function’s purpose is to print the given value to the provided buffer. The provided value is the basic type not the final complex type (e.g. float\[3\] instead of Candera::Vector3). The function must return the bytes written to the buffer.</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-featstd%3A%3Aint-printva" width="100%"><tbody><tr><td><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">FeatStd::Int PrintValue\_Candera\_Vector3(</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\* buffer, FeatStd::UInt32 bufferLength, </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\* value)</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> Candera::Float\* floatValues = (</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> Candera::Float \*)value;</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">return</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">FeatStd::Internal::String::StringPrintf<span style="background: white; mso-highlight: white;">((</span></span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">char</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\*)buffer, bufferLength, </span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: #a31515; background: white; mso-highlight: white; layout-grid-mode: line;">"\[%.2f, %.2f, %.2f\]"</span><span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">, floatValues\[0\], floatValues\[1\], floatValues\[2\]);</span>

<span lang="EN-US" style="font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">}</span>

</td></tr></tbody></table>

<span lang="EN-US"> </span>

<span lang="EN-US">For dynamic arrays (such as used for strings) the “DataBuffer” class will be used when the type is used in Data-Interfaces and the “Queue” class will be used if this type is used in actions or events. Additionally, a function that converts a void\* with size information to the target type is required in both cases.</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-void-convert%28featstd-1" width="100%"><tbody><tr><td><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> Convert(FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">String</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Internal::DataBuffer</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">)</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; layout-grid-mode: line;">-&gt;CopyFrom<span style="color: gray;">(from</span><span style="color: black;">-&gt;GetCString(), </span><span style="color: gray;">from</span><span style="color: black;">-&gt;GetCharCount());</span></span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">}</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> Convert(FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">String</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">from</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">Internal::Queue</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">)</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; layout-grid-mode: line;">-&gt;WriteSizeData<span style="color: gray;">(from</span><span style="color: black;">-&gt;GetCString(), </span><span style="color: gray;">from</span><span style="color: black;">-&gt;GetCharCount());</span></span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">}</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> Convert(</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">data</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">UInt32</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">dataSize</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">, FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">String</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\* </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">)</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #6f008a; layout-grid-mode: line;">FEATSTD\_UNUSED</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">(</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">dataSize</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">);</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span>\*</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">to</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: teal; layout-grid-mode: line;">=</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">String</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">((FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #2b91af; layout-grid-mode: line;">TChar</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">\*)(</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: gray; layout-grid-mode: line;">data</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">));</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">}</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;"> </span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">FeatStd::Int PrintValue\_FeatStd\_String(</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\* buffer, FeatStd::SizeType bufferLength,</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">void</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\* value</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; color: black; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">, </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; color: black; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; color: rgb(43, 145, 175); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">UInt32</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; color: black; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;"> valueSize</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; color: black; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">)</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">{</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">return</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; layout-grid-mode: line;">FeatStd::Internal::String::StringPrintf<span style="background: white; mso-highlight: white;">((</span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">char</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\*)buffer, bufferLength, </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: #a31515; background: white; mso-highlight: white; layout-grid-mode: line;">"%s"</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">, (</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">const</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;"> </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: blue; background: white; mso-highlight: white; layout-grid-mode: line;">char</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">\*)value);</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: Consolas; mso-bidi-font-family: Consolas; color: black; background: white; mso-highlight: white; layout-grid-mode: line;">}</span>

</td></tr></tbody></table>

---

# Editor

<span lang="EN-US">An editor for the Native-Function definition can be found here:  
“</span><span class="DescriptionChar"><span lang="EN-US">cgi\_studio\_connector/bin/ComplexTypeEditor.exe</span></span><span lang="EN-US">”</span><span lang="EN-US"> </span>

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">If called with a file as first argument the editor will try to open the specified file.</span>

#### Complex-Types

<div drawio-diagram="6947"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728279282.png" alt=""/></div>

On the left side, Complex-Types can be added/removed and reordered using the respective buttons.

**Properties:**

<div drawio-diagram="8310"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744610699.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-20" style="border-collapse: collapse; width: 97.284%;"><colgroup><col style="width: 16.5394%;"></col><col style="width: 83.4606%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Native Type** </td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">C/C++ name of the native type</span></td></tr><tr><td>**Basic Type**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Basic type used to represent the Complex-Type. This type will be used when transferring data via the Interface.</span></td></tr><tr><td>**Length**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Length of the Complex-Type based on the Basic-Type. To use to a dynamic length (e.g. an array) the “Dynamic” checkbox can be used.</span></td></tr><tr><td>**Default Value**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Default value used for this Complex-Type.</span></td></tr></tbody></table>

---

# Native Functions

Native Functions allow to execute custom code directly from the interface or receive customizable events. To provide the necessary information to the tool they must be specified in an XML file and finally be implemented in the Action-Context class used by interface.

# XML Definition

<span lang="EN-US">Native Functions are defined in an XML Schema file which is located at “cgi\_studio\_connector/schema/NativeFunction.xsd”. This file can be used to validate xml files and with some editors (e.g. Visual-Studio) and provide code-completion when writing the XML file.</span>

#### <span lang="EN-US">NativeFunctionDefinition-Element</span>

<span lang="EN-US">Root Element. List of Function types.</span>

**<span lang="EN-US">Attributes:  
</span>**<span lang="EN-US">None</span>

<span lang="EN-US"> </span>**<span lang="EN-US">Children:</span>**

<table border="1" id="bkmrk-argument-occurrence-" style="border-collapse: collapse; width: 67.037%;"><colgroup><col style="width: 23.8004%;"></col><col style="width: 22.5109%;"></col><col style="width: 53.6916%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>Function</td><td>0 - \*</td><td>A native function definition</td></tr></tbody></table>

#### <span lang="EN-US">Function-Element</span>

<span lang="EN-US">Definition of a native Function.</span><span lang="EN-US"> </span>

**<span lang="EN-US">Attributes:</span>**

<table border="1" id="bkmrk-argument-required-de" style="border-collapse: collapse; width: 91.8519%;"><colgroup><col style="width: 17.6301%;"></col><col style="width: 16.8248%;"></col><col style="width: 65.5451%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>name</td><td>Yes</td><td>Name of the function.</td></tr><tr><td>uid</td><td>Yes</td><td>Unique Id of function.</td></tr><tr><td>has\_result</td><td>Yes</td><td>Indicates if function has a result. If set, the function needs to return a bool value and can be called for checking events. In this case an event is triggered if the function returns true and all conditions are valid.</td></tr><tr><td>description</td><td>No</td><td>Description of the function.</td></tr></tbody></table>

**<span lang="EN-US">Children:</span>**

<table border="1" id="bkmrk-argument-occurrence--1" style="border-collapse: collapse; width: 67.037%;"><colgroup><col style="width: 23.2472%;"></col><col style="width: 23.0597%;"></col><col style="width: 53.6931%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>Argument</td><td>0 - \*</td><td>Argument of the function</td></tr></tbody></table>

#### <span lang="EN-US">Argument-Element</span>

<span lang="EN-US">Definition of an argument of the function.</span>

**<span lang="EN-US">Attributes:</span>**

<table border="1" id="bkmrk-argument-required-de-1" style="border-collapse: collapse; width: 91.8519%;"><colgroup><col style="width: 17.6301%;"></col><col style="width: 16.8248%;"></col><col style="width: 65.5451%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>name</td><td>Yes</td><td>Name of the argument.</td></tr><tr><td>uid</td><td>Yes</td><td>Unique Id of argument.</td></tr><tr><td>type</td><td>Yes</td><td>Type of the argument. This can be any basic or complex type if intended to be used for dynamic input/output. For static values any type is supported.</td></tr><tr><td>description</td><td>No</td><td>Description of the argument.</td></tr><tr><td>is\_output</td><td>No</td><td>If set, this argument is passed as a reference with the intend to use it as an output value or in a condition.</td></tr></tbody></table>

**<span lang="EN-US">Children:  
</span>**<span lang="EN-US" style="mso-fareast-font-family: 'Segoe UI';">None</span>

---

# Implementation

<span lang="EN-US">The actual native functions must be implemented as part of the Action-Context class which will then be passed to the Interface to trigger them.</span>

<span lang="EN-US">The implementation must match the name of the specified function in the XML as well as the names, types and order of the arguments. Note that Complex-Types must be passed as const references.</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-%3C%3Fxml-version%3D%221.0%22%3F" width="100%"><tbody><tr><td><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;?</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">xml</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">version</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">1.0</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">?&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">NativeFunctionDefinition</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xsi:noNamespaceSchemaLocation</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">../../tools/Core/NativeFunction/Schema/NativeFunction.xsd</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">" </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xmlns:xsi</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">http://www.w3.org/2001/XMLSchema-instance</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">" </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">version</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">1</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FloatTestFunction</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">test11</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">has\_result</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Argument</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">value</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::Float</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">arg11</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">is\_output</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">StringTestFunction</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">test12</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">has\_result</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Argument</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">value</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::String</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">arg11</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">is\_output</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">MixedArgumentFunction</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">test13</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">has\_result</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">true</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Argument</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">floatValue</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::Float</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">arg11</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">is\_output</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Argument</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">intValue</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::Int32</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">arg12</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">is\_output</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">false</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">EventTestFunction</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">test26</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">has\_result</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">true</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Argument</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">conditionArg</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">FeatStd::Int32</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">uid</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">arg11</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">is\_output</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">true</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Function</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;/</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">NativeFunctionDefinition</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

</td></tr></tbody></table>

<span lang="EN-US"> </span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-namespace-action-%7B-%C2%A0" width="100%"><tbody><tr><td><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">namespace</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> Action {</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">class</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">ActionContext</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span>{</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">public</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">:</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">...</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: green;">// User Functions</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">void</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> FloatTestFunction(FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">Float</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">value</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">);</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">void</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> Vector3TestFunction(</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">const</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> Candera::</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">Vector3</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">&amp; </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">value</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">);</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">void</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> StringTestFunction(</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">const</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">String</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">&amp; </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">value</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">);</span>

<span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">void</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> MixedArgumentTestFunction(FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">Float</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">floatValue</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">, FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">Int32</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> </span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">intValue</span><span lang="EN-US" style="font-size: 9.5pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">);</span>

<span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">bool</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> EventTestFunction(FeatStd::</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #2b91af;">Int32</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">&amp; </span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: gray;">conditionArg</span><span lang="EN-US" style="font-size: 9.5pt; line-height: 107%; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">);</span>

</td></tr></tbody></table>

---

# Editor

<span lang="EN-US">An editor for the Native-Function definition can be found here:  
“</span><span class="DescriptionChar"><span lang="EN-US">cgi\_studio\_connector/bin/NativeFunctionEditor.exe</span></span><span lang="EN-US">”</span>

<span lang="EN-US">If called with a file as first argument the editor will try to open the specified file.</span>

#### <span lang="EN-US">Native-Functions</span>

<div drawio-diagram="6949"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728279947.png" alt=""/></div>

On the left side, Native-Functions can be added/removed and reordered using the respective buttons.

**Properties:**

<div drawio-diagram="8311"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744610843.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-7" style="border-collapse: collapse; width: 98.0247%;"><colgroup><col style="width: 16.7778%;"></col><col style="width: 83.2222%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name**</td><td>Name of the function. This name must be a valid C/C++ name and must be implemented in the Action-Context.</td></tr><tr><td>**UId**</td><td>The UId is used to identify the native function. It can be seen as the tooltip of the ‘UId’ button. When the button is clicked a new UId will be generated.</td></tr><tr><td>**Description**</td><td>Description of the function.</td></tr><tr><td>**Has Result**</td><td>If enabled, the function must return a bool value. This indicates that the function is used for Function-Call Events. The return value will indicate if the related event has been raised or not.</td></tr></tbody></table>

**Arguments:**

A function can have arguments. Arguments can be added/removed with the respective buttons.

<div drawio-diagram="6951"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728280154.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 97.6543%;"><colgroup><col style="width: 16.3934%;"></col><col style="width: 83.6066%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name**</td><td>Name of argument. This name must be a valid C/C++ identifier.</td></tr><tr><td>**Type**</td><td>Data type of the argument. In principal all types can be used here. However if the argument is used for a dynamic input/output the type must either be a compatible basic FeatStd type or a supported Complex-Type.</td></tr><tr><td>**Is Output**</td><td>Indicates if the argument is used as an output. This can then be used to apply additional conditions when checking for an event.</td></tr><tr><td>**Description**</td><td>Description of the argument.</td></tr></tbody></table>

---

# Build Projects

Build-Projects contain so called builds which help to automate the process of generating code and/or building the application. They allow to specify a series of script files which are to be executed and provide arguments which can be configured by the user.

# XML Definition

Builds are defined in an XML Schema file which is located at “cgi\_studio\_connector/schema/BuildProject.xsd”. This file can be used to validate xml files and with some editors (e.g. Visual-Studio) and provide code-completion when writing the XML file.

#### BuildProject-Element

Root Element. Contains list of Root-Paths, global Variables and Builds.

**Attributes:**

<table border="1" id="bkmrk-property-name-descri-7" style="border-collapse: collapse; width: 78.0247%;"><colgroup><col style="width: 20.4442%;"></col><col style="width: 14.4364%;"></col><col style="width: 65.2803%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**version**</td><td class="align-left">Yes</td><td>Version of the Build-Project file.</td></tr></tbody></table>

**Children:**

<table border="1" id="bkmrk-argument-occurrence-" style="border-collapse: collapse; width: 78.0247%;"><colgroup><col style="width: 20.0947%;"></col><col style="width: 23.2345%;"></col><col style="width: 56.6733%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**RootPaths**</td><td class="align-left">1</td><td>List of Root-Paths</td></tr><tr><td>**Variables**</td><td class="align-left">1</td><td>List of global Variables. These Variables can be used in any Build.</td></tr><tr><td>**Builds**</td><td class="align-left">1</td><td>List of Builds</td></tr></tbody></table>

#### RootPaths-Element

Defines a list of Root-Paths.

**Attributes:**  
None

**Children:**

<table border="1" id="bkmrk-argument-occurrence--1" style="border-collapse: collapse; width: 78.0247%;"><colgroup><col style="width: 20.4087%;"></col><col style="width: 23.5485%;"></col><col style="width: 56.0453%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**RootPath**</td><td class="align-left">0 - \*</td><td>Root-Path</td></tr></tbody></table>

#### Variables-Element

Defines a list of Variables.

**Attributes:**  
None

**Children:**

<table border="1" id="bkmrk-argument-occurrence--2" style="border-collapse: collapse; width: 78.0247%;"><colgroup><col style="width: 20.0947%;"></col><col style="width: 23.8624%;"></col><col style="width: 56.0453%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Variable**</td><td class="align-left">0 - \*</td><td>Variable</td></tr></tbody></table>

#### Builds-Element

Defines a list of Builds.

**Attributes:**  
None

**Children:**

<table border="1" id="bkmrk-argument-occurrence--3" style="border-collapse: collapse; width: 77.7778%;"><colgroup><col style="width: 20.3498%;"></col><col style="width: 23.9973%;"></col><col style="width: 55.653%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Build**</td><td class="align-left">0 - \*</td><td>Build</td></tr></tbody></table>

#### RootPath-Element

Defines a Root-Path. Root-Paths can be referenced by variables to make them relative to a common path.

**Attributes:**

<table border="1" id="bkmrk-argument-required-de" style="border-collapse: collapse; width: 78.1481%;"><colgroup><col style="width: 20.4114%;"></col><col style="width: 14.4072%;"></col><col style="width: 65.1814%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**name**</td><td class="align-left">Yes</td><td>Name of the Root-Path.</td></tr><tr><td>**description**</td><td class="align-left">No</td><td>Description of the argument.</td></tr></tbody></table>

**Children:** None

#### Variable-Element

A variable for the build which will be applied for all executed scripts.

**Attributes:**

<table border="1" id="bkmrk-argument-required-de-1" style="border-collapse: collapse; width: 78.0247%; height: 255.578px;"><colgroup><col style="width: 20.4442%;"></col><col style="width: 14.2616%;"></col><col style="width: 65.2966%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 44.7969px;"><td style="height: 44.7969px;">**name**</td><td class="align-left" style="height: 44.7969px;">Yes</td><td style="height: 44.7969px;">Name of the variable.</td></tr><tr style="height: 44.7969px;"><td style="height: 44.7969px;">**type**</td><td class="align-left" style="height: 44.7969px;">Yes</td><td style="height: 44.7969px;">Type of the variable. Valid values are ‘Value’, ‘Option’, ‘Path’ and ‘File’</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**root\_path\_key**</td><td class="align-left" style="height: 46.5938px;">No</td><td style="height: 46.5938px;">If set, paths (or files) will be relative to the given Root-Path.</td></tr><tr style="height: 44.7969px;"><td style="height: 44.7969px;">**value**</td><td class="align-left" style="height: 44.7969px;">Yes</td><td style="height: 44.7969px;">Value of the variable.  
If the type is ‘Option’, valid values can be specified as a list of values separated by semicolons. If left blank, any value is considered valid.  
</td></tr><tr style="height: 44.7969px;"><td style="height: 44.7969px;">**description**</td><td class="align-left" style="height: 44.7969px;">Yes</td><td style="height: 44.7969px;">Description of the variable.</td></tr></tbody></table>

**Children:**  
None

#### Build-Element

A build which can be executed.

**Attributes:**

<table border="1" id="bkmrk-argument-required-de-2" style="border-collapse: collapse; width: 78.0247%; height: 175.781px;"><colgroup><col style="width: 20.4087%;"></col><col style="width: 13.1871%;"></col><col style="width: 66.4067%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**name**</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Name of the build.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**description**</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Description of the build.</td></tr></tbody></table>

**Children:**

<table border="1" id="bkmrk-argument-occurrence--4" style="border-collapse: collapse; width: 82.3457%;"><colgroup><col style="width: 20.4204%;"></col><col style="width: 16.519%;"></col><col style="width: 63.0606%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Occurrence**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**ScriptPath**</td><td class="align-left">1</td><td>Path to the script files which should be executed for this build.</td></tr><tr><td>**OutputPath**</td><td class="align-left">1</td><td>Output-Path for this build.</td></tr><tr><td>**Variable**</td><td class="align-left">0 - \*</td><td>Variable for this build</td></tr></tbody></table>

#### ScriptPath-Element

Path to the script files which are executed when this build is started. The script files should start with a number to indicate their execution order.

**Attributes:**

<table border="1" id="bkmrk-argument-required-de-3" style="border-collapse: collapse; width: 77.7778%; height: 175.781px;"><colgroup><col style="width: 20.4087%;"></col><col style="width: 13.1871%;"></col><col style="width: 66.4067%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**value**</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Relative path.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**root\_path**</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">If set, path will be relative to the given Root-Path.</td></tr></tbody></table>

**Children:**  
None

#### OutputPath-Element

Main output path for this build. Even if the build doesn’t produce any artifacts or generates output into other directories, at least the log file will be saved here.

**Attributes:**

<table border="1" id="bkmrk-argument-required-de-4" style="border-collapse: collapse; width: 77.9012%; height: 175.781px;"><colgroup><col style="width: 20.4762%;"></col><col style="width: 14.284%;"></col><col style="width: 65.2399%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Required**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**value**</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Relative path.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**root\_path**</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">If set, path will be relative to the given Root-Path.</td></tr></tbody></table>

**Children:**  
None

---

# Sample

<span lang="EN-US">Below a sample XML file can be seen</span>

<span lang="EN-US"> </span>

<table cellpadding="0" cellspacing="0" id="bkmrk-%3C%3Fxml-version%3D%221.0%22%3F" width="100%"><tbody><tr><td><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;?</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">xml</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">version</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">1.0</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">?&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">BuildProject</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xsi:noNamespaceSchemaLocation</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">../../tools/ConnectorApp/Build/Schema/BuildProject.xsd</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">xmlns:xsi</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">http://www.w3.org/2001/XMLSchema-instance</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span></span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">version</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">1</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">RootPaths</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">RootPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CONNECTOR\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Path to CGI Connector executable.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">RootPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">PROJECT\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Path to CGI Connector project file.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">RootPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CGI\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Path to CGI root folder</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">RootPaths</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variables</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">INTERFACE\_GENERATOR\_OUTPUT\_PATH</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">src/Interface</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">root\_path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">PROJECT\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Path for generated output files.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">INTERFACE\_NAMESPACE</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Application::Interface</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Namespace for generated Interface.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">INTERFACE\_DATAMODEL\_INCLUDE</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Model/!DATAMODEL\_CLASSNAME!.h</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Include for Data-Model.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;"> </span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">BUILD\_CGISTUDIO\_PLATFORM</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">!CONNECTOR\_CGISTUDIO\_PLATFORM!</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CGI-Studio Platform/Device.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">BUILD\_CGISTUDIO\_PLATFORM\_CONFIG</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">!CONNECTOR\_CGISTUDIO\_PLATFORM\_CONFIG!</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CGI-Studio Platform/Device configuration.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variables</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Builds</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Build</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Generate Code</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Generates only code</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ScriptPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">../BuildScripts/GenerateCode</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">root\_path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CONNECTOR\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">OutputPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">""</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">root\_path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">PROJECT\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Build</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Build</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Generate and Build (Simulation)</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Generates code and builds the application.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">ScriptPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">../BuildScripts/BuildApplication</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">root\_path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">CONNECTOR\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">OutputPath</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">build</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">root\_path</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">PROJECT\_ROOT</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">/&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">BUILD\_TARGET</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Application</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Build target</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">BUILD\_CONFIGURATION</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Option</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Release;Debug</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Build configuration/&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Variable</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">name</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">BUILD\_CMAKE\_CUSTOM\_FLAGS</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">type</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">value</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">-DCOURIER\_ADD\_SCHOST\_PROJECT=1 -DAPPLICATION\_IPC\_ENABLED -DAPPLICATION\_IPC\_INTERFACE\_ENABLED -DAPPLICATION\_CONNECTOR\_SIMULATION=1</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> </span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: red;">description</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">=</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">Additional CMake flags.</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: black;">"</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"> /&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Build</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;"><span style="mso-spacerun: yes;"> </span>&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">Builds</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

<span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&lt;/</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: #a31515;">BuildProject</span><span lang="EN-US" style="font-size: 7.0pt; font-family: 'Cascadia Mono'; mso-bidi-font-family: 'Cascadia Mono'; color: blue;">&gt;</span>

</td></tr></tbody></table>

<span lang="EN-US"> </span>

---

# Editor

<span lang="EN-US">An editor for the Build-Projects definition can be found here:  
“</span><span class="DescriptionChar"><span lang="EN-US">cgi\_studio\_connector/bin/BuildProjectEditor.exe</span></span><span lang="EN-US">”</span>

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">If called with a file as first argument the editor will try to open the specified file.</span>

#### Global

<div drawio-diagram="6958"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728344045.png" alt=""/></div>

On this tab, global settings can be configured.

**Root-Paths**  
Root-Paths allow the user to make path/file variables relative to a specified path. When a build is started these Root-paths must be set by the user beforehand.

They can be added and removed via the respective buttons on the right of the group.

<div drawio-diagram="8312"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614347.png" alt=""/></div>

**Properties:**

<table border="1" id="bkmrk-property-name-descri-7" style="border-collapse: collapse; width: 87.284%;"><colgroup><col style="width: 17.806%;"></col><col style="width: 82.194%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name**</td><td>Name of the Root-Path</td></tr><tr><td>**Description**</td><td>Description of the Root-Path.</td></tr></tbody></table>

**Variables**

Here, global variables can be set which apply to every build. However, each build can override the value of a variable simply by respecifying it directly in the build.

They can be added and removed via the respective buttons on the right of the group.

<div drawio-diagram="8313"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614384.png" alt=""/></div>

**Propertise:**

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 87.284%;"><colgroup><col style="width: 17.9365%;"></col><col style="width: 82.0635%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name**</td><td>Name of the Variable. This is the same name that is to be used in the scripts.</td></tr><tr><td>**Description**</td><td>Description of the Variable.</td></tr><tr><td>**Type**</td><td>Type of the Variable. The following options are available:  
\- Value: Simple value type

\- Option: Value that must be set at run time.  
\- Path: A path (folder)  
\- File: Full file path

</td></tr><tr><td>**Root-Path**</td><td>If the variable type is Path or File, this is used to reference a specified Root-Path. Doing so will treat the path as a relative path.</td></tr><tr><td>**Value**</td><td>Value of the variable. In case of ‘Option’ type values, the valid choices can be restricted by defining multiple values separated with a semicolon.</td></tr></tbody></table>

If the type is set to ‘Option’ the ‘Option Editor’ can be opened by clicking on the ‘…’ button next to the Value field.

<div drawio-diagram="8314"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614486.png" alt=""/></div>

In the Option Editor window individual options can be easily added and removed using the ‘plus’ and ‘minus’ buttons on the right side.

<div drawio-diagram="8324"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744704010.png" alt=""/></div>

#### Builds

On this tab, individual builds can be configured.

On the left side, Native-Functions can be added/removed and reordered using the respective buttons.

<div drawio-diagram="6961"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1728344180.png" alt=""/></div>

**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Properties</span>**

Builds contain several general properties.

<div drawio-diagram="8316"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614568.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri-1" style="border-collapse: collapse; width: 87.9012%;"><colgroup><col style="width: 18.0939%;"></col><col style="width: 81.9061%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**Name**</td><td>Name of the build.</td></tr><tr><td>**Description**</td><td>Description of the build.</td></tr><tr><td>**Script Path**</td><td>Path to the script file which should be executed for this build. All scripts (.bat/.cmd) inside the specified folder are executed in alphabetical order so it is recommended to begin the filename with the number of the execution step.

</td></tr><tr><td>**Root-Path**

**(Script Path)**

</td><td>Root-Path of the Script Path.</td></tr><tr><td>**Output Path**</td><td>Main output path for this build. Even if the build doesn’t produce any artifacts or generates output in other directories, at least the log file will be saved here.</td></tr><tr><td>**Root-Path**

**(Output Path)**

</td><td>Root-Path of the Output Path.</td></tr></tbody></table>

**Variables**

<span lang="EN-US">Variables for this build can be set here.</span>

<span lang="EN-US">They can be added and removed via the respective buttons on the right of the group.</span>

<div drawio-diagram="8317"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614619.png" alt=""/></div>

**Properties:**

<table border="1" id="bkmrk-property-name-descri-2" style="border-collapse: collapse; width: 89.5062%; height: 235.156px;"><colgroup><col style="width: 21.5637%;"></col><col style="width: 78.4363%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Name**</td><td style="height: 29.7969px;">Name of the Variable. This is the same name that is to be used in the scripts.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Description**</td><td style="height: 29.7969px;">Description of the Variable.</td></tr><tr style="height: 80.1875px;"><td style="height: 80.1875px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Type</span>**</td><td style="height: 80.1875px;">Type of the Variable. The following options are available:  
\- Value: Simple value type

\- Option: Value that must be set at run time.  
\- Path: A path (folder)  
\- File: Full file path

</td></tr><tr style="height: 35.7812px;"><td style="height: 35.7812px;">**<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Root-Path</span>**

</td><td style="height: 35.7812px;">If the variable type is Path or File, this is used to reference a specified Root-Path. Doing so will treat the path as a relative path.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Value**</td><td style="height: 29.7969px;">Value of the variable. In case of ‘Option’ type values, the valid choices can be restricted by defining multiple values separated with a semicolon.</td></tr></tbody></table>

If the type is set to ‘Option’ the ‘Option Editor’ can be opened by clicking on the ‘…’ button next to the Value field.

<div drawio-diagram="8318"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614715.png" alt=""/></div>

In the Option Editor window individual options can be easily added and removed using the ‘plus’ and ‘minus’ buttons on the right side.

<div drawio-diagram="8319"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744614753.png" alt=""/></div>

---

# Default variables

Besides user configured variables the following default environment variables will be set.

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 64.8148%; height: 129.188px;"><colgroup><col style="width: 35.1185%;"></col><col style="width: 64.8845%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**BUILD\_NAME**</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Name of the build</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**BUILD\_DESCRIPTION**</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Description of the build</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**BUILD\_SCRIPT\_PATH**</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Path to build script files</span></td></tr><tr style="height: 10px;"><td style="height: 10px;">**BUILD\_OUTPUT\_PATH**</td><td style="height: 10px;">Output path of the build

</td></tr></tbody></table>

---

# Command Line Interface

It is possible to start a build from the Command Line via the Build-CLI tool. For more information, please refer to the <span style="color: rgb(230, 126, 35);">[“Tools”](https://doc316en.candera.eu/books/cgi-studio-connector/chapter/tools)</span> chapter.

---

# Interface

The main purpose of the CGI Studio Connector is to create an interface that allows to easily connect an external system, such as 3rd party Statemachines, custom middleware etc, to a CGI Studio Courier based application. Via this interface it is possible to share data as well as trigger actions and receive events.  
To achieve this, multiple classes are generated by the tool which are to be integrated into the CGI-Studio application. These are further supported by multiple behavioral classes which can be implemented/modified by the user to define the exact behavior of the interface.

# Interface-Buffer

The main class of the generated interface is called “Interface-Buffer”. This class is responsible to handle the data, actions and events from both sides and provide them to the other side.

The Interface-Buffer class contains the following methods:

#### Init

Initializes the Interface-Buffer.

<table border="1" id="bkmrk-property-name-descri-21" style="border-collapse: collapse; width: 97.284%;"><colgroup><col style="width: 25.413%;"></col><col style="width: 16.5149%;"></col><col style="width: 58.0722%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**dataModel** </td><td>DataModel</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The generated Data-Model. Used to initialize data-values of the Interface-Buffer</span></td></tr><tr><td>**defaultActionQueueSize**</td><td>FeatStd::UInt32</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Size of the Action-Queue in bytes. The action queue is used to store actions for later execution. By pre-initializing it with a proper size, costly runtime memory allocations can be avoided.</span></td></tr><tr><td>**defaultEventQueueSize**</td><td>FeatStd::UInt32</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Size of the Event-Queue in bytes. The event queue is used to store event for later handling. By pre-initializing it with a proper size, costly runtime memory allocations can be avoided.</span></td></tr></tbody></table>

#### SetDataValue

Sets data values of the Interface-Buffer. This method is intended to be called by the external system to send data to the CGI application.

<table border="1" id="bkmrk-argument-name-type-d" style="border-collapse: collapse; width: 97.4074%;"><colgroup><col style="width: 21.8274%;"></col><col style="width: 25.7617%;"></col><col style="width: 52.4108%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**interfaceId** </td><td>InputInterfaceId::Enum</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Id of the interface to set the value.</span></td></tr><tr><td>**data**</td><td>void\*</td><td>Pointer to the data to be set.</td></tr><tr><td>**dataSize**</td><td>FeatStd::UInt32</td><td>Size of the data to be shared in bytes.

This value will be ignored for static sized data unless INTERFACE\_DEBUG\_SIZECHECK\_ENABLED is defined.

</td></tr></tbody></table>

**Result:** True if setting the data-value is successful. False otherwise.

#### GetDataValue

Gets data values of the Interface-Buffer. This method is intended to be called by the external system to send data to the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-1" style="border-collapse: collapse; width: 97.284%;"><colgroup><col style="width: 21.9822%;"></col><col style="width: 25.5384%;"></col><col style="width: 52.4794%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**interfaceId** </td><td>OutputInterfaceId::Enum</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Id of the interface to get the value.</span></td></tr><tr><td>**target**</td><td>void\*</td><td>Pointer where the value should be written.</td></tr><tr><td>**maxTargetSize**</td><td>FeatStd::UInt32</td><td>Maximum size of in bytes that the ‘target’ can store.

This value will be ignored for static sized data unless INTERFACE\_DEBUG\_SIZECHECK\_ENABLED is defined.

</td></tr><tr><td>**dataSize**</td><td>FeatStd::UInt32\*</td><td>Actual size of the data to be written.

</td></tr></tbody></table>

**Result:** True if getting the data-value is successful. False otherwise. If the return value is false and the dataSize &gt; maxTargetSize the cause for the failure was that not enough memory was available to store the output value.

#### TriggerAction

Triggers the specified action.

<table border="1" id="bkmrk-argument-name-type-d-2" style="border-collapse: collapse; width: 97.284%;"><colgroup><col style="width: 24.0398%;"></col><col style="width: 29.5875%;"></col><col style="width: 46.3727%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**interfaceId** </td><td>InputInterfaceId::Enum</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Id of the action to trigger.</span></td></tr><tr><td>**data**</td><td>void\*</td><td>Pointer to data needed for the action.</td></tr><tr><td>**dataSize**</td><td>FeatStd::UInt32</td><td>Actual size of the data to be written.

This value will be ignored for static sized data unless INTERFACE\_DEBUG\_SIZECHECK\_ENABLED is defined.

</td></tr></tbody></table>

**Result:** True if getting action was successfully triggered. False otherwise.

#### SwapActionQueue

Swaps the action queue.

#### ProcessEvents

Gets events of the Interface-Buffer. This method is intended to be called by the external system to send data to the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-3" style="border-collapse: collapse; width: 97.5309%;"><colgroup><col style="width: 21.7997%;"></col><col style="width: 22.3107%;"></col><col style="width: 55.8895%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**eventHandler** </td><td>Internal::EventHandler\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Pointer to the Event-Handler object. This will be called for every event in the queue.</span></td></tr><tr><td>**maxCount**</td><td>FeatStd::Int32</td><td>Maximum count of events to handle. Use ‘-1’ for unlimited amount.</td></tr></tbody></table>

The Event-Callback function must have the following arguments:

<table border="1" id="bkmrk-argument-name-type-d-4" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.6088%;"></col><col style="width: 28.4398%;"></col><col style="width: 46.9514%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**interfaceId** </td><td>FeatStd::UInt32</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Id of the event</span></td></tr><tr><td>**data**</td><td>void\*</td><td>Pointer to the event data if available.</td></tr><tr><td>**dataSize**</td><td>FeatStd::UInt32</td><td>Size of the event data if available.</td></tr></tbody></table>

#### ProcessInputDataValues

Synchronizes the Interface-Buffer input data values with the applications Data-Model. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-5" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.7511%;"></col><col style="width: 28.7237%;"></col><col style="width: 46.5252%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**dataModel** </td><td>DataModel\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The generated Data-Model.</span></td></tr></tbody></table>

#### ProcessOutputDataValues

Synchronizes the Interface-Buffer output data values with the applications Data-Model. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-6" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.4666%;"></col><col style="width: 29.0082%;"></col><col style="width: 46.5252%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**dataModel** </td><td>DataModel\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">The generated Data-Model.</span></td></tr></tbody></table>

#### ProcessActions

Executes all queued actions. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-7" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.1821%;"></col><col style="width: 29.2927%;"></col><col style="width: 46.5252%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**actionContext** </td><td>Action::ActionContext</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Action-Context used to execute the action functions and basic actions (e.g. Message-Actions)</span></td></tr><tr><td>**sceneContext**</td><td>Scene::SceneContext</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Scene-Context used to execute the scene related actions (e.g. Scene-Interface or Scene-Table Interface)</span></td></tr><tr><td>**maxCount**</td><td>FeatStd::Int32</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Maximum count of actions to handle. Use ‘-1’ for unlimited amount.</span></td></tr></tbody></table>

#### TriggerGenericEvent

Raises a generic event. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-8" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.4666%;"></col><col style="width: 28.8661%;"></col><col style="width: 46.6673%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**interfaceId** </td><td>OutputInterfaceId::Enum</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Id of the event to raise.</span></td></tr><tr><td>**data**</td><td>void\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Pointer to the data of the event if available.</span></td></tr><tr><td>**dataSize**</td><td>FeatStd::UInt32</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Size of the event data if available.</span></td></tr></tbody></table>

**Result:** True if an event was raised (considering additional conditions). False otherwise.

#### TriggerMessageEvent

Raises a message event. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-9" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.4666%;"></col><col style="width: 29.0082%;"></col><col style="width: 46.5252%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**message** </td><td>Courier::Message\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Message to check if an event is to be raised.</span></td></tr></tbody></table>

**Result:** True if an event was raised (considering additional conditions). False otherwise.

#### TriggerFunctionCallEvents

Raises Function-Call events. This method is intended to be called by the CGI application.

<table border="1" id="bkmrk-argument-name-type-d-10" style="border-collapse: collapse; width: 86.9136%;"><colgroup><col style="width: 24.3243%;"></col><col style="width: 29.2925%;"></col><col style="width: 46.3832%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**actionContext** </td><td>Action::ActionContext\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Action-Context used to call related Event-Functions.</span></td></tr></tbody></table>

**Result:** True if an event was raised (considering additional conditions). False otherwise.

#### SwapEventQueue

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Swaps the event queue.</span>

---

# Action-Context

The action context is used whenever any actions (except scene related actions) are executed. Besides some basic methods it must also implement all native-functions that the user wants to call via the interface.

#### Required Methods

There are some required methods that need to be implemented in the Action-Context by default.

**ProcessMessage**

Handles messages that are meant to be sent to the CGI application from the Interface-Buffer.

<table border="1" id="bkmrk-property-name-descri-22" style="border-collapse: collapse; width: 87.5309%;"><colgroup><col style="width: 23.8701%;"></col><col style="width: 28.948%;"></col><col style="width: 47.1819%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**message** </td><td>Courier::Message\*</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Messages to be sent by the method.</span></td></tr></tbody></table>

---

# Scene-Context

The Scene-Context is used whenever scene related actions are executed. Here the user can provide his own implementation on how these actions are to be performed. Besides the Scene-Context itself there are also secondary classes (e.g. Scene/SceneTable) what the user can adapt to fit certain requirements.

#### Required Methods

There are some required methods that need to be implemented in the Scene-Context by default.

**SetSceneState**

Called when a Scene action is triggered, and the state of a scene is to be changed.

<table border="1" id="bkmrk-property-name-descri-10" style="border-collapse: collapse; width: 78.5185%;"><colgroup><col style="width: 23.4646%;"></col><col style="width: 18.1092%;"></col><col style="width: 58.4262%;"></col></colgroup><tbody><tr><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35);"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr><td>**scene**</td><td>Scene&amp;</td><td>Scene to be manipulated</td></tr><tr><td>**state**</td><td>FeatStd::Int8</td><td>State of the scene to set.</td></tr></tbody></table>

**SetSceneTableState**

Called when a Scene-Table action is triggered, and the state of a Scene-Table is to be changed.

<table border="1" id="bkmrk-argument-name-type-d" style="border-collapse: collapse; width: 78.5185%; height: 119.188px;"><colgroup><col style="width: 23.4646%;"></col><col style="width: 18.1092%;"></col><col style="width: 58.4262%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Argument Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Type**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**sceneTable**</td><td style="height: 29.7969px;">SceneTable&amp;</td><td style="height: 29.7969px;">Scene-Table to be manipulated</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**entryId**</td><td style="height: 29.7969px;">FeatStd::Int32</td><td style="height: 29.7969px;">Id of the Scene-Table entry to be activated.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**hint**</td><td style="height: 29.7969px;">const char\*</td><td style="height: 29.7969px;">Optional hint string.</td></tr></tbody></table>

---

# Data-Model

The basic Data-Model used by the Interface-Buffer is completely generated. However, the user can still override the handling of update requests if needed.

---

# Tools

There are multiple tools include in the CGI Connector which also can be used directly without interfacing with the main Connector UI. These tools will be explained here.

# Interface-Code Generator

This tool is located at “cgi\_studio\_connector/bin/InterfaceCodeGenerator.exe” and is the main tool to generate the interface code. It has the following arguments:

It has the following arguments:

<table border="1" id="bkmrk-property-name-descri-22" style="border-collapse: collapse; width: 88.0247%; height: 233.375px;"><colgroup><col style="width: 20.927%;"></col><col style="width: 15.4494%;"></col><col style="width: 15.3068%;"></col><col style="width: 48.4572%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Full Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Short name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Optional**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-definitionFile** </td><td class="align-left" style="height: 29.7969px;">-d  
</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing interface definition</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-outputPath**</td><td class="align-left" style="height: 29.7969px;">-o</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Path for generated output files</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-dataModelClass**</td><td class="align-left" style="height: 29.7969px;">-dmc</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Fully qualified name of Data-Model</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-dataModelInclude**</td><td class="align-left" style="height: 29.7969px;">-dmi</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Include path for Data-Model</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-namespace**</td><td class="align-left" style="height: 29.7969px;">-n</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Namespace of generated code</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-xcdlNamespace**</td><td class="align-left" style="height: 29.7969px;">-xn</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Namespace of code generated by XCDL files</td></tr><tr style="height: 24.7969px;"><td style="height: 24.7969px;">**-complexTypes**</td><td class="align-left" style="height: 24.7969px;">-ct</td><td class="align-left" style="height: 24.7969px;">Yes</td><td style="height: 24.7969px;">Path of Complex-Type definition file</td></tr></tbody></table>

---

# Model-Code Generator

<span lang="EN-US">This tool is located at “cgi\_studio\_connector/bin/ModelCodeGenerator.exe” and generates a basic Data-Model based on the Courier-XCDL definition. This model is generated in such a way that the Interface-Buffer can easily interact with it.</span>

<span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">It has the following arguments:</span>

<table border="1" id="bkmrk-property-name-descri-22" style="border-collapse: collapse; width: 88.0247%; height: 238.375px;"><colgroup><col style="width: 20.927%;"></col><col style="width: 15.4494%;"></col><col style="width: 15.3068%;"></col><col style="width: 48.4572%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Full Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Short name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Optional**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-xcdlDefinitionFile** </td><td class="align-left" style="height: 29.7969px;">-xd  
</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">File containing XCDL definition</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-xcdlIncludePaths**</td><td class="align-left" style="height: 29.7969px;">-xi</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">XCDL include paths separated by ';'</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-className**</td><td class="align-left" style="height: 29.7969px;">-c</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">Output class and filename of generated files</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-namespace**</td><td class="align-left" style="height: 29.7969px;">-n</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Namespace of generated code</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-outputPath**</td><td class="align-left" style="height: 29.7969px;">-o</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Path for generated output files</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-includeFiles**</td><td class="align-left" style="height: 29.7969px;">-i</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">Include files separated by ';'. Must at least include root XCDL file.</td></tr></tbody></table>

---

# Build Command Line Interface

This tool is located at “cgi\_studio\_connector/bin/BuildCLI.exe” and allows the user to execute a build via the command line. The main purpose of this is to automate builds.

It has the following arguments:

<table border="1" id="bkmrk-property-name-descri-22" style="border-collapse: collapse; width: 88.0247%; height: 233.375px;"><colgroup><col style="width: 20.927%;"></col><col style="width: 15.4494%;"></col><col style="width: 15.3068%;"></col><col style="width: 48.4572%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Full Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Short name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Optional**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-connectorProject** </td><td class="align-left" style="height: 29.7969px;">-cp  
</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Connector Project file</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-buildProject**</td><td class="align-left" style="height: 29.7969px;">-bp</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Build Project file</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-buildName**</td><td class="align-left" style="height: 29.7969px;">-bn</td><td class="align-left" style="height: 29.7969px;">No</td><td style="height: 29.7969px;">Name of the Build to run</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**-buildOptions**</td><td class="align-left" style="height: 29.7969px;">-bo</td><td class="align-left" style="height: 29.7969px;">Yes</td><td style="height: 29.7969px;">Options for this build provided as 'NAME=VALUE' pairs separated by a semicolon</td></tr></tbody></table>

# Tool Support

# Overview

<span lang="EN-US">The CGI Connector offers support for multiple ‘tools’ for which it can generate specific code to make integration easier.</span>

<span lang="EN-US">Currently the following tools are supported:</span>

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 97.5309%; height: 76.7657px;"><colgroup><col style="width: 16.3511%;"></col><col style="width: 83.6489%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**Generic**</td><td style="height: 29.7969px;">Standard generic C/C++ interface for integration into other C/C++ based software.</td></tr><tr style="height: 17.1719px;"><td style="height: 17.1719px;">**MATLAB**</td><td style="height: 17.1719px;">Integration for MathWorks MATLAB

</td></tr></tbody></table>

---

# Generic

The ‘Generic’ tool provides a plain C/C++ based interface which can be used to integrate the CGI application into any C/C++ based software.

This generic interface is also the basis for the integration of other tools and will therefore always be present.

#### Special Features  


There are no tool specific features.

#### Limitations  


There are no limitations when using the ‘Generic’ tool.

#### Generators  


This tool does not use any special code generator tools.

---

# MATLAB

The ‘MATLAB’ tool offers special features to make integration into MathWorks MATLAB easier.

#### Requirements

The following requirements must be fulfilled to be able to use the CGI Connector with MATLAB:

**MATLAB Version:** The current version is tested to run with MATLAB 2021b. However newer versions are also expected to be compatible.

**MEX Compiler:** It is necessary to configure the compiler that is used by MATLAB to build a MEX File. This can be achieved by calling “mex -setup" and “mex -setup c++” from within MATLAB. The configured compiler must match with the compiler used to build the CGI Studio application.

The “mex” command must also be executable from the command line. This can be done by adding the correct path in the systems environment variables. Alternatively, the build scripts can be modified to point directly to the mex executable.

#### Special Features

Interfaces defined in a MATLAB module have the following tool specific properties.

<div drawio-diagram="8519"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-08/drawing-7-1754986857.png" alt=""/></div>

<table border="1" id="bkmrk-property-name-descri" style="border-collapse: collapse; width: 97.5309%; height: 219.953px;"><colgroup><col style="width: 16.3511%;"></col><col style="width: 83.6489%;"></col></colgroup><tbody><tr style="height: 16.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 16.7969px;"><span style="color: rgb(255, 255, 255);">**Property Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 16.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">**Port**</td><td style="height: 46.5938px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Defines the port index of the interface for the generated MATLAB S-Function block.  
When specifying ‘-1’ the port index will be calculated automatically during code generation.</span></td></tr><tr><td>**Port Width**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Specifies the MATLAB port width. This option is only visible if the interface uses a dynamic length datatype. </span></td></tr></tbody></table>

#### Limitations

Currently the following limitation apply:

- Interfaces that use dynamic sized data need to specify a fixed sized for MATLAB side. See <span style="color: rgb(230, 126, 35);">[“Special Features”](https://doc316en.candera.eu/link/1236#bkmrk-special-features)</span> for more details.

#### Generators

This tool is located at “cgi\_studio\_connector/bin/MatlabCodeGenerator.exe” and generates files to be used in MathWorks MATLAB.

It has the following arguments:

<table border="1" id="bkmrk-full-name-short-name" style="border-collapse: collapse; width: 97.5309%; height: 51.3907px;"><colgroup><col style="width: 16.3498%;"></col><col style="width: 13.0545%;"></col><col style="width: 11.2831%;"></col><col style="width: 59.3125%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Full Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Short Name**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Optional**</span></td><td class="align-center" style="background-color: rgb(230, 126, 35); height: 29.7969px;"><span style="color: rgb(255, 255, 255);">**Description**</span></td></tr><tr style="height: 21.5938px;"><td style="height: 21.5938px;">**-definitionFile**</td><td style="height: 21.5938px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">-d</span></td><td style="height: 21.5938px;"><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">No</span></td><td style="height: 21.5938px;">File containing interface definition</td></tr><tr><td>**-complexTypes**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">-ct</span></td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Yes</span></td><td>Path of Complex-Type definition file</td></tr><tr><td>**-outputPath**</td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">-o</span></td><td><span lang="EN-US" style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 107%; font-family: 'Daytona',sans-serif; mso-fareast-font-family: 游明朝; mso-fareast-theme-font: minor-fareast; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: JA; mso-bidi-language: AR-SA;">Yes</span></td><td>Path for generated output files</td></tr></tbody></table>

#### Usage

<span lang="EN-US">To use the MATLAB integration the following steps are required.</span>

1. <span lang="EN-US">**Build CGI Application**  
    As the integration into MATLAB simulation uses TCP/IP to send data between MATLAB and the CGI Application, this feature needs to be enabled. To do this the ‘APPLICATION\_IPC\_ENABLED’ and ‘APPLICATION\_IPC\_INTERFACE\_ENABLED’ CMake flags must be set. This is already done when building the application using the default builds from within the Connector.  
      
    When running the generated MATLAB code after integration into the application code the IPC communication is however not required anymore.  
      
    </span>
2. **<span lang="EN-US">Build Integration Modules</span>**<span lang="EN-US">  
    </span>After the application is built, the ‘MATLAB Integration’ can be built. The integration must be built matching the Release/Debug configuration of the CGI Application.
    
      
    If the MATLAB application is already opened and the Model has been started before, it is required to unload the S-Function from MATLAB before building a new version. This can be done by running ‘clear mex’ command in MATLAB.
    
      
    <div drawio-diagram="8320"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744616582.png" alt=""/></div>
3. **Startup MATLAB model** After the build is finished, the MATLAB application can be opened. The default template includes all related MATLAB component in the ‘src\\Matlab’ folder.  
    <div drawio-diagram="8329"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744870709.png" alt=""/></div>
    
    The ‘CgiStudio\_Startup.m’ script needs to be run in MATLAB to include the ‘CgiStudio’ code folder and files.
    
    <div drawio-diagram="7231"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730343288.png" alt=""/></div>
    
    If already run before, it is sufficient to only run the ‘CgiStudio/Synchronize.m’ script.
4. **Add CGI Studio block**  
    The integration provides a ‘CGI Studio’ library which contains the ‘CGI Studio Integration’ block.   
    <div drawio-diagram="7232"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730343343.png" alt=""/></div>
    
    This block can be added to the Model to represent a Module defined with the CGI Connector. The provided ‘ControllerModule’ model already contains one such block per default.
5. **Configure Module**  
    After a ‘CGI Studio Integration’ block has been added, it can be configured by double clicking it. This will open a dialog which allows the user to select the module this block should represent. Additionally, the Sample Time for the block can be configured.  
    <div drawio-diagram="8321"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-04/drawing-7-1744616640.png" alt=""/></div>
    
    After the module has been selected, the block will show all configured input- and output interfaces as ports.
    
    <div drawio-diagram="7234"><img src="https://doc316en.candera.eu/uploads/images/drawio/2024-10/drawing-7-1730343417.png" alt=""/></div>
    
    <p class="callout info">It might be required to update the model (CTRL + D) to show the ports.  
    </p>
6. **Running the Simulation**  
    When running the simulation, the CGI Application must be started beforehand. Similar after stopping the simulation the CGI Application should be closed afterwards.

#### Additional Information

**<span lang="EN-US">Actions/Events: </span>**<span lang="EN-US">Actions are triggered by any flank change. If an action has additional data an additional port with the suffix ‘\_Data’ is generated. The same applies also to events.</span>

<span lang="EN-US">**Module Changes:** If a module can’t be found in the generated code, the block will indicate this by adding ‘\[Not found\]’ to the Module name. If the containing MATLAB model is opened newly no ports will be generated and connected signals will be disconnected. If the model has already been opened before, the latest generated ports will be kept (until it is reopened). Therefore, if the name of a module is changed, it is recommended to open the MATLAB model before generating the new integration code. Doing so will keep all signals connected.</span>

<span lang="EN-US">**S-Function:** It is possible to directly use the generated S-Function without making use of the CGI Studio block, by using a standard S-Function block.</span>

<div drawio-diagram="8520"><img src="https://doc316en.candera.eu/uploads/images/drawio/2025-08/drawing-7-1754987003.png" alt=""/></div>

The name of the S-Function is “CgiStudioIntegration”, and the first parameter indicates the MATLAB-Id of the module the block should represent. This Id can be found in the Interface-Definition XML file or the generated MATLAB code (e.g. in ‘\[PROJECT\]srcMatlab\\CgiStudio\\Modules.xml’ called MID). The second parameter refers to the sample time of the S-Function.

In this case no named ports will be generated for the module.

---