RTI Connext Modern C++ API Version 7.6.0
Supporting Types and Constants

Miscellaneous, general-purpose types and constants. More...

Classes

class  dds::core::external< T >
 A managed reference to an object. More...
 
class  dds::core::basic_string< CharType, Allocator >
 <<value-type>> A string convertible to std::string and with similar functionality More...
 
class  rti::core::bounded_sequence< T, MaxLength >
 <<value-type>> A bounded sequence of elements More...
 
class  rti::core::ListenerBinder< Entity, Listener >
 <<reference-type>> Automatically manages the association of an Entity and a Listener More...
 
class  rti::core::LongDouble
 <<extension>> <<value-type>> Encapsulates an IDL long double More...
 
struct  rti::core::xtypes::octet_tag_t
 <<extension>> <<value-type>> A special template type to obtain an IDL octet DynamicType from primitive_type More...
 
class  dds::core::optional< T >
 <<value-type>> Represents an object that may not contain a valid value More...
 
class  rti::core::optional_value< T >
 <<extension>> Represents a value that can be initialized or not More...
 
class  rti::core::UnregisterThreadOnExit
 <<extension>> Utility that calls rti::core::unregister_thread when leaving scope More...
 
struct  rti::core::qos_print_all_t
 A tag type that selects the to_string overload that prints all the values of a Qos object. More...
 
class  dds::core::vector< T >
 <<value-type>> A vector convertible to std::vector and with similar functionality More...
 

Typedefs

using dds::core::external< T >::shared_ptr = std::shared_ptr< T >
 The smart pointer that external<T> uses. More...
 
typedef basic_string< char, rti::core::memory::OsapiAllocator< char > > dds::core::string
 A string convertible to std::string and with similar functionality. More...
 
typedef basic_string< DDS_Wchar, rti::core::memory::OsapiAllocator< DDS_Wchar > > dds::core::wstring
 An IDL-derived wide string. More...
 
typedef std::vector< uint8_t > dds::core::ByteSeq
 A vector of bytes. More...
 
typedef std::vector< std::string > dds::core::StringSeq
 A vector of strings. More...
 
typedef std::nullptr_t dds::core::null_type
 <<C++11>> The type of dds::core::null More...
 
template<typename T >
using omg::types::optional = dds::core::optional< T >
 Optional type according to the IDL4-C++ OMG specification. Alias of dds::core::optional. More...
 
template<typename T >
using omg::types::sequence = std::vector< T >
 Unbounded sequence type according to the IDL4-C++ OMG specification. Alias of std::vector. More...
 
template<typename T , size_t N>
using omg::types::bounded_sequence = rti::core::bounded_sequence< T, N >
 Bounded sequence type according to the IDL4-C++ OMG specification. Alias of rti::core::bounded_sequence. More...
 
using omg::types::string_view = std::string_view
 String view type according to the IDL4-C++ OMG specification. Alias of std::string_view when the compiler supports it. More...
 
using omg::types::wstring_view = std::wstring_view
 Wstring view type according to the IDL4-C++ OMG specification. Alias of std::wstring_view when the compiler supports it. More...
 

Functions

void rti::core::unregister_thread ()
 <<extension>> Allows you to release thread-specific resources kept by RTI Connext on platforms that do not support automatic thread-specific storage (TSS) cleanup. More...
 

Variables

const int32_t dds::core::LENGTH_UNLIMITED = -1
 A special value indicating an unlimited quantity. More...
 
const null_type dds::core::null
 Indicates an empty reference. More...
 
constexpr int32_t rti::core::length_auto = -2
 A special value indicating an auto quantity. More...
 
const qos_print_all_t rti::core::qos_print_all
 Sentinel value that selects the to_string overload that prints all of the values of a Qos object. More...
 

Detailed Description

Miscellaneous, general-purpose types and constants.

Typedef Documentation

◆ shared_ptr

template<typename T >
using dds::core::external< T >::shared_ptr = std::shared_ptr<T>

The smart pointer that external<T> uses.

◆ string

typedef basic_string<char, rti::core::memory::OsapiAllocator<char> > dds::core::string

A string convertible to std::string and with similar functionality.

See also
basic_string
Examples
Foo.hpp.

◆ wstring

typedef basic_string<DDS_Wchar, rti::core::memory::OsapiAllocator<DDS_Wchar> > dds::core::wstring

An IDL-derived wide string.

IDL wstring maps to this type in the C++ API.

It's character type is DDS_Wchar, a portable 4-byte character type.

See also
basic_string

◆ ByteSeq

typedef std::vector<uint8_t> dds::core::ByteSeq

A vector of bytes.

◆ StringSeq

typedef std::vector<std::string> dds::core::StringSeq

A vector of strings.

◆ null_type

typedef std::nullptr_t dds::core::null_type

◆ optional

template<typename T >
using omg::types::optional = typedef dds::core::optional<T>

Optional type according to the IDL4-C++ OMG specification. Alias of dds::core::optional.

◆ sequence

template<typename T >
using omg::types::sequence = typedef std::vector<T>

Unbounded sequence type according to the IDL4-C++ OMG specification. Alias of std::vector.

◆ bounded_sequence

template<typename T , size_t N>
using omg::types::bounded_sequence = typedef rti::core::bounded_sequence<T, N>

Bounded sequence type according to the IDL4-C++ OMG specification. Alias of rti::core::bounded_sequence.

◆ string_view

using omg::types::string_view = typedef std::string_view

String view type according to the IDL4-C++ OMG specification. Alias of std::string_view when the compiler supports it.

Examples
Foo.hpp.

◆ wstring_view

using omg::types::wstring_view = typedef std::wstring_view

Wstring view type according to the IDL4-C++ OMG specification. Alias of std::wstring_view when the compiler supports it.

Function Documentation

◆ unregister_thread()

void rti::core::unregister_thread ( )

<<extension>> Allows you to release thread-specific resources kept by RTI Connext on platforms that do not support automatic thread-specific storage (TSS) cleanup.

Refer to the Platform Notes to see if your platform supports automatic TSS cleanup. It will be mentioned in the 'Thread Configuration' sub-section of the platform you are using.

On platforms that do not support automatic TSS cleanup, you should call this function right before exiting a thread where any DDS API was used. It is safe to call this function even if no DDS API was used, in cases where you are unsure if a DDS API was called or not. It is also safe, although unnecessary, to call this API on platforms that support automatic TSS cleanup.

RTI Connext stores some resources in TSS. For internal threads, these resources are cleaned up by the middleware when the threads exit. For user threads, calling this API will free all the resources related to the specific thread.

The best approach is to call the function during the thread deletion after all the DDS APIs have been called.

See Unregistering Threads, in the Core Libraries User's Manual, for the equivalent API call in each of the supported language bindings.

Exceptions
Oneof the Standard Exceptions
See also
UnregisterThreadOnExit

Referenced by rti::core::UnregisterThreadOnExit::~UnregisterThreadOnExit().

Variable Documentation

◆ LENGTH_UNLIMITED

const int32_t dds::core::LENGTH_UNLIMITED = -1

A special value indicating an unlimited quantity.

Referenced by dds::topic::Topic< T >::discover_any_topic(), and dds::topic::Topic< T >::discover_topic_data().

◆ null

◆ length_auto

constexpr int32_t rti::core::length_auto = -2
constexpr

A special value indicating an auto quantity.

◆ qos_print_all

const qos_print_all_t rti::core::qos_print_all
extern

Sentinel value that selects the to_string overload that prints all of the values of a Qos object.

See also
rti::sub::qos::to_string