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

#include <CarlaReplayer.h>

+ CarlaReplayer 的协作图:

struct  Header
 
struct  PlayAfterLoadMap
 

Public 成员函数

 CarlaReplayer ()
 
void CheckPlayAfterMapLoaded (void)
 
void Disable (void)
 
void Enable (void)
 
bool IsEnabled (void)
 
std::string ReplayFile (std::string Filename, double TimeStart=0.0f, double Duration=0.0f, uint32_t FollowId=0, bool ReplaySensors=false)
 
void SetEpisode (UCarlaEpisode *ThisEpisode)
 
void SetIgnoreHero (bool InIgnoreHero)
 
void SetIgnoreSpectator (bool InIgnoreSpectator)
 
void SetTimeFactor (double NewTimeFactor)
 
void Stop (bool KeepActors=false)
 
void Tick (float Time)
 
 ~CarlaReplayer ()
 

静态 Public 属性

static PlayAfterLoadMap Autoplay { false, "", "", 0.0, 0.0, 0, 1.0, false }
 

Private 成员函数

double GetTotalTime (void)
 
void InterpolatePosition (const CarlaRecorderPosition &Start, const CarlaRecorderPosition &End, double Per, double DeltaTime)
 
void ProcessAnimBiker (void)
 
void ProcessAnimVehicle (void)
 
void ProcessAnimVehicleWheels (void)
 
void ProcessAnimWalker (void)
 
void ProcessDoorVehicle (void)
 
void ProcessEventsAdd (void)
 
void ProcessEventsDel (void)
 
void ProcessEventsParent (void)
 
void ProcessLightScene (void)
 
void ProcessLightVehicle (void)
 
void ProcessPositions (bool IsFirstTime=false)
 
void ProcessStates (void)
 
void ProcessToTime (double Time, bool IsFirstTime=false)
 
void ProcessVisualTime (void)
 
void ProcessWalkerBones (void)
 
bool ReadHeader ()
 
void Rewind (void)
 
void SkipPacket ()
 
void UpdatePositions (double Per, double DeltaTime)
 

Private 属性

bool bReplaySensors = false
 
double CurrentTime
 
std::vector< CarlaRecorderPositionCurrPos
 
bool Enabled
 
UCarlaEpisodeEpisode = nullptr
 
std::ifstream File
 
uint32_t FollowId
 
CarlaRecorderFrame Frame
 
Header Header
 
CarlaReplayerHelper Helper
 
bool IgnoreHero { false }
 
bool IgnoreSpectator { true }
 
std::unordered_map< uint32_t, bool > IsHeroMap
 
std::unordered_map< uint32_t, uint32_t > MappedId
 
std::vector< CarlaRecorderPositionPrevPos
 
CarlaRecorderInfo RecInfo
 
double TimeFactor { 1.0 }
 
double TimeToStop
 
double TotalTime
 

详细描述

在文件 CarlaReplayer.h27 行定义.

构造及析构函数说明

◆ CarlaReplayer()

CarlaReplayer::CarlaReplayer ( )
inline

在文件 CarlaReplayer.h52 行定义.

◆ ~CarlaReplayer()

CarlaReplayer::~CarlaReplayer ( )
inline

在文件 CarlaReplayer.h53 行定义.

引用了 Stop().

+ 函数调用图:

成员函数说明

◆ CheckPlayAfterMapLoaded()

void CarlaReplayer::CheckPlayAfterMapLoaded ( void )

在文件 CarlaReplayer.cpp202 行定义.

引用了 Autoplay, bReplaySensors, CarlaReplayer::PlayAfterLoadMap::Duration, CarlaReplayer::PlayAfterLoadMap::Enabled, Enabled, File, CarlaReplayer::PlayAfterLoadMap::Filename, CarlaReplayer::PlayAfterLoadMap::FollowId, FollowId, GetTotalTime(), Helper, ProcessToTime(), CarlaReplayerHelper::RemoveStaticProps(), CarlaReplayer::PlayAfterLoadMap::ReplaySensors, Rewind(), Stop(), CarlaReplayer::PlayAfterLoadMap::TimeFactor, TimeFactor, CarlaReplayer::PlayAfterLoadMap::TimeStart, TimeToStop , 以及 TotalTime.

被这些函数引用 ACarlaGameModeBase::BeginPlay() , 以及 FCarlaEngine::NotifyBeginEpisode().

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

◆ Disable()

void CarlaReplayer::Disable ( void )

◆ Enable()

void CarlaReplayer::Enable ( void )

◆ GetTotalTime()

double CarlaReplayer::GetTotalTime ( void )
private

在文件 CarlaReplayer.cpp76 行定义.

引用了 CarlaRecorderFrame::Elapsed, File, Frame, FrameStart, CarlaReplayer::Header::Id, CarlaRecorderFrame::Read(), ReadHeader() , 以及 SkipPacket().

被这些函数引用 CheckPlayAfterMapLoaded() , 以及 ReplayFile().

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

◆ InterpolatePosition()

void CarlaReplayer::InterpolatePosition ( const CarlaRecorderPosition & Start,
const CarlaRecorderPosition & End,
double Per,
double DeltaTime )
private

在文件 CarlaReplayer.cpp804 行定义.

引用了 Helper, IgnoreSpectator , 以及 CarlaReplayerHelper::ProcessReplayerPosition().

被这些函数引用 UpdatePositions().

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

◆ IsEnabled()

bool CarlaReplayer::IsEnabled ( void )
inline

在文件 CarlaReplayer.h65 行定义.

引用了 Enabled.

被这些函数引用 UCarlaEpisode::EndPlay(), ACarlaRecorder::Start() , 以及 ACarlaRecorder::Ticking().

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

◆ ProcessAnimBiker()

void CarlaReplayer::ProcessAnimBiker ( void )
private

在文件 CarlaReplayer.cpp623 行定义.

引用了 CarlaRecorderAnimBiker::DatabaseId, File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerAnimBiker() , 以及 CarlaRecorderAnimBiker::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessAnimVehicle()

void CarlaReplayer::ProcessAnimVehicle ( void )
private

在文件 CarlaReplayer.cpp564 行定义.

引用了 File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerAnimVehicle() , 以及 Vehicle.

被这些函数引用 ProcessToTime().

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

◆ ProcessAnimVehicleWheels()

void CarlaReplayer::ProcessAnimVehicleWheels ( void )
private

在文件 CarlaReplayer.cpp584 行定义.

引用了 File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerAnimVehicleWheels(), CarlaRecorderAnimWheels::Read() , 以及 Vehicle.

被这些函数引用 ProcessToTime().

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

◆ ProcessAnimWalker()

void CarlaReplayer::ProcessAnimWalker ( void )
private

在文件 CarlaReplayer.cpp603 行定义.

引用了 CarlaRecorderAnimWalker::DatabaseId, File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerAnimWalker() , 以及 CarlaRecorderAnimWalker::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessDoorVehicle()

void CarlaReplayer::ProcessDoorVehicle ( void )
private

在文件 CarlaReplayer.cpp660 行定义.

引用了 CarlaRecorderDoorVehicle::DatabaseId, File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerDoorVehicle() , 以及 CarlaRecorderDoorVehicle::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessEventsAdd()

void CarlaReplayer::ProcessEventsAdd ( void )
private

在文件 CarlaReplayer.cpp446 行定义.

引用了 bReplaySensors, EventAdd, File, Helper, IgnoreHero, IgnoreSpectator, IsHeroMap, MappedId , 以及 CarlaReplayerHelper::ProcessReplayerEventAdd().

被这些函数引用 ProcessToTime().

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

◆ ProcessEventsDel()

void CarlaReplayer::ProcessEventsDel ( void )
private

在文件 CarlaReplayer.cpp511 行定义.

引用了 EventDel, File, Helper, MappedId , 以及 CarlaReplayerHelper::ProcessReplayerEventDel().

被这些函数引用 ProcessToTime().

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

◆ ProcessEventsParent()

void CarlaReplayer::ProcessEventsParent ( void )
private

在文件 CarlaReplayer.cpp526 行定义.

引用了 EventParent, File, Helper, MappedId , 以及 CarlaReplayerHelper::ProcessReplayerEventParent().

被这些函数引用 ProcessToTime().

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

◆ ProcessLightScene()

void CarlaReplayer::ProcessLightScene ( void )
private

在文件 CarlaReplayer.cpp679 行定义.

引用了 File, Helper, CarlaReplayerHelper::ProcessReplayerLightScene() , 以及 CarlaRecorderLightScene::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessLightVehicle()

void CarlaReplayer::ProcessLightVehicle ( void )
private

在文件 CarlaReplayer.cpp641 行定义.

引用了 CarlaRecorderLightVehicle::DatabaseId, File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerLightVehicle() , 以及 CarlaRecorderLightVehicle::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessPositions()

void CarlaReplayer::ProcessPositions ( bool IsFirstTime = false)
private

在文件 CarlaReplayer.cpp693 行定义.

引用了 CurrPos, CarlaRecorderPosition::DatabaseId, File, MappedId, PrevPos , 以及 CarlaRecorderPosition::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessStates()

void CarlaReplayer::ProcessStates ( void )
private

在文件 CarlaReplayer.cpp541 行定义.

引用了 CarlaRecorderStateTrafficLight::DatabaseId, File, Helper, MappedId, CarlaReplayerHelper::ProcessReplayerStateTrafficLight() , 以及 CarlaRecorderStateTrafficLight::Read().

被这些函数引用 ProcessToTime().

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

◆ ProcessToTime()

void CarlaReplayer::ProcessToTime ( double Time,
bool IsFirstTime = false )
private

◆ ProcessVisualTime()

void CarlaReplayer::ProcessVisualTime ( void )
private

在文件 CarlaReplayer.cpp437 行定义.

引用了 Episode, File, CarlaRecorderVisualTime::Read(), UCarlaEpisode::SetVisualGameTime() , 以及 VisualTime.

被这些函数引用 ProcessToTime().

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

◆ ProcessWalkerBones()

void CarlaReplayer::ProcessWalkerBones ( void )
private

在文件 CarlaReplayer.cpp726 行定义.

引用了 CarlaRecorderWalkerBones::DatabaseId, File, Helper, IgnoreHero, IsHeroMap, MappedId, CarlaReplayerHelper::ProcessReplayerWalkerBones() , 以及 CarlaRecorderWalkerBones::Read().

被这些函数引用 ProcessToTime().

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

◆ ReadHeader()

bool CarlaReplayer::ReadHeader ( )
private

在文件 CarlaReplayer.cpp37 行定义.

引用了 File, CarlaReplayer::Header::Id , 以及 CarlaReplayer::Header::Size.

被这些函数引用 GetTotalTime() , 以及 ProcessToTime().

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

◆ ReplayFile()

std::string CarlaReplayer::ReplayFile ( std::string Filename,
double TimeStart = 0.0f,
double Duration = 0.0f,
uint32_t FollowId = 0,
bool ReplaySensors = false )

◆ Rewind()

void CarlaReplayer::Rewind ( void )
private

在文件 CarlaReplayer.cpp55 行定义.

引用了 CurrentTime, CarlaRecorderFrame::DurationThis, CarlaRecorderFrame::Elapsed, File, Frame, IsHeroMap, MappedId, CarlaRecorderInfo::Read(), RecInfo, TimeToStop , 以及 TotalTime.

被这些函数引用 CheckPlayAfterMapLoaded() , 以及 ReplayFile().

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

◆ SetEpisode()

void CarlaReplayer::SetEpisode ( UCarlaEpisode * ThisEpisode)
inline

在文件 CarlaReplayer.h71 行定义.

引用了 Episode, Helper , 以及 CarlaReplayerHelper::SetEpisode().

+ 函数调用图:

◆ SetIgnoreHero()

void CarlaReplayer::SetIgnoreHero ( bool InIgnoreHero)
inline

在文件 CarlaReplayer.h84 行定义.

引用了 IgnoreHero.

被这些函数引用 ACarlaRecorder::SetReplayerIgnoreHero().

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

◆ SetIgnoreSpectator()

void CarlaReplayer::SetIgnoreSpectator ( bool InIgnoreSpectator)
inline

在文件 CarlaReplayer.h90 行定义.

引用了 IgnoreSpectator.

被这些函数引用 ACarlaRecorder::SetReplayerIgnoreSpectator().

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

◆ SetTimeFactor()

void CarlaReplayer::SetTimeFactor ( double NewTimeFactor)
inline

在文件 CarlaReplayer.h78 行定义.

引用了 TimeFactor.

被这些函数引用 ACarlaRecorder::SetReplayerTimeFactor().

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

◆ SkipPacket()

void CarlaReplayer::SkipPacket ( void )
private

在文件 CarlaReplayer.cpp50 行定义.

引用了 File , 以及 CarlaReplayer::Header::Size.

被这些函数引用 GetTotalTime() , 以及 ProcessToTime().

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

◆ Stop()

void CarlaReplayer::Stop ( bool KeepActors = false)

在文件 CarlaReplayer.cpp17 行定义.

引用了 Enabled, File, Helper, IgnoreHero, IsHeroMap, CarlaReplayerHelper::ProcessReplayerFinish(), ProcessToTime() , 以及 TotalTime.

被这些函数引用 CheckPlayAfterMapLoaded(), UCarlaEpisode::EndPlay(), ProcessToTime(), ReplayFile(), ACarlaRecorder::Start(), ACarlaRecorder::StopReplayer() , 以及 ~CarlaReplayer().

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

◆ Tick()

void CarlaReplayer::Tick ( float Time)

在文件 CarlaReplayer.cpp815 行定义.

引用了 Enabled, ProcessToTime(), Tick() , 以及 TimeFactor.

被这些函数引用 Tick() , 以及 ACarlaRecorder::Ticking().

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

◆ UpdatePositions()

void CarlaReplayer::UpdatePositions ( double Per,
double DeltaTime )
private

在文件 CarlaReplayer.cpp746 行定义.

引用了 CurrPos, FollowId, Helper, IgnoreHero, IgnoreSpectator, InterpolatePosition(), IsHeroMap, MappedId, PrevPos, CarlaReplayerHelper::SetCameraPosition() , 以及 TimeFactor.

被这些函数引用 ProcessToTime().

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

类成员变量说明

◆ Autoplay

CarlaReplayer::PlayAfterLoadMap CarlaReplayer::Autoplay { false, "", "", 0.0, 0.0, 0, 1.0, false }
static

在文件 CarlaReplayer.h15 行定义.

被这些函数引用 CheckPlayAfterMapLoaded() , 以及 ReplayFile().

◆ bReplaySensors

bool CarlaReplayer::bReplaySensors = false
private

在文件 CarlaReplayer.h104 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), ProcessEventsAdd() , 以及 ReplayFile().

◆ CurrentTime

double CarlaReplayer::CurrentTime
private

在文件 CarlaReplayer.h117 行定义.

被这些函数引用 ProcessToTime() , 以及 Rewind().

◆ CurrPos

std::vector<CarlaRecorderPosition> CarlaReplayer::CurrPos
private

在文件 CarlaReplayer.h112 行定义.

被这些函数引用 ProcessPositions() , 以及 UpdatePositions().

◆ Enabled

bool CarlaReplayer::Enabled
private

在文件 CarlaReplayer.h103 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), IsEnabled(), ProcessToTime(), ReplayFile(), Stop() , 以及 Tick().

◆ Episode

UCarlaEpisode* CarlaReplayer::Episode = nullptr
private

在文件 CarlaReplayer.h105 行定义.

被这些函数引用 ProcessVisualTime(), ReplayFile() , 以及 SetEpisode().

◆ File

std::ifstream CarlaReplayer::File
private

◆ FollowId

uint32_t CarlaReplayer::FollowId
private

在文件 CarlaReplayer.h123 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), ReplayFile() , 以及 UpdatePositions().

◆ Frame

CarlaRecorderFrame CarlaReplayer::Frame
private

在文件 CarlaReplayer.h110 行定义.

被这些函数引用 GetTotalTime(), ProcessToTime() , 以及 Rewind().

◆ Header

Header CarlaReplayer::Header
private

在文件 CarlaReplayer.h108 行定义.

◆ Helper

CarlaReplayerHelper CarlaReplayer::Helper
private

◆ IgnoreHero

bool CarlaReplayer::IgnoreHero { false }
private

◆ IgnoreSpectator

bool CarlaReplayer::IgnoreSpectator { true }
private

◆ IsHeroMap

std::unordered_map<uint32_t, bool> CarlaReplayer::IsHeroMap
private

◆ MappedId

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

◆ PrevPos

std::vector<CarlaRecorderPosition> CarlaReplayer::PrevPos
private

在文件 CarlaReplayer.h113 行定义.

被这些函数引用 ProcessPositions() , 以及 UpdatePositions().

◆ RecInfo

CarlaRecorderInfo CarlaReplayer::RecInfo
private

在文件 CarlaReplayer.h109 行定义.

被这些函数引用 ReplayFile() , 以及 Rewind().

◆ TimeFactor

double CarlaReplayer::TimeFactor { 1.0 }
private

在文件 CarlaReplayer.h125 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), ReplayFile(), SetTimeFactor(), Tick() , 以及 UpdatePositions().

◆ TimeToStop

double CarlaReplayer::TimeToStop
private

在文件 CarlaReplayer.h118 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), ProcessToTime(), ReplayFile() , 以及 Rewind().

◆ TotalTime

double CarlaReplayer::TotalTime
private

在文件 CarlaReplayer.h119 行定义.

被这些函数引用 CheckPlayAfterMapLoaded(), ReplayFile(), Rewind() , 以及 Stop().


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