Skip to main content

XML Definition

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.

ComplexTypeDefinition-Element

Root Element. List of Complex types.

Attributes:
None

Children:

Argument Occurrence Description
ComplexType 0 - * Complex type

ComplexType-Element

Defines a specific Complex type.

Attributes:

Argument Occurrence Description
native_type Yes Native data type (e.g. Candera::Vector3)
basic_type Yes Corresponding basic type. Valid values are:
- Double
- Single
- Int8
- UInt8
- Int16
- UInt16
- Int32
- UInt32
- Int64
- UInt64
- Bool
basic_type_length Yes Length of basic type
-1: Dynamic size
>0: Fixed size
default_value Yes Default value of type

Children:
None

Sample

Below a sample XML file is shown

<?xml version="1.0"?>

<ComplexTypeDefinition xsi:noNamespaceSchemaLocation="../../tools/Core/Schema/ComplexType.xsd"

                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <ComplexType native_type="Candera::Vector2" basic_type="Single" basic_type_length="2"

default_value="Candera::Vector2(0.0F, 0.0F)"/>

    <ComplexType native_type="Candera::Vector3" basic_type="Single" basic_type_length="3"

default_value="Candera::Vector3(0.0F, 0.0F, 0.0F)"/>

    <ComplexType native_type="FeatStd::String" basic_type="UInt8" basic_type_length="-1"

default_value="FeatStd::String(&quot;&quot;)"/>

    <ComplexType native_type="Custom::ByteArray" basic_type="UInt8" basic_type_length="-1"

default_value=""/>

</ComplexTypeDefinition>