def create_typecode_inner_struct():
    return dds.StructType(
        "InnerStruct",
        [
            dds.Member("x", dds.Float64Type()),
            dds.Member("y", dds.Float64Type())
        ],
    )
def get_keyed_string_dynamic_type():
    keyed_string_struct = dds.StructType('DynamicKeyedString')
    keyed_string_struct.add_member(
        dds.Member('key', dds.StringType(100), is_key=True))
    keyed_string_struct.add_member(dds.Member('value', dds.StringType(100)))
    return keyed_string_struct
def create_typecode_outer_struct():
    outer_struct = dds.StructType("OuterStruct")
    outer_struct.add_member(dds.Member("inner",
                                       create_typecode_inner_struct()))
    return outer_struct
Ejemplo n.º 4
0
import rti.connextdds as dds
import utils
import pytest
import pathlib
import array

FILE = str(
    pathlib.Path(__file__).parent.absolute()) + "/../xml/UnionWithEnum.xml"

PROVIDER = dds.QosProvider(FILE)
UNION = PROVIDER.type("TestUnionWithEnum")
ENUM_TYPE = PROVIDER.type("TestEnum")
UNION_DEFAULT_TYPE = PROVIDER.type("TestUnionWithDefault")

PRIMITIVES = dds.StructType("Primitives")
PRIMITIVES.add_member(dds.Member("myLong", dds.Int32Type()))
PRIMITIVES.add_member(dds.Member("myDouble", dds.Float64Type()))

COMPLEX = dds.StructType("Complex")
COMPLEX.add_member(
    dds.Member("myLongSeq", dds.SequenceType(dds.Int32Type(), 10)))
COMPLEX.add_member(
    dds.Member("myLongArray", dds.ArrayType(dds.Int32Type(), 10)))
COMPLEX.add_member(dds.Member("myOptional", dds.Int32Type(), is_optional=True))
COMPLEX.add_member(dds.Member("myString", dds.StringType(100)))
COMPLEX.add_member(
    dds.Member("myStringSeq", dds.SequenceType(dds.StringType(10), 10)))
COMPLEX.add_member(dds.Member("myEnum", ENUM_TYPE))
COMPLEX.add_member(dds.Member("myEnumSeq", dds.SequenceType(ENUM_TYPE, 10)))
COMPLEX.add_member(
    dds.Member("myMultiDimArray", dds.ArrayType(dds.Int32Type(), [2, 2, 2])))