CARLA
Loading...
Searching...
No Matches
LibCarla
source
carla
ros2
middleware
ActiveMiddleware.cpp
Go to the documentation of this file.
1
// Copyright (c) 2026 Computer Vision Center (CVC) at the Universitat Autonoma de Barcelona (UAB).
2
// This work is licensed under the terms of the MIT license.
3
// For a copy, see <https://opensource.org/licenses/MIT>.
4
5
#include "
carla/ros2/middleware/ActiveMiddleware.h
"
6
#include "
carla/ros2/middleware/MiddlewareFactory.h
"
7
8
namespace
carla
{
9
namespace
ros2 {
10
11
bool
SetActiveMiddleware
(
Middleware
requested) {
12
const
auto
resolution =
MiddlewareFactory::ResolveMiddleware
(requested);
13
if
(resolution.success) {
14
MiddlewareFactory::SetMiddleware
(resolution.middleware);
15
}
16
return
resolution.success;
17
}
18
19
std::string
GetAvailableMiddleware
() {
20
return
MiddlewareFactory::GetAvailableMiddlewareString
();
21
}
22
23
ResolvedDomainId
SetActiveDomainId
(
int
domain_id) {
24
MiddlewareConfig::SetDomainId
(domain_id);
25
return
MiddlewareConfig::ResolveEffective
();
26
}
27
28
}
// namespace ros2
29
}
// namespace carla
ActiveMiddleware.h
MiddlewareFactory.h
carla::ros2::MiddlewareConfig::ResolveEffective
static ResolvedDomainId ResolveEffective()
Resolve the effective domain id and its source from the configured value, the ROS_DOMAIN_ID environme...
Definition
MiddlewareConfig.h:119
carla::ros2::MiddlewareConfig::SetDomainId
static void SetDomainId(int id)
Configure the ROS 2 domain id for all subsequent transport contexts.
Definition
MiddlewareConfig.h:107
carla::ros2::MiddlewareFactory::SetMiddleware
static void SetMiddleware(Middleware middleware)
Select the middleware for all subsequent publisher/subscriber creation.
Definition
MiddlewareFactory.h:40
carla::ros2::MiddlewareFactory::GetAvailableMiddlewareString
static std::string GetAvailableMiddlewareString()
Return a readable list of middleware implementations compiled into this binary.
Definition
MiddlewareFactory.h:91
carla::ros2::MiddlewareFactory::ResolveMiddleware
static MiddlewareResolution ResolveMiddleware(Middleware requested)
Resolve the requested middleware strictly — no fallback to other middleware.
Definition
MiddlewareFactory.h:82
carla::ros2::GetAvailableMiddleware
std::string GetAvailableMiddleware()
Definition
ActiveMiddleware.cpp:19
carla::ros2::Middleware
Middleware
Enumeration of available middleware implementations.
Definition
Middleware.h:15
carla::ros2::SetActiveMiddleware
bool SetActiveMiddleware(Middleware requested)
DDS-free bridge for selecting the active middleware across the shared-library boundary.
Definition
ActiveMiddleware.cpp:11
carla::ros2::SetActiveDomainId
ResolvedDomainId SetActiveDomainId(int domain_id)
Store the domain id in the shared library's MiddlewareConfig and return the effective domain id resol...
Definition
ActiveMiddleware.cpp:23
carla
This file contains definitions of common data structures used in traffic manager.
Definition
SignComponent.h:21
carla::ros2::ResolvedDomainId
The resolved domain id together with the source it came from.
Definition
MiddlewareConfig.h:42
Generated by
1.9.8