|
CARLA
|
This file contains definitions of common data structures used in traffic manager. More...
Namespaces | |
| namespace | agents |
| namespace | client |
| namespace | detail |
| namespace | geom |
| namespace | image |
| namespace | iterator |
| namespace | learning |
| namespace | logging |
| namespace | multigpu |
| namespace | nav |
| namespace | opendrive |
| namespace | pointcloud |
| namespace | profiler |
| namespace | road |
| namespace | ros2 |
| namespace | rpc |
| namespace | rss |
| namespace | sensor |
| namespace | streaming |
| namespace | traffic_manager |
Classes | |
| struct | are_same |
| struct | are_same< T0, T1 > |
| struct | are_same< T0, T1, Ts... > |
| class | AtomicSharedPtr |
| A very simple atomic shared ptr with release-acquire memory order. More... | |
| class | Buffer |
| A piece of raw data. More... | |
| class | BufferPool |
| A pool of Buffer. More... | |
| class | BufferView |
| Creating a constant view from an existing buffer. More... | |
| class | FileSystem |
| Static functions for accessing the file system. More... | |
| class | Functional |
| class | ListView |
| A view over a range of elements in a container. More... | |
| class | MovableNonCopyable |
| Inherit (privately) to suppress copy construction and assignment. More... | |
| class | MsgPack |
| class | NonCopyable |
| Inherit (privately) to suppress copy/move construction and assignment. More... | |
| class | RecurrentSharedFuture |
| This class is meant to be used similar to a shared future, but the value can be set any number of times. More... | |
| class | StringUtil |
| class | ThreadGroup |
| class | ThreadPool |
| A thread pool based on Boost.Asio's io context. More... | |
| class | time_duration |
| Positive time duration up to milliseconds resolution. More... | |
Typedefs | |
| using | ActorId = rpc::ActorId |
| template<typename T > | |
| using | EnableSharedFromThis = std::enable_shared_from_this< T > |
| using | SharedBufferView = std::shared_ptr< BufferView > |
| template<typename T > | |
| using | SharedPtr = std::shared_ptr< T > |
| using | StopWatch = detail::StopWatchTmpl< std::chrono::steady_clock > |
| using | TM = traffic_manager::TrafficManager |
| template<typename T > | |
| using | WeakPtr = std::weak_ptr< T > |
Functions | |
| template<typename ... Args> | |
| static void | log_critical (Args &&... args) |
| template<typename ... Args> | |
| static void | log_debug (Args &&... args) |
| template<typename ... Args> | |
| static void | log_error (Args &&... args) |
| template<typename ... Args> | |
| static void | log_info (Args &&... args) |
| template<typename ... Args> | |
| static void | log_warning (Args &&... args) |
| template<typename Container > | |
| static auto | MakeListView (Container &c) |
| template<typename Iterator > | |
| static auto | MakeListView (Iterator begin, Iterator end) |
| template<typename T , typename... Args> | |
| static auto | MakeShared (Args &&... args) |
| template<typename FunctorT > | |
| auto | MoveHandler (FunctorT &&func) |
| Hack to trick asio into accepting move-only handlers, if the handler were actually copied it would result in a link error. | |
| static bool | operator!= (const Buffer &lhs, const Buffer &rhs) |
| static std::ostream & | operator<< (std::ostream &out, const Buffer &buf) |
| static bool | operator== (const Buffer &lhs, const Buffer &rhs) |
| void | SetCloseOnExecForListeningPort (uint16_t Port) |
| Fallback for listening sockets we have no direct handle to (e.g. | |
| template<typename NativeHandle > | |
| void | SetSocketCloseOnExec (NativeHandle fd) |
| Marks a socket file descriptor close-on-exec, so it is not inherited by child processes started via fork+exec (e.g. | |
| template<typename ExceptionT > | |
| void | throw_exception (const ExceptionT &e) |
Templated on the static type so the thrown object keeps its dynamic type: taking a const std::exception & and throw e; would slice every carla::client error down to a bare std::exception (what() == "std::exception"), losing the server's message. | |
This file contains definitions of common data structures used in traffic manager.
This file has functionality for motion planning based on information from localization, collision avoidance and traffic light response.
| using carla::ActorId = typedef rpc::ActorId |
| using carla::EnableSharedFromThis = typedef std::enable_shared_from_this<T> |
| using carla::SharedBufferView = typedef std::shared_ptr<BufferView> |
Definition at line 151 of file BufferView.h.
| using carla::SharedPtr = typedef std::shared_ptr<T> |
| using carla::StopWatch = typedef detail::StopWatchTmpl<std::chrono::steady_clock> |
Definition at line 58 of file StopWatch.h.
| using carla::TM = typedef traffic_manager::TrafficManager |
Definition at line 19 of file Vehicle.cpp.
| using carla::WeakPtr = typedef std::weak_ptr<T> |
|
inlinestatic |
Definition at line 124 of file Logging.h.
References carla::logging::write_to_stream().
Referenced by carla::client::detail::GarbageCollector::operator()().
|
inlinestatic |
Definition at line 68 of file Logging.h.
References carla::logging::write_to_stream().
Referenced by carla::road::MapBuilder::CheckSignalsOnRoads(), carla::streaming::detail::MultiStreamState::ClearSessions(), carla::multigpu::Primary::CloseNow(), carla::streaming::detail::tcp::ServerSession::CloseNow(), carla::streaming::detail::Dispatcher::CloseStream(), carla::streaming::detail::tcp::Client::Connect(), carla::streaming::detail::MultiStreamState::ConnectSession(), carla::streaming::detail::Dispatcher::DeregisterSession(), carla::client::Actor::Destroy(), carla::client::ServerSideSensor::Destroy(), carla::client::detail::Simulator::DestroyActor(), carla::streaming::detail::MultiStreamState::DisconnectSession(), carla::multigpu::PrimaryCommands::GetToken(), carla::streaming::detail::Dispatcher::GetToken(), carla::client::ServerSideSensor::Listen(), carla::client::RssSensor::Listen(), carla::client::ServerSideSensor::ListenToGBuffer(), carla::streaming::detail::Dispatcher::MakeStream(), carla::streaming::detail::tcp::ServerSession::Open(), carla::opendrive::parser::ControllerParser::Parse(), carla::opendrive::parser::SignalParser::Parse(), carla::image::io::detail::io_resolver::read_image(), carla::streaming::detail::tcp::Client::ReadData(), carla::streaming::detail::Dispatcher::RegisterSession(), carla::Buffer::reset(), carla::client::ServerSideSensor::Send(), carla::client::detail::Simulator::SpawnActor(), carla::streaming::low_level::Server< T >::StartServer(), carla::multigpu::Primary::StartTimer(), carla::streaming::detail::tcp::ServerSession::StartTimer(), carla::client::ServerSideSensor::Stop(), carla::client::RssSensor::Stop(), carla::client::ServerSideSensor::StopGBuffer(), carla::streaming::low_level::Client< T >::UnSubscribe(), carla::traffic_manager::ALSM::UpdateRegisteredActorsData(), carla::streaming::detail::MultiStreamState::Write(), carla::streaming::detail::tcp::ServerSession::Write(), and carla::image::io::detail::io_resolver::write_view().
|
inlinestatic |
Definition at line 110 of file Logging.h.
References carla::logging::write_to_stream().
Referenced by carla::ros2::AckermannControlSubscriber::AckermannControlSubscriber(), carla::ros2::FastDDSSharedParticipant::acquire(), carla::client::ActorAttributeValueAccess::As< sensor::data::Color >(), carla::client::RssSensor::AppendRoutingTarget(), carla::ros2::AutowareControlSubscriber::AutowareControlSubscriber(), carla::ros2::AutowareGNSSPublisher::AutowareGNSSPublisher(), carla::ros2::AutowareVehicleStatusPublisher::AutowareVehicleStatusPublisher(), carla::ros2::CarlaCameraPublisher::CarlaCameraPublisher(), carla::ros2::CarlaClockPublisher::CarlaClockPublisher(), carla::ros2::CarlaCollisionPublisher::CarlaCollisionPublisher(), carla::ros2::CarlaEgoVehicleControlSubscriber::CarlaEgoVehicleControlSubscriber(), carla::ros2::CarlaGNSSPublisher::CarlaGNSSPublisher(), carla::ros2::CarlaIMUPublisher::CarlaIMUPublisher(), carla::ros2::CarlaPointCloudPublisher::CarlaPointCloudPublisher(), carla::ros2::CarlaTransformPublisher::CarlaTransformPublisher(), carla::ros2::MiddlewareFactory::CreatePublisher(), carla::ros2::MiddlewareFactory::CreateSubscriber(), carla::client::detail::Client::DestroyActor(), FCarlaEngine::DetachFromPrimary(), carla::ros2::ROS2::Enable(), carla::multigpu::PrimaryCommands::EnableForROS(), carla::ros2::PublisherImpl< Traits >::EnsureMiddleware(), carla::ros2::SubscriberImpl< Traits >::EnsureMiddleware(), carla::client::RssSensor::GetEgoVehicleDynamics(), carla::ros2::ROS2::GetOrCreateCameraSensor(), carla::ros2::ROS2::GetOrCreateSensor(), carla::client::RssSensor::GetOtherVehicleDynamics(), carla::client::RssSensor::GetPedestrianDynamics(), carla::client::RssSensor::GetRoadBoundariesMode(), carla::client::RssSensor::GetRoutingTargets(), carla::ros2::FastDDSPublisherMiddleware< T >::InitImpl(), carla::ros2::FastDDSSubscriberMiddleware< S >::InitImpl(), carla::client::detail::Episode::Listen(), carla::client::LaneInvasionSensor::Listen(), carla::client::RssSensor::Listen(), carla::opendrive::OpenDriveParser::Load(), FCarlaEngine::NotifyEndEpisode(), FCarlaEngine::NotifyInitGame(), carla::ros2::FastDDSSubscriberMiddleware< S >::on_data_available(), carla::client::detail::Episode::OnEpisodeChanged(), carla::streaming::detail::tcp::ServerSession::Open(), carla::multigpu::Listener::OpenSession(), carla::streaming::detail::tcp::Server::OpenSession(), carla::client::detail::GarbageCollector::operator()(), carla::multigpu::SecondaryCommands::process_command(), carla::ros2::ROS2::ProcessDataFromAutowareGNSS(), carla::ros2::ROS2::ProcessDataFromStatusSensor(), carla::ros2::PublisherImpl< Traits >::Publish(), carla::ros2::FastDDSPublisherMiddleware< T >::Publish(), carla::multigpu::Primary::ReadData(), carla::multigpu::Secondary::ReadData(), carla::streaming::detail::tcp::Client::ReadData(), carla::client::RssSensor::RegisterActorConstellationCallback(), carla::streaming::detail::Dispatcher::RegisterSession(), carla::multigpu::Router::RejectPromise(), carla::ros2::FastDDSSharedParticipant::release(), carla::client::RssSensor::ResetRoutingTargets(), carla::traffic_manager::InMemoryMap::Save(), carla::multigpu::PrimaryCommands::SendDisableForROS(), carla::multigpu::PrimaryCommands::SendEnableForROS(), carla::multigpu::PrimaryCommands::SendGetToken(), carla::multigpu::PrimaryCommands::SendIsAlive(), carla::multigpu::PrimaryCommands::SendIsEnabledForROS(), carla::client::RssSensor::SetEgoVehicleDynamics(), carla::client::RssSensor::SetLogLevel(), carla::client::RssSensor::SetMapLogLevel(), carla::client::RssSensor::SetOtherVehicleDynamics(), carla::client::RssSensor::SetPedestrianDynamics(), carla::client::RssSensor::SetRoadBoundariesMode(), carla::traffic_manager::TrafficManagerLocal::SetSynchronousMode(), carla::multigpu::Primary::StartTimer(), carla::client::RssSensor::Stop(), carla::multigpu::Primary::WriteNext(), carla::multigpu::Secondary::WriteNext(), carla::streaming::detail::Dispatcher::~Dispatcher(), carla::client::detail::Episode::~Episode(), carla::client::LightManager::~LightManager(), and carla::client::ServerSideSensor::~ServerSideSensor().
|
inlinestatic |
Definition at line 82 of file Logging.h.
References carla::logging::write_to_stream().
Referenced by carla::multigpu::Router::ClearSessions(), carla::multigpu::Secondary::Connect(), carla::streaming::detail::tcp::Client::Connect(), carla::multigpu::Router::ConnectSession(), carla::multigpu::Router::DisconnectSession(), carla::ros2::ROS2::Enable(), carla::client::detail::Client::GetRequiredFiles(), carla::multigpu::Router::HandleResponse(), FCarlaEngine::NotifyInitGame(), carla::ros2::ROS2::ProcessDataFromCamera(), carla::ros2::ROS2::ProcessDataFromObstacleDetection(), carla::multigpu::PrimaryCommands::RerouteLostSensors(), carla::multigpu::SensorStreamRegistry::Resolve(), carla::multigpu::PrimaryCommands::SendGetToken(), carla::multigpu::PrimaryCommands::SendIsAlive(), carla::multigpu::Router::SetCallbacks(), FAsyncDataStreamTmpl< T >::SetFrameNumber(), FAsyncDataStreamTmpl< T >::SetTimestamp(), FAsyncDataStreamTmpl< T >::SetTransform(), TEST(), and carla::streaming::detail::tcp::ServerSession::Write().
|
inlinestatic |
Definition at line 96 of file Logging.h.
References carla::logging::write_to_stream().
Referenced by carla::client::World::ApplySettings(), UCarSimManagerComponent::BeginPlay(), carla::multigpu::SensorStreamRegistry::Bind(), UChronoMovementComponent::DisableChronoPhysics(), UBaseCarlaMovementComponent::EnableUE4VehiclePhysics(), AOpenDriveGenerator::GenerateLaneMarkings(), AOpenDriveGenerator::GenerateRoadMesh(), carla::multigpu::PrimaryCommands::GetToken(), carla::client::WalkerAIController::GoToLocation(), carla::multigpu::Router::HandleResponse(), ATrafficLightManager::InitializeTrafficLights(), carla::client::ServerSideSensor::ListenToGBuffer(), carla::traffic_manager::InMemoryMap::Load(), carla::client::detail::Simulator::LoadEpisode(), UCarlaEpisode::LoadNewOpendriveEpisode(), ATrafficLightManager::MatchTrafficLightActorsWithOpenDriveSignals(), FCarlaEngine::NotifyEndEpisode(), FCarlaEngine::NotifyInitGame(), FCarlaEngine::OnBeginFrame(), UCarSimManagerComponent::OnCarSimHit(), UCarSimManagerComponent::OnCarSimOverlap(), FCarlaEngine::PlayPrimaryFrame(), carla::multigpu::SecondaryCommands::process_command(), carla::ros2::ROS2::ProcessDataFromStatusSensor(), carla::multigpu::PrimaryCommands::RerouteLostSensors(), carla::multigpu::SensorStreamRegistry::Resolve(), carla::multigpu::PrimaryCommands::RestoreRosAfterReroute(), carla::client::LightManager::RetrieveLightState(), Benchmark::Run(), carla::client::ServerSideSensor::Send(), carla::multigpu::PrimaryCommands::SendGetToken(), carla::client::detail::Simulator::SetEpisodeSettings(), carla::client::WalkerAIController::SetMaxSpeed(), carla::traffic_manager::TrafficManagerLocal::SetupLocalMap(), ATrafficLightManager::SpawnSignals(), ATrafficLightManager::SpawnTrafficLights(), carla::client::WalkerAIController::Start(), carla::client::WalkerAIController::Stop(), carla::client::ServerSideSensor::Stop(), carla::client::ServerSideSensor::StopGBuffer(), carla::client::detail::ValidateVersions(), and carla::client::ServerSideSensor::~ServerSideSensor().
|
inlinestatic |
Definition at line 83 of file LibCarla/source/carla/ListView.h.
References MakeListView().
|
inlinestatic |
Definition at line 78 of file LibCarla/source/carla/ListView.h.
References MakeListView().
Referenced by MakeListView(), and MakeListView().
|
inlinestatic |
Hack to trick asio into accepting move-only handlers, if the handler were actually copied it would result in a link error.
Definition at line 33 of file MoveHandler.h.
Referenced by carla::ThreadPool::Post(), and carla::rpc::detail::FunctionWrapper< R(*)(Args...)>::WrapSyncCall().
Definition at line 59 of file test/Buffer.h.
|
inlinestatic |
Definition at line 48 of file test/Buffer.h.
References carla::Buffer::size(), and util::buffer::to_hex_string().
Definition at line 53 of file test/Buffer.h.
References carla::Buffer::begin(), carla::Buffer::end(), and carla::Buffer::size().
|
inline |
Fallback for listening sockets we have no direct handle to (e.g.
the vendored rpclib server's acceptor, hidden behind a PIMPL with no accessor). Walks this process's open file descriptors and marks close-on-exec any socket bound to Port, on any address family. Linux-only (relies on /proc/self/fd); intentionally not declared on Windows.
Definition at line 60 of file Sockets.h.
References SetSocketCloseOnExec().
Referenced by FCarlaServer::Start().
|
inline |
Marks a socket file descriptor close-on-exec, so it is not inherited by child processes started via fork+exec (e.g.
RecastBuilder, launched by UCarlaEpisode::LoadNewOpendriveEpisode through FPlatformProcess::CreateProc). Without this, a forked child that outlives the CARLA process keeps the listen socket bound and the next server boot fails in asio's bind(). No-op on Windows, where CreateProcess only inherits handles explicitly marked inheritable (bInheritHandles), which UE's process-spawning calls already leave off.
Definition at line 37 of file Sockets.h.
References fd, and SOCK_INVALID_INDEX.
Referenced by carla::multigpu::Listener::Listener(), carla::streaming::detail::tcp::Server::Server(), and SetCloseOnExecForListeningPort().
|
inline |
Templated on the static type so the thrown object keeps its dynamic type: taking a const std::exception & and throw e; would slice every carla::client error down to a bare std::exception (what() == "std::exception"), losing the server's message.
Definition at line 44 of file Exception.h.
Referenced by carla::client::BlueprintLibrary::at(), carla::sensor::data::Array< T >::at(), carla::client::BlueprintLibrary::at(), carla::sensor::data::Array< T >::at(), carla::Buffer::Buffer(), carla::Buffer::Buffer(), carla::client::detail::Client::Pimpl::CallAndWait(), carla::streaming::detail::tcp::Client::Client(), carla::sensor::s11n::NoopSerializer::Deserialize(), carla::sensor::data::LaneInvasionEvent::GetActor(), carla::client::ActorBlueprint::GetAttribute(), carla::road::Road::GetElevationOn(), carla::road::Road::GetLaneByDistance(), carla::client::RssSensor::Listen(), carla::FileSystem::ListFolder(), carla::client::detail::Simulator::LoadEpisode(), carla::client::detail::EpisodeProxyImpl< PointerT >::Lock(), carla::client::MakeMap(), carla::streaming::detail::Dispatcher::MakeStream(), clmdep_msgpack::MSGPACK_API_VERSION_NAMESPACE(), carla::client::detail::Client::Pimpl::RawCall(), carla::client::detail::Simulator::RegisterAIController(), carla::Buffer::reset(), carla::streaming::detail::token_type::set_address(), carla::client::WalkerAIController::Start(), carla::client::WalkerAIController::Stop(), carla::client::detail::Simulator::Tick(), carla::traffic_manager::TrafficManagerServer::TrafficManagerServer(), carla::client::detail::Simulator::UnregisterAIController(), carla::RecurrentSharedFuture< T >::WaitFor(), and carla::client::detail::Simulator::WaitForTick().