CARLA
 
载入中...
搜索中...
未找到
Public 成员函数 | 静态 Public 成员函数 | 静态 Public 属性 | Private 成员函数 | Private 属性 | 所有成员列表
FCarlaEngine类 参考

#include <CarlaEngine.h>

+ 类 FCarlaEngine 继承关系图:
+ FCarlaEngine 的协作图:

Public 成员函数

UCarlaEpisodeGetCurrentEpisode ()
 
std::shared_ptr< carla::multigpu::RouterGetSecondaryServer ()
 
FCarlaServerGetServer ()
 
const FCarlaServerGetServer () const
 
void NotifyBeginEpisode (UCarlaEpisode &Episode)
 
void NotifyEndEpisode ()
 
void NotifyInitGame (const UCarlaSettings &Settings)
 
void SetRecorder (ACarlaRecorder *InRecorder)
 
 ~FCarlaEngine ()
 

静态 Public 成员函数

static uint64_t GetFrameCounter ()
 
static void ResetFrameCounter (uint64_t Value=0)
 
static uint64_t UpdateFrameCounter ()
 

静态 Public 属性

static uint64_t FrameCounter = 0
 

Private 成员函数

void OnEpisodeSettingsChanged (const FEpisodeSettings &Settings)
 
void OnPostTick (UWorld *World, ELevelTick TickType, float DeltaSeconds)
 
void OnPreTick (UWorld *World, ELevelTick TickType, float DeltaSeconds)
 
void ResetSimulationState ()
 
- Private 成员函数 继承自 NonCopyable
 NonCopyable ()=default
 
 NonCopyable (const NonCopyable &)=delete
 
void operator= (const NonCopyable &)=delete
 

Private 属性

bool bIsPrimaryServer = true
 
bool bIsRunning = false
 
bool bMapChanged = false
 
bool bNewConnection = false
 
bool bSynchronousMode = false
 
UCarlaEpisodeCurrentEpisode = nullptr
 
FEpisodeSettings CurrentSettings
 
std::vector< FFrameDataFramesToProcess
 
std::mutex FrameToProcessMutex
 
std::unordered_map< uint32_t, uint32_t > MappedId
 
FDelegateHandle OnEpisodeSettingsChangeHandle
 
FDelegateHandle OnPostTickHandle
 
FDelegateHandle OnPreTickHandle
 
ACarlaRecorderRecorder = nullptr
 
std::shared_ptr< carla::multigpu::SecondarySecondary
 
std::shared_ptr< carla::multigpu::RouterSecondaryServer
 
FCarlaServer Server
 
FWorldObserver WorldObserver
 

详细描述

在文件 CarlaEngine.h31 行定义.

构造及析构函数说明

◆ ~FCarlaEngine()

FCarlaEngine::~FCarlaEngine ( )

在文件 CarlaEngine.cpp62 行定义.

引用了 bIsRunning, carla::ros2::ROS2::GetInstance(), FCarlaStaticDelegates::OnEpisodeSettingsChange, OnEpisodeSettingsChangeHandle, OnPostTickHandle , 以及 OnPreTickHandle.

+ 函数调用图:

成员函数说明

◆ GetCurrentEpisode()

UCarlaEpisode * FCarlaEngine::GetCurrentEpisode ( )
inline

在文件 CarlaEngine.h55 行定义.

引用了 CurrentEpisode.

被这些函数引用 NotifyInitGame() , 以及 OnPostTick().

+ 这是这个函数的调用关系图:

◆ GetFrameCounter()

static uint64_t FCarlaEngine::GetFrameCounter ( )
inlinestatic

在文件 CarlaEngine.h65 行定义.

引用了 FrameCounter.

被这些函数引用 FCarlaServer::FPimpl::BindActions(), FAsyncDataStreamTmpl< T >::FAsyncDataStreamTmpl(), FFrameData::GetFrameCounter(), ACollisionSensor::OnCollisionEvent(), ASceneCaptureCamera::PostPhysTick(), ACollisionSensor::PrePhysTick() , 以及 FPixelReader::SendPixelsInRenderThread().

+ 这是这个函数的调用关系图:

◆ GetSecondaryServer()

std::shared_ptr< carla::multigpu::Router > FCarlaEngine::GetSecondaryServer ( )
inline

在文件 CarlaEngine.h91 行定义.

引用了 SecondaryServer.

被这些函数引用 UCarlaEpisode::LoadNewEpisode().

+ 这是这个函数的调用关系图:

◆ GetServer() [1/2]

FCarlaServer & FCarlaEngine::GetServer ( )
inline

在文件 CarlaEngine.h50 行定义.

引用了 Server.

◆ GetServer() [2/2]

const FCarlaServer & FCarlaEngine::GetServer ( ) const
inline

在文件 CarlaEngine.h45 行定义.

引用了 Server.

◆ NotifyBeginEpisode()

void FCarlaEngine::NotifyBeginEpisode ( UCarlaEpisode & Episode)

◆ NotifyEndEpisode()

void FCarlaEngine::NotifyEndEpisode ( )

在文件 CarlaEngine.cpp273 行定义.

引用了 CurrentEpisode, FCarlaServer::NotifyEndEpisode() , 以及 Server.

+ 函数调用图:

◆ NotifyInitGame()

void FCarlaEngine::NotifyInitGame ( const UCarlaSettings & Settings)

◆ OnEpisodeSettingsChanged()

void FCarlaEngine::OnEpisodeSettingsChanged ( const FEpisodeSettings & Settings)
private

在文件 CarlaEngine.cpp384 行定义.

引用了 FEpisodeSettings::ActorActiveDistance, FEpisodeSettings::bNoRenderingMode, FEpisodeSettings::bSubstepping, bSynchronousMode, FEpisodeSettings::bSynchronousMode, CurrentEpisode, CurrentSettings, FCarlaEngine_SetFixedDeltaSeconds(), FEpisodeSettings::FixedDeltaSeconds, UCarlaStatics::GetLargeMapManager(), FEpisodeSettings::MaxSubstepDeltaTime, FEpisodeSettings::MaxSubsteps, ALargeMapManager::SetActorStreamingDistance(), ALargeMapManager::SetLayerStreamingDistance() , 以及 FEpisodeSettings::TileStreamingDistance.

被这些函数引用 NotifyInitGame() , 以及 OnPreTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnPostTick()

void FCarlaEngine::OnPostTick ( UWorld * World,
ELevelTick TickType,
float DeltaSeconds )
private

在文件 CarlaEngine.cpp335 行定义.

引用了 bIsPrimaryServer, bMapChanged, bNewConnection, FWorldObserver::BroadcastTick(), FFrameData::Clear(), CurrentEpisode, GetCurrentEpisode(), UCarlaEpisode::GetFrameData(), FFrameData::GetFrameData(), UCarlaEpisode::GetRecorder(), UCarlaEpisode::GetSensorManager(), UCarlaLightSubsystem::IsUpdatePending(), FSensorManager::PostPhysTick(), ResetSimulationState(), SecondaryServer, ACarlaRecorder::Ticking(), WorldObserver , 以及 FFrameData::Write().

被这些函数引用 NotifyInitGame().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnPreTick()

void FCarlaEngine::OnPreTick ( UWorld * World,
ELevelTick TickType,
float DeltaSeconds )
private

在文件 CarlaEngine.cpp279 行定义.

引用了 UCarlaEpisode::ApplySettings(), bIsPrimaryServer, bSynchronousMode, FEpisodeSettings::bSynchronousMode, CurrentEpisode, CurrentSettings, FEpisodeSettings::FixedDeltaSeconds, FramesToProcess, FrameToProcessMutex, MappedId, OnEpisodeSettingsChanged(), FCarlaServer::RunSome(), SecondaryServer, Server, FCarlaServer::TickCueReceived(), UCarlaEpisode::TickTimers() , 以及 UpdateFrameCounter().

被这些函数引用 NotifyInitGame().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ ResetFrameCounter()

static void FCarlaEngine::ResetFrameCounter ( uint64_t Value = 0)
inlinestatic

在文件 CarlaEngine.h81 行定义.

引用了 FrameCounter , 以及 carla::ros2::ROS2::GetInstance().

被这些函数引用 NotifyBeginEpisode() , 以及 FFrameData::SetFrameCounter().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ ResetSimulationState()

void FCarlaEngine::ResetSimulationState ( )
private

在文件 CarlaEngine.cpp412 行定义.

引用了 bMapChanged.

被这些函数引用 OnPostTick().

+ 这是这个函数的调用关系图:

◆ SetRecorder()

void FCarlaEngine::SetRecorder ( ACarlaRecorder * InRecorder)
inline

在文件 CarlaEngine.h60 行定义.

引用了 Recorder.

被这些函数引用 UCarlaGameInstance::UCarlaGameInstance().

+ 这是这个函数的调用关系图:

◆ UpdateFrameCounter()

static uint64_t FCarlaEngine::UpdateFrameCounter ( )
inlinestatic

在文件 CarlaEngine.h70 行定义.

引用了 FrameCounter , 以及 carla::ros2::ROS2::GetInstance().

被这些函数引用 OnPreTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

类成员变量说明

◆ bIsPrimaryServer

bool FCarlaEngine::bIsPrimaryServer = true
private

在文件 CarlaEngine.h128 行定义.

被这些函数引用 NotifyBeginEpisode(), NotifyInitGame(), OnPostTick() , 以及 OnPreTick().

◆ bIsRunning

bool FCarlaEngine::bIsRunning = false
private

在文件 CarlaEngine.h106 行定义.

被这些函数引用 NotifyInitGame() , 以及 ~FCarlaEngine().

◆ bMapChanged

bool FCarlaEngine::bMapChanged = false
private

在文件 CarlaEngine.h110 行定义.

被这些函数引用 NotifyInitGame(), OnPostTick() , 以及 ResetSimulationState().

◆ bNewConnection

bool FCarlaEngine::bNewConnection = false
private

在文件 CarlaEngine.h129 行定义.

被这些函数引用 NotifyInitGame() , 以及 OnPostTick().

◆ bSynchronousMode

bool FCarlaEngine::bSynchronousMode = false
private

在文件 CarlaEngine.h108 行定义.

被这些函数引用 NotifyInitGame(), OnEpisodeSettingsChanged() , 以及 OnPreTick().

◆ CurrentEpisode

UCarlaEpisode* FCarlaEngine::CurrentEpisode = nullptr
private

◆ CurrentSettings

FEpisodeSettings FCarlaEngine::CurrentSettings
private

在文件 CarlaEngine.h118 行定义.

被这些函数引用 NotifyBeginEpisode(), OnEpisodeSettingsChanged() , 以及 OnPreTick().

◆ FrameCounter

uint64_t FCarlaEngine::FrameCounter = 0
static

在文件 CarlaEngine.h35 行定义.

被这些函数引用 GetFrameCounter(), ResetFrameCounter() , 以及 UpdateFrameCounter().

◆ FramesToProcess

std::vector<FFrameData> FCarlaEngine::FramesToProcess
private

在文件 CarlaEngine.h136 行定义.

被这些函数引用 NotifyInitGame() , 以及 OnPreTick().

◆ FrameToProcessMutex

std::mutex FCarlaEngine::FrameToProcessMutex
private

在文件 CarlaEngine.h137 行定义.

被这些函数引用 NotifyInitGame() , 以及 OnPreTick().

◆ MappedId

std::unordered_map<uint32_t, uint32_t> FCarlaEngine::MappedId
private

在文件 CarlaEngine.h131 行定义.

被这些函数引用 OnPreTick().

◆ OnEpisodeSettingsChangeHandle

FDelegateHandle FCarlaEngine::OnEpisodeSettingsChangeHandle
private

在文件 CarlaEngine.h126 行定义.

被这些函数引用 NotifyInitGame() , 以及 ~FCarlaEngine().

◆ OnPostTickHandle

FDelegateHandle FCarlaEngine::OnPostTickHandle
private

在文件 CarlaEngine.h124 行定义.

被这些函数引用 NotifyInitGame() , 以及 ~FCarlaEngine().

◆ OnPreTickHandle

FDelegateHandle FCarlaEngine::OnPreTickHandle
private

在文件 CarlaEngine.h122 行定义.

被这些函数引用 NotifyInitGame() , 以及 ~FCarlaEngine().

◆ Recorder

ACarlaRecorder* FCarlaEngine::Recorder = nullptr
private

在文件 CarlaEngine.h120 行定义.

被这些函数引用 NotifyBeginEpisode() , 以及 SetRecorder().

◆ Secondary

std::shared_ptr<carla::multigpu::Secondary> FCarlaEngine::Secondary
private

在文件 CarlaEngine.h134 行定义.

被这些函数引用 NotifyInitGame().

◆ SecondaryServer

std::shared_ptr<carla::multigpu::Router> FCarlaEngine::SecondaryServer
private

在文件 CarlaEngine.h133 行定义.

被这些函数引用 GetSecondaryServer(), NotifyInitGame(), OnPostTick() , 以及 OnPreTick().

◆ Server

FCarlaServer FCarlaEngine::Server
private

在文件 CarlaEngine.h112 行定义.

被这些函数引用 GetServer(), GetServer(), NotifyBeginEpisode(), NotifyEndEpisode(), NotifyInitGame() , 以及 OnPreTick().

◆ WorldObserver

FWorldObserver FCarlaEngine::WorldObserver
private

在文件 CarlaEngine.h114 行定义.

被这些函数引用 NotifyInitGame() , 以及 OnPostTick().


该类的文档由以下文件生成: