CARLA
Loading...
Searching...
No Matches
LibCarla
source
carla
ros2
publishers
CarlaClockPublisher.cpp
Go to the documentation of this file.
1
// Copyright (c) 2026 Computer Vision Center (CVC) at the Universitat Autonoma
2
// de Barcelona (UAB).
3
//
4
// This work is licensed under the terms of the MIT license.
5
// For a copy, see <https://opensource.org/licenses/MIT>.
6
7
#include "
carla/ros2/publishers/CarlaClockPublisher.h
"
8
9
#include "
carla/Logging.h
"
10
#include "
carla/ros2/publishers/PublisherImpl.h
"
11
#include "
carla/ros2/types/msg/Clock.h
"
12
13
namespace
carla
{
14
namespace
ros2 {
15
16
struct
CarlaClockMsgTraits
{
17
using
msg_type
=
msg::Clock
;
18
};
19
20
CarlaClockPublisher::CarlaClockPublisher
()
21
:
BasePublisher
(
"rt/clock"
),
22
_impl(
std
::make_shared<
PublisherImpl
<
CarlaClockMsgTraits
>>()) {
23
if
(!
_impl
->Init(
GetBaseTopicName
())) {
24
log_error
(
"CarlaClockPublisher: failed to initialise writer for rt/clock"
);
25
}
26
}
27
28
CarlaClockPublisher::~CarlaClockPublisher
() =
default
;
29
30
bool
CarlaClockPublisher::Publish
() {
31
return
_impl
->Publish();
32
}
33
34
bool
CarlaClockPublisher::Write
(std::int32_t seconds, std::uint32_t nanoseconds) {
35
auto
*message =
_impl
->GetMessage();
36
message->clock.sec = seconds;
37
message->clock.nanosec = nanoseconds;
38
return
true
;
39
}
40
41
}
// namespace ros2
42
}
// namespace carla
CarlaClockPublisher.h
Clock.h
Logging.h
PublisherImpl.h
carla::ros2::BasePublisher
Definition
BasePublisher.h:14
carla::ros2::BasePublisher::GetBaseTopicName
const std::string & GetBaseTopicName() const noexcept
Definition
BasePublisher.h:42
carla::ros2::CarlaClockPublisher::Publish
bool Publish() override
Definition
CarlaClockPublisher.cpp:30
carla::ros2::CarlaClockPublisher::CarlaClockPublisher
CarlaClockPublisher()
Definition
CarlaClockPublisher.cpp:20
carla::ros2::CarlaClockPublisher::_impl
std::shared_ptr< PublisherImpl< CarlaClockMsgTraits > > _impl
Definition
CarlaClockPublisher.h:37
carla::ros2::CarlaClockPublisher::Write
bool Write(std::int32_t seconds, std::uint32_t nanoseconds)
Definition
CarlaClockPublisher.cpp:34
carla::ros2::CarlaClockPublisher::~CarlaClockPublisher
~CarlaClockPublisher() override
carla::ros2::PublisherImpl
Definition
PublisherImpl.h:28
carla
This file contains definitions of common data structures used in traffic manager.
Definition
SignComponent.h:21
carla::log_error
static void log_error(Args &&... args)
Definition
Logging.h:110
std
Definition
CarlaRecorderCollision.h:31
carla::ros2::CarlaClockMsgTraits
Definition
CarlaClockPublisher.cpp:16
carla::ros2::msg::Clock
Definition
Clock.h:12
Generated by
1.9.8