RTI Connext Modern C++ API Version 7.3.0
|
How DDS return codes map to C++ exceptions.
How DDS return codes map to C++ exceptions.
The following is a list of the exceptions that may be thrown by RTI Connext. They are a part of the dds::core namespace and can also be found in hpp/dds/core/Exception.hpp. The *Error classes can be caught simply by catching an std::exception.
modern C++ API Exception Class | DDS PIM Return Code | Std C++ Parent Exception |
---|---|---|
Normal return; no exception | RETCODE_OK | N/A |
An informational state attached to a normal return; no exception | RETCODE_NO_DATA | N/A |
Error | RETCODE_ERROR | std::logic_error |
InvalidArgumentError | RETCODE_BAD_PARAMETER | std::invalid_argument |
TimeoutError | RETCODE_TIMEOUT | std::runtime_error |
UnsupportedError | RETCODE_UNSUPPORTED | std::logic_error |
AlreadyClosedError | RETCODE_ALREADY_DELETED | std::logic_error |
IllegalOperationError | RETCODE_ILLEGAL_OPERATION | std::logic_error |
NotEnabledError | RETCODE_NOT_ENABLED | std::logic_error |
PreconditionNotMetError | RETCODE_PRECONDITION_NOT_MET | std::logic_error |
ImmutablePolicyError | RETCODE_IMMUTABLE_POLICY | std::logic_error |
InconsistentPolicyError | RETCODE_INCONSISTENT_POLICY | std::logic_error |
OutOfResourcesError | RETCODE_OUT_OF_RESOURCES | std::runtime_error |
InvalidDowncastError | N/A | std::runtime_error |
NullReferenceError | N/A | std::runtime_error |
InvalidDataError | N/A | std::logic_error |