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

#include <CustomV2XSensor.h>

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

Public 成员函数

 ACustomV2XSensor (const FObjectInitializer &ObjectInitializer)
 
virtual void PostPhysTick (UWorld *World, ELevelTick TickType, float DeltaTime) override
 
virtual void PrePhysTick (float DeltaSeconds) override
 
void Send (const FString message)
 
void Set (const FActorDescription &ActorDescription) override
 
void SetOwner (AActor *Owner) override
 
void SetPathLossModel (const EPathLossModel path_loss_model)
 
void SetPropagationParams (const float TransmitPower, const float ReceiverSensitivity, const float Frequency, const float combined_antenna_gain, const float path_loss_exponent, const float reference_distance_fspl, const float filter_distance, const bool use_etsi_fading, const float custom_fading_stddev)
 
void SetScenario (EScenario scenario)
 
- Public 成员函数 继承自 ASensor
 ASensor (const FObjectInitializer &ObjectInitializer)
 
virtual void BeginPlay ()
 
boost::optional< FActorAttributeGetAttribute (const FString Name)
 
const UCarlaEpisodeGetEpisode () const
 
URandomEngineGetRandomEngine ()
 
int32 GetSeed () const
 
auto GetToken () const
 Return the token that allows subscribing to this sensor's stream.
 
bool IsStreamReady ()
 
FDataStream MoveDataStream ()
 
virtual void OnFirstClientConnected ()
 
virtual void OnLastClientDisconnected ()
 
void PostPhysTickInternal (UWorld *World, ELevelTick TickType, float DeltaSeconds)
 
void SetDataStream (FDataStream InStream)
 Replace the FDataStream associated with this sensor.
 
void SetEpisode (const UCarlaEpisode &InEpisode)
 
void SetSeed (int32 InSeed)
 
void Tick (const float DeltaTime) final
 

静态 Public 成员函数

static FActorDefinition GetSensorDefinition ()
 

Private 类型

using ActorV2XDataMap = std::map<AActor *, carla::sensor::data::CustomV2XData>
 
using FV2XData = carla::sensor::data::CustomV2XDataS
 
using V2XDataList = std::vector<carla::sensor::data::CustomV2XData>
 

Private 成员函数

CustomV2XM_t CreateCustomV2XMessage ()
 
void CreateITSPduHeader (CustomV2XM_t &message)
 
void WriteMessageToV2XData (const ACustomV2XSensor::V2XDataList &msg_received_power_list)
 

Private 属性

std::string mMessageData
 
bool mMessageDataChanged = false
 
const long mMessageId = ITSContainer::messageID_custom
 
const long mProtocolVersion = 2
 
long mStationId
 
FV2XData mV2XData
 
PathLossModelPathLossModelObj
 

静态 Private 属性

static constexpr uint16_t data_size = sizeof(CustomV2XM_t::message)
 
static ACustomV2XSensor::ActorV2XDataMap mActorV2XDataMap
 
static std::list< AActor * > mV2XActorContainer
 

额外继承的成员函数

- Protected 成员函数 继承自 ASensor
void EndPlay (EEndPlayReason::Type EndPlayReason) override
 
template<typename SensorT >
FAsyncDataStream GetDataStream (const SensorT &Self)
 Return the FDataStream associated with this sensor.
 
void PostActorCreated () override
 
- Protected 属性 继承自 ASensor
bool bIsActive = false
 
URandomEngineRandomEngine = nullptr
 Random Engine used to provide noise for sensor output.
 
int32 Seed = 123456789
 Seed of the pseudo-random engine.
 

详细描述

在文件 CustomV2XSensor.h20 行定义.

成员类型定义说明

◆ ActorV2XDataMap

在文件 CustomV2XSensor.h26 行定义.

◆ FV2XData

在文件 CustomV2XSensor.h24 行定义.

◆ V2XDataList

在文件 CustomV2XSensor.h25 行定义.

构造及析构函数说明

◆ ACustomV2XSensor()

ACustomV2XSensor::ACustomV2XSensor ( const FObjectInitializer & ObjectInitializer)

在文件 CustomV2XSensor.cpp20 行定义.

引用了 PathLossModelObj , 以及 ASensor::RandomEngine.

成员函数说明

◆ CreateCustomV2XMessage()

CustomV2XM_t ACustomV2XSensor::CreateCustomV2XMessage ( )
private

在文件 CustomV2XSensor.cpp128 行定义.

引用了 CreateITSPduHeader(), CustomV2XM::message, mMessageData , 以及 mMessageDataChanged.

被这些函数引用 PrePhysTick().

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

◆ CreateITSPduHeader()

void ACustomV2XSensor::CreateITSPduHeader ( CustomV2XM_t & message)
private

在文件 CustomV2XSensor.cpp138 行定义.

引用了 CustomV2XM::header, ITSContainer::ItsPduHeader::messageID, mMessageId, mProtocolVersion, mStationId, ITSContainer::ItsPduHeader::protocolVersion , 以及 ITSContainer::ItsPduHeader::stationID.

被这些函数引用 CreateCustomV2XMessage().

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

◆ GetSensorDefinition()

FActorDefinition ACustomV2XSensor::GetSensorDefinition ( )
static

在文件 CustomV2XSensor.cpp62 行定义.

引用了 UActorBlueprintFunctionLibrary::MakeCustomV2XDefinition().

+ 函数调用图:

◆ PostPhysTick()

void ACustomV2XSensor::PostPhysTick ( UWorld * World,
ELevelTick TickType,
float DeltaTime )
overridevirtual

重载 ASensor .

在文件 CustomV2XSensor.cpp151 行定义.

引用了 UCarlaEpisode::GetActorRegistry(), UCarlaStatics::GetCurrentEpisode(), ASensor::GetDataStream(), carla::sensor::data::CustomV2XDataS::GetMessageCount(), PathLossModel::GetReceiveActorPowerList(), mActorV2XDataMap, carla::sensor::data::CustomV2XData::Message, mV2XData, PathLossModelObj, PostPhysTick(), carla::sensor::data::CustomV2XData::Power, carla::sensor::data::CustomV2XDataS::Reset(), PathLossModel::Simulate() , 以及 WriteMessageToV2XData().

被这些函数引用 PostPhysTick().

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

◆ PrePhysTick()

void ACustomV2XSensor::PrePhysTick ( float DeltaSeconds)
overridevirtual

重载 ASensor .

在文件 CustomV2XSensor.cpp103 行定义.

引用了 CreateCustomV2XMessage(), PathLossModel::GetTransmitPower(), mActorV2XDataMap, carla::sensor::data::CustomV2XData::Message, mMessageDataChanged, PathLossModelObj , 以及 carla::sensor::data::CustomV2XData::Power.

+ 函数调用图:

◆ Send()

void ACustomV2XSensor::Send ( const FString message)

在文件 CustomV2XSensor.cpp218 行定义.

引用了 mMessageData , 以及 mMessageDataChanged.

被这些函数引用 FCarlaServer::FPimpl::BindActions().

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

◆ Set()

void ACustomV2XSensor::Set ( const FActorDescription & ActorDescription)
overridevirtual

重载 ASensor .

在文件 CustomV2XSensor.cpp68 行定义.

引用了 UActorBlueprintFunctionLibrary::SetCustomV2X().

+ 函数调用图:

◆ SetOwner()

void ACustomV2XSensor::SetOwner ( AActor * Owner)
override

在文件 CustomV2XSensor.cpp30 行定义.

引用了 UCarlaEpisode::FindCarlaActor(), FCarlaActor::GetActorId(), UCarlaStatics::GetCurrentEpisode(), mStationId, mV2XActorContainer, PathLossModelObj , 以及 PathLossModel::SetOwner().

+ 函数调用图:

◆ SetPathLossModel()

void ACustomV2XSensor::SetPathLossModel ( const EPathLossModel path_loss_model)

在文件 CustomV2XSensor.cpp89 行定义.

引用了 PathLossModelObj , 以及 PathLossModel::SetPathLossModel().

被这些函数引用 UActorBlueprintFunctionLibrary::SetCustomV2X().

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

◆ SetPropagationParams()

void ACustomV2XSensor::SetPropagationParams ( const float TransmitPower,
const float ReceiverSensitivity,
const float Frequency,
const float combined_antenna_gain,
const float path_loss_exponent,
const float reference_distance_fspl,
const float filter_distance,
const bool use_etsi_fading,
const float custom_fading_stddev )

在文件 CustomV2XSensor.cpp75 行定义.

引用了 PathLossModelObj , 以及 PathLossModel::SetParams().

被这些函数引用 UActorBlueprintFunctionLibrary::SetCustomV2X().

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

◆ SetScenario()

void ACustomV2XSensor::SetScenario ( EScenario scenario)

在文件 CustomV2XSensor.cpp93 行定义.

引用了 PathLossModelObj , 以及 PathLossModel::SetScenario().

被这些函数引用 UActorBlueprintFunctionLibrary::SetCustomV2X().

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

◆ WriteMessageToV2XData()

void ACustomV2XSensor::WriteMessageToV2XData ( const ACustomV2XSensor::V2XDataList & msg_received_power_list)
private

在文件 CustomV2XSensor.cpp209 行定义.

引用了 mV2XData , 以及 carla::sensor::data::CustomV2XDataS::WriteMessage().

被这些函数引用 PostPhysTick().

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

类成员变量说明

◆ data_size

constexpr uint16_t ACustomV2XSensor::data_size = sizeof(CustomV2XM_t::message)
staticconstexprprivate

在文件 CustomV2XSensor.h71 行定义.

◆ mActorV2XDataMap

ACustomV2XSensor::ActorV2XDataMap ACustomV2XSensor::mActorV2XDataMap
staticprivate

在文件 CustomV2XSensor.h57 行定义.

被这些函数引用 PostPhysTick() , 以及 PrePhysTick().

◆ mMessageData

std::string ACustomV2XSensor::mMessageData
private

在文件 CustomV2XSensor.h69 行定义.

被这些函数引用 CreateCustomV2XMessage() , 以及 Send().

◆ mMessageDataChanged

bool ACustomV2XSensor::mMessageDataChanged = false
private

在文件 CustomV2XSensor.h70 行定义.

被这些函数引用 CreateCustomV2XMessage(), PrePhysTick() , 以及 Send().

◆ mMessageId

const long ACustomV2XSensor::mMessageId = ITSContainer::messageID_custom
private

在文件 CustomV2XSensor.h67 行定义.

被这些函数引用 CreateITSPduHeader().

◆ mProtocolVersion

const long ACustomV2XSensor::mProtocolVersion = 2
private

在文件 CustomV2XSensor.h66 行定义.

被这些函数引用 CreateITSPduHeader().

◆ mStationId

long ACustomV2XSensor::mStationId
private

在文件 CustomV2XSensor.h68 行定义.

被这些函数引用 CreateITSPduHeader() , 以及 SetOwner().

◆ mV2XActorContainer

std::list< AActor * > ACustomV2XSensor::mV2XActorContainer
staticprivate

在文件 CustomV2XSensor.h53 行定义.

被这些函数引用 SetOwner().

◆ mV2XData

FV2XData ACustomV2XSensor::mV2XData
private

在文件 CustomV2XSensor.h58 行定义.

被这些函数引用 PostPhysTick() , 以及 WriteMessageToV2XData().

◆ PathLossModelObj

PathLossModel* ACustomV2XSensor::PathLossModelObj
private

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