| Fast DDS Version 3.3.0 Fast DDS

Loading...
Searching...
No Matches
eprosima::fastdds::dds::rpc Namespace Reference

## Classes

class | RemoteInvalidArgumentError
| Exception thrown by the RPC API when the server reports invalid arguments. More...
class | RemoteOutOfResourcesError
| Exception thrown by the RPC API when the server reports out of resources. More...
class | RemoteUnknownExceptionError
| Exception thrown by the RPC API when the service implementation raises an unspecified exception. More...
class | RemoteUnknownOperationError
| Exception thrown by the RPC API when the server does not recognize the invoked operation. More...
class | RemoteUnsupportedError
| Exception thrown by the RPC API when the server reports an unsupported operation. More...
class | RpcBrokenPipeException
| Exception thrown by the RPC API when the communication with the remote endpoint breaks. More...
class | RpcException
| Base class for all exceptions thrown by the RPC API. More...
class | RpcFeedCancelledException
| Exception thrown by the RPC API when the client cancels an input feed. More...
class | RpcOperationError
| Base class for exceptions thrown by the RPC API when the server communicates an error. More...
class | RpcRemoteException
| Base class for exceptions that map to a RpcExceptionCode_t. More...
class | RpcTimeoutException
| Exception thrown by the RPC API when an operation times out. More...
class | RpcClientReader
| An interface for a client-side RPC reader. More...
class | RpcClientWriter
| An interface for a client-side RPC writer. More...
class | RpcRequest
| An interface with generic RPC requests functionality. More...
class | RpcServer
| An interface with generic RPC server functionality. More...
class | RpcServerReader
| An interface for a server-side RPC reader. More...
class | RpcServerSchedulingStrategy
| An interface with generic RPC requests functionality. More...
class | RpcServerWriter
| An interface for a server-side RPC writer. More...
class | Replier
| Base class for a Replier in the RPC communication. More...
class | Requester
| Base class for a Requester in the RPC communication. More...
class | RPCEntity
| Abstract base class for all RPC Objects. More...
class | Service
| Base class for a Service in the RPC communication. More...
class | ServiceTypeSupport

## Typedefs

template<typename T>
using | RpcFuture = std::future<T>
using | RpcStatusCode = uint32_t
| Status codes for RPC operations.
using | RequestInfo = SampleInfo

## Enumerations

enum class | RemoteExceptionCode_t : int32_t { REMOTE_EX_OK , REMOTE_EX_UNSUPPORTED , REMOTE_EX_INVALID_ARGUMENT , REMOTE_EX_OUT_OF_RESOURCES , REMOTE_EX_UNKNOWN_OPERATION , REMOTE_EX_UNKNOWN_EXCEPTION }
| Enumeration of possible error codes that can be returned by a remote service. More...

## Functions

FASTDDS_EXPORTED_API void | register_RpcException_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcException related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcBrokenPipeException_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcBrokenPipeException related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcStatusCode_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcStatusCode related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcFeedCancelledException_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcFeedCancelledException related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcOperationError_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcOperationError related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RemoteExceptionCode_t_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RemoteExceptionCode_t related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcRemoteException_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcRemoteException related TypeIdentifier.
FASTDDS_EXPORTED_API void | register_RpcTimeoutException_type_identifier (eprosima::fastdds::dds::xtypes::TypeIdentifierPair &type_ids)
| Register RpcTimeoutException related TypeIdentifier.

## Variables

constexpr RpcStatusCode | RPC_STATUS_CODE_OK = 0
| Status code for successful operations.

## Typedef Documentation

## ◆ RequestInfo

using RequestInfo = SampleInfo

## ◆ RpcFuture

template<typename T>

using RpcFuture = std::future<T>

## ◆ RpcStatusCode

using RpcStatusCode = uint32_t

Status codes for RPC operations.

## Enumeration Type Documentation

## ◆ RemoteExceptionCode_t

enum class RemoteExceptionCode_t : int32_t

strong

Enumeration of possible error codes that can be returned by a remote service.

Extracted from DDS-RPC v1.0 - 7.5.2 Mapping of Error Codes.

Enumerator
REMOTE_EX_OK | The request was executed successfully.
REMOTE_EX_UNSUPPORTED | Operation is valid but it is unsupported (a.k.a. not implemented).
REMOTE_EX_INVALID_ARGUMENT | The value of a parameter passed has an illegal value.
REMOTE_EX_OUT_OF_RESOURCES | The remote service ran out of resources while processing the request.
REMOTE_EX_UNKNOWN_OPERATION | The operation called is unknown.
REMOTE_EX_UNKNOWN_EXCEPTION | A generic, unspecified exception was raised by the service implementation.

## Function Documentation

## ◆ register_RemoteExceptionCode_t_type_identifier()

FASTDDS_EXPORTED_API void register_RemoteExceptionCode_t_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RemoteExceptionCode_t related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcBrokenPipeException_type_identifier()

FASTDDS_EXPORTED_API void register_RpcBrokenPipeException_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcBrokenPipeException related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcException_type_identifier()

FASTDDS_EXPORTED_API void register_RpcException_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcException related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcFeedCancelledException_type_identifier()

FASTDDS_EXPORTED_API void register_RpcFeedCancelledException_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcFeedCancelledException related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcOperationError_type_identifier()

FASTDDS_EXPORTED_API void register_RpcOperationError_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcOperationError related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcRemoteException_type_identifier()

FASTDDS_EXPORTED_API void register_RpcRemoteException_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcRemoteException related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcStatusCode_type_identifier()

FASTDDS_EXPORTED_API void register_RpcStatusCode_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcStatusCode related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## ◆ register_RpcTimeoutException_type_identifier()

FASTDDS_EXPORTED_API void register_RpcTimeoutException_type_identifier | ( | eprosima::fastdds::dds::xtypes::TypeIdentifierPair & | type_ids | ) |

Register RpcTimeoutException related TypeIdentifier.

Fully-descriptive TypeIdentifiers are directly registered. Hash TypeIdentifiers require to fill the TypeObject information and hash it, consequently, the TypeObject is indirectly registered as well.

Parameters

  [out] | type_ids | TypeIdentifier of the registered type. The returned TypeIdentifier corresponds to the complete TypeIdentifier in case of hashed TypeIdentifiers. Invalid TypeIdentifier is returned in case of error.

## Variable Documentation

## ◆ RPC_STATUS_CODE_OK

RpcStatusCode RPC_STATUS_CODE_OK = 0

constexpr

Status code for successful operations.