Index

Package: DDS.Builtin_String_TypeSupport

Description

package DDS.Builtin_String_TypeSupport is

Summary: <<interface>> String type support.

Classes

Ref

type Ref is new Standard.DDS.TypeSupport.Ref with null record;

Primitive operations:

Create_TypedDataReaderI
Create_TypedDataWriterI
Destroy_TypedDataReaderI
Destroy_TypedDataWriterI

Types

Ref_Access

type Ref_Access is access all Ref'Class;

Subprograms & Entries

Create_TypedDataReaderI

function Create_TypedDataReaderI 
(Self: access Ref) return Standard.DDS.DataReader.Ref_Access;

Destroy_TypedDataReaderI

procedure Destroy_TypedDataReaderI 
(Self: access Ref;
Reader: in out Standard.DDS.DataReader.Ref_Access);

Create_TypedDataWriterI

function Create_TypedDataWriterI 
(Self: access Ref) return Standard.DDS.DataWriter.Ref_Access;

Destroy_TypedDataWriterI

procedure Destroy_TypedDataWriterI 
(Self: access Ref;
Writer: in out Standard.DDS.DataWriter.Ref_Access) is null;

Register_Type

procedure Register_Type 
(Participant: not null access Standard.DDS.DomainParticipant.Ref'Class;
Type_Name: in Standard.DDS.String);

Summary: Allows an application to communicate to RTI Connext the existence of the char* data type.

By default, The char* built-in type is automatically registered when a DomainParticipant is created using the type_name returned by DDSStringTypeSupport.get_type_name. Therefore, the usage of this function is optional and it is only required when the automatic built-in type registration is disabled using the participant property "dds.builtin_type.auto_register".

This procedure can also be used to register the same DDSStringTypeSupport with a DDS.DomainParticipant using different values for the type_name.

If register_type is called multiple times with the same DDS.DomainParticipant and type_name, the second (and subsequent) registrations are ignored by the operation.

participant: <<in>> the DDS.DomainParticipant to register the data type char* with. Cannot be ull_value.

type_name: <<in>> the type name under with the data type char* is registered with the participant; this type name is used when creating a new DDS.Topic. (See DDS.DomainParticipant.create_topic.) The name may not be ull_value or longer than 255 characters.

Raises: One of the DDSReturnTypesModules_std_retcodes, DDS.RETCODE_PRECONDITION_NOT_MET or DDS.RETCODE_OUT_OF_RESOURCES.

MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously make the first call to register a type. Subsequent calls are thread safe.


See also: DDS.DomainParticipant.create_topic

Unregister_Type

procedure Unregister_Type 
(Participant: not null access Standard.DDS.DomainParticipant.Ref'Class;
Type_Name: in Standard.DDS.String);

Summary: Allows an application to unregister the char* data type from dds. After calling unregister_type, no further communication using this type is possible.

Precondition: The char* type with type_name is registered with the participant and all DDS.Topic objects referencing the type have been destroyed. If the type is not registered with the participant, or if any DDS.Topic is associated with the type, the operation will fail with DDS.RETCODE_ERROR.

Postcondition: All information about the type is removed from dds. No further communication using this type is possible.

participant: <<in>> the DDS.DomainParticipant to unregister the data type char* from. Cannot be ull_value.

type_name: <<in>> the type name under with the data type char* is registered with the participant. The name should match a name that has been previously used to register a type with the participant. Cannot be ull_value.

Raises: One of the DDSReturnTypesModules_std_retcodes, DDS.RETCODE_BAD_PARAMETER or DDS.RETCODE_ERROR

MT Safety:
SAFE.


See also: DDSStringTypeSupport.register_type

Get_Type_Name

function Get_Type_Name return Standard.DDS.String;

Summary: Get the default name for the char* type.

Can be used for calling DDSStringTypeSupport.register_type or creating DDS.Topic.

Returns: default name for the char* type.


See also: DDSStringTypeSupport.register_type
See also: DDS.DomainParticipant.create_topic

Get_Type_Name

procedure Get_Type_Name 
(name: out Standard.DDS.String);

Create_Data

function Create_Data 
(AllocatePointers: in Boolean := True) return DDS.String;

Delete_Data

procedure Delete_Data 
(A_Data: in out DDS.String;
DeletePointers: in Boolean := True);

Print_Data

procedure Print_Data 
(A_Data: DDS.String);

Summary: <<ext>> Print value of data type to standard out.

The generated implementation of the operation knows how to print value of a data type.

a_data: <<in>> String to be printed.

Copy_Data

procedure Copy_Data 
(desc: DDS.String;
source: DDS.String);

Initialize_Data

procedure Initialize_Data 
(a_data: DDS.String);

Finalize_Data

procedure Finalize_Data 
(a_data: DDS.String);

Create_Data_w_Size

function Create_Data_w_Size 
(size: Integer) return DDS.String;

Initialize_Data_w_Size

procedure Initialize_Data_w_Size 
(a_data: DDS.String;
size: Integer);