RTI Connext Modern C++ API  Version 6.1.0

Represents the Builder for an arbitrary user-defined mutable IDL union. More...

#include <Builder.hpp>

Inheritance diagram for MyFlatUnionBuilder:
rti::flat::UnionBuilder< int32_t > rti::flat::AggregationBuilder rti::flat::AbstractBuilder

Public Types

typedef MyFlatUnionOffset Offset
 The related offset type. More...

Public Member Functions

 MyFlatUnionBuilder ()
 Creates an invalid Builder. More...
Offset finish ()
 Finishes building a member. More...
MyFlatUnionfinish_sample ()
 Finishes building a sample. More...
bool add_my_primitive (int32_t value)
 Adds a primitive member. More...
MyFlatMutableBuilder build_my_mutable (int32_t discriminator=1)
 Builds a mutable-struct member. More...
MyFlatFinal::Offset add_my_final ()
 Adds a final-struct member. More...
- Public Member Functions inherited from rti::flat::AbstractBuilder
void discard ()
 Discards a member in process of being built. More...
bool is_nested () const
 Returns whether this is a member Builder. More...
bool is_valid () const
 Whether this Builder is valid. More...
rti::xcdr::length_t capacity () const
 Returns the total capacity in bytes. More...

Additional Inherited Members

- Protected Member Functions inherited from rti::flat::AbstractBuilder
virtual ~AbstractBuilder ()
 If this is a member Builder, it calls finish(). More...

Detailed Description

Represents the Builder for an arbitrary user-defined mutable IDL union.

This example type represents the Builder type that rtiddsgen would generate for MyFlatUnion and allows creating a sample or a member of that type.

Union builders are similar to struct builders (see MyFlatMutableBuilder), except that they only allow adding/building one member.

"Add" and "build" functions automatically set the discriminator value that in the IDL definition selects that member. If more than one discriminator value selects a member, the add/build function allows picking one.

Member Typedef Documentation

◆ Offset

The related offset type.

Constructor & Destructor Documentation

◆ MyFlatUnionBuilder()

MyFlatUnionBuilder::MyFlatUnionBuilder ( )

Creates an invalid Builder.

Top-level builders are created with rti::flat::build_data(), and member builders are created with the corresponding build_<member> function.

Member Function Documentation

◆ finish()

Offset MyFlatUnionBuilder::finish ( )

Finishes building a member.

See also

◆ finish_sample()

MyFlatUnion* MyFlatUnionBuilder::finish_sample ( )

Finishes building a sample.

See also

◆ add_my_primitive()

bool MyFlatUnionBuilder::add_my_primitive ( int32_t  value)

Adds a primitive member.

This function automatically selects the discriminator 0, which corresponds to the member 'my_primitive' (see MyFlatUnion)

◆ build_my_mutable()

MyFlatMutableBuilder MyFlatUnionBuilder::build_my_mutable ( int32_t  discriminator = 1)

Builds a mutable-struct member.

discriminatorAllows selecting one of the possible discriminator values for this member: 1 or 2. This argument is optional: if not specified it selects the first 'case' label in the IDL definition (1).
The Builder to build this member

◆ add_my_final()

MyFlatFinal::Offset MyFlatUnionBuilder::add_my_final ( )

Adds a final-struct member.

The Offset to the member, which can be used to set its values.

This function automatically selects the discriminator value 3, which corresponds to the member 'my_final' (see MyFlatUnion).