CARLA
Namespaces | Classes | Typedefs | Functions
carla Namespace Reference

This file contains definitions of common data structures used in traffic manager. More...

Namespaces

 client
 
 detail
 
 geom
 
 image
 
 iterator
 
 learning
 
 logging
 
 multigpu
 
 nav
 
 opendrive
 
 pointcloud
 
 profiler
 
 road
 
 ros2
 
 rpc
 
 rss
 
 sensor
 
 streaming
 
 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  PythonUtil
 
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 = boost::enable_shared_from_this< T >
 
using SharedBufferView = std::shared_ptr< BufferView >
 
template<typename T >
using SharedPtr = boost::shared_ptr< T >
 Use this SharedPtr (boost::shared_ptr) to keep compatibility with boost::python, but it would be nice if in the future we can make a Python adaptor for std::shared_ptr. More...
 
using StopWatch = detail::StopWatchTmpl< std::chrono::steady_clock >
 
using TM = traffic_manager::TrafficManager
 
template<typename T >
using WeakPtr = boost::weak_ptr< T >
 

Functions

template<typename ... Args>
static void log_critical (Args &&... args)
 
template<typename ... Args>
static void log_debug (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 Iterator >
static auto MakeListView (Iterator begin, Iterator end)
 
template<typename Container >
static auto MakeListView (Container &c)
 
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. More...
 
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)
 
template<typename T >
void throw_exception (const T &e)
 
void throw_exception (const std::exception &e)
 

Detailed Description

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.

Todo:
This shouldn't be exposed in this namespace.

Typedef Documentation

◆ ActorId

using carla::ActorId = typedef rpc::ActorId

Definition at line 18 of file ActorId.h.

◆ EnableSharedFromThis

template<typename T >
using carla::EnableSharedFromThis = typedef boost::enable_shared_from_this<T>

Definition at line 26 of file Memory.h.

◆ SharedBufferView

using carla::SharedBufferView = typedef std::shared_ptr<BufferView>

Definition at line 151 of file BufferView.h.

◆ SharedPtr

template<typename T >
using carla::SharedPtr = typedef boost::shared_ptr<T>

Use this SharedPtr (boost::shared_ptr) to keep compatibility with boost::python, but it would be nice if in the future we can make a Python adaptor for std::shared_ptr.

Definition at line 20 of file Memory.h.

◆ StopWatch

using carla::StopWatch = typedef detail::StopWatchTmpl<std::chrono::steady_clock>

Definition at line 58 of file StopWatch.h.

◆ TM

Definition at line 19 of file Vehicle.cpp.

◆ WeakPtr

template<typename T >
using carla::WeakPtr = typedef boost::weak_ptr<T>

Definition at line 23 of file Memory.h.

Function Documentation

◆ log_critical()

template<typename ... Args>
static void carla::log_critical ( Args &&...  args)
inlinestatic

Definition at line 124 of file Logging.h.

References carla::logging::write_to_stream().

Referenced by carla::client::detail::GarbageCollector::operator()().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ log_debug()

template<typename ... Args>
static void carla::log_debug ( Args &&  ...)
inlinestatic

Definition at line 75 of file Logging.h.

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::ServerSideSensor::Destroy(), carla::client::detail::Simulator::DestroyActor(), carla::streaming::detail::MultiStreamState::DisconnectSession(), carla::streaming::detail::Dispatcher::GetToken(), carla::multigpu::PrimaryCommands::GetToken(), carla::client::ServerSideSensor::Listen(), carla::client::RssSensor::Listen(), carla::client::ServerSideSensor::ListenToGBuffer(), carla::logging::log(), carla::streaming::detail::Dispatcher::MakeStream(), carla::streaming::detail::tcp::ServerSession::Open(), carla::opendrive::parser::SignalParser::Parse(), carla::opendrive::parser::ControllerParser::Parse(), carla::opendrive::parser::ParseGeoReference(), carla::image::io::detail::io_resolver::read_image(), carla::streaming::detail::tcp::Client::ReadData(), carla::streaming::detail::Dispatcher::RegisterSession(), carla::Buffer::reset(), carla::client::detail::Simulator::SpawnActor(), carla::streaming::low_level::Server< detail::tcp::Server >::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< detail::tcp::Client >::UnSubscribe(), carla::streaming::detail::MultiStreamState::Write(), carla::streaming::detail::tcp::ServerSession::Write(), and carla::image::io::detail::io_resolver::write_view().

+ Here is the caller graph for this function:

◆ log_error()

template<typename ... Args>
static void carla::log_error ( Args &&...  args)
inlinestatic

Definition at line 110 of file Logging.h.

References carla::logging::write_to_stream().

Referenced by carla::client::ActorAttributeValueAccess::As< sensor::data::Color >(), carla::client::RssSensor::AppendRoutingTarget(), carla::multigpu::Secondary::Connect(), carla::client::detail::Client::DestroyActor(), carla::client::RssSensor::GetEgoVehicleDynamics(), carla::client::RssSensor::GetOtherVehicleDynamics(), carla::client::RssSensor::GetPedestrianDynamics(), carla::client::RssSensor::GetRoadBoundariesMode(), carla::client::RssSensor::GetRoutingTargets(), carla::client::LaneInvasionSensor::Listen(), carla::client::RssSensor::Listen(), carla::opendrive::OpenDriveParser::Load(), carla::streaming::detail::tcp::ServerSession::Open(), carla::streaming::detail::tcp::Server::OpenSession(), carla::multigpu::Listener::OpenSession(), carla::client::detail::GarbageCollector::operator()(), carla::multigpu::Primary::ReadData(), carla::multigpu::Secondary::ReadData(), carla::client::RssSensor::RegisterActorConstellationCallback(), carla::streaming::detail::Dispatcher::RegisterSession(), carla::client::RssSensor::ResetRoutingTargets(), carla::traffic_manager::InMemoryMap::Save(), carla::multigpu::PrimaryCommands::SendDisableForROS(), carla::multigpu::PrimaryCommands::SendEnableForROS(), 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::multigpu::Primary::StartTimer(), carla::client::RssSensor::Stop(), carla::multigpu::Secondary::Write(), carla::multigpu::Primary::Write(), carla::streaming::detail::Dispatcher::~Dispatcher(), carla::client::detail::Episode::~Episode(), and carla::client::ServerSideSensor::~ServerSideSensor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ log_info()

template<typename ... Args>
static void carla::log_info ( Args &&...  args)
inlinestatic

◆ log_warning()

template<typename ... Args>
static void carla::log_warning ( Args &&...  args)
inlinestatic

Definition at line 96 of file Logging.h.

References carla::logging::write_to_stream().

Referenced by carla::client::World::ApplySettings(), UCarSimManagerComponent::BeginPlay(), carla::client::Actor::Destroy(), UChronoMovementComponent::DisableChronoPhysics(), UBaseCarlaMovementComponent::EnableUE4VehiclePhysics(), AOpenDriveGenerator::GenerateRoadMesh(), carla::client::WalkerAIController::GoToLocation(), ATrafficLightManager::InitializeTrafficLights(), carla::client::ServerSideSensor::ListenToGBuffer(), UCarlaEpisode::LoadNewOpendriveEpisode(), ATrafficLightManager::MatchTrafficLightActorsWithOpenDriveSignals(), UCarSimManagerComponent::OnCarSimHit(), UCarSimManagerComponent::OnCarSimOverlap(), carla::opendrive::parser::ParseGeoReference(), carla::client::LightManager::RetrieveLightState(), Benchmark::Run(), carla::client::detail::Simulator::SetEpisodeSettings(), carla::client::WalkerAIController::SetMaxSpeed(), carla::traffic_manager::TrafficManagerLocal::SetupLocalMap(), ATrafficLightManager::SpawnSignals(), ATrafficLightManager::SpawnTrafficLights(), carla::client::ServerSideSensor::Stop(), carla::client::ServerSideSensor::StopGBuffer(), carla::client::detail::ValidateVersions(), and carla::client::ServerSideSensor::~ServerSideSensor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeListView() [1/2]

template<typename Iterator >
static auto carla::MakeListView ( Iterator  begin,
Iterator  end 
)
inlinestatic

◆ MakeListView() [2/2]

template<typename Container >
static auto carla::MakeListView ( Container &  c)
inlinestatic

Definition at line 83 of file LibCarla/source/carla/ListView.h.

References MakeListView().

+ Here is the call graph for this function:

◆ MakeShared()

template<typename T , typename... Args>
static auto carla::MakeShared ( Args &&...  args)
inlinestatic

Definition at line 29 of file Memory.h.

◆ MoveHandler()

template<typename FunctorT >
auto carla::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.

See also
https://stackoverflow.com/a/22891509.

Definition at line 33 of file MoveHandler.h.

Referenced by carla::ThreadPool::Post(), and carla::rpc::detail::FunctionWrapper< R(*)(Args...)>::WrapSyncCall().

+ Here is the caller graph for this function:

◆ operator!=()

static bool carla::operator!= ( const Buffer lhs,
const Buffer rhs 
)
inlinestatic

Definition at line 59 of file test/Buffer.h.

◆ operator<<()

static std::ostream& carla::operator<< ( std::ostream &  out,
const Buffer buf 
)
inlinestatic

Definition at line 48 of file test/Buffer.h.

References carla::Buffer::size(), and util::buffer::to_hex_string().

+ Here is the call graph for this function:

◆ operator==()

static bool carla::operator== ( const Buffer lhs,
const Buffer rhs 
)
inlinestatic

Definition at line 53 of file test/Buffer.h.

References carla::Buffer::begin(), carla::Buffer::end(), and carla::Buffer::size().

+ Here is the call graph for this function:

◆ throw_exception() [1/2]

template<typename T >
void carla::throw_exception ( const T &  e)

Definition at line 37 of file Exception.h.

◆ throw_exception() [2/2]

void carla::throw_exception ( const std::exception &  e)