CARLA
载入中...
搜索中...
未找到
Unreal
CarlaUE4
Plugins
Carla
Source
Carla
Actor
ActorSpawnResult.h
浏览该文件的文档.
1
// 版权所有 (c) 2017 巴塞罗那自治大学 (UAB) 计算机视觉中心 (CVC)。
2
//
3
// 本作品根据 MIT 许可证的条款进行许可。
4
// 有关副本,请参阅 <https://opensource.org/licenses/MIT>。
5
6
#pragma once
7
// 这是一个预处理器指令,用于确保头文件只被包含一次,避免重复定义等问题
8
9
#include "ActorSpawnResult.generated.h"
10
// 包含一个自动生成的头文件,通常与UE4(Unreal Engine 4)的反射系统相关,用于支持蓝图等功能
11
12
// 定义了一个名为EActorSpawnResultStatus的枚举类型,用于表示参与者属性的有效类型列表
13
// 并且标记为可在蓝图中使用(BlueprintType)
14
UENUM(BlueprintType)
15
enum class
EActorSpawnResultStatus
: uint8
16
{
17
// 表示生成参与者成功的状态,通过元数据(UMETA)设置在蓝图中显示的名称为 "Success"
18
Success
UMETA
(DisplayName =
"Success"
),
19
// 表示参与者描述无效的状态,在蓝图中显示名称为 "Invalid actor description"
20
InvalidDescription
UMETA
(DisplayName =
"Invalid actor description"
),
21
// 表示因为在生成位置发生碰撞而导致生成失败的状态,蓝图中显示名称为相应字符串
22
Collision
UMETA
(DisplayName =
"Failed because collision at spawn position"
),
23
// 表示未知错误的状态,蓝图中显示名称为 "Unknown Error"
24
UnknownError
UMETA
(DisplayName =
"Unknown Error"
),
25
26
// 这个枚举成员通常用于表示枚举的大小等内部用途,标记为隐藏(Hidden),不在蓝图等外部可见
27
SIZE
UMETA
(Hidden)
28
};
29
30
// 定义了一个名为FActorSpawnResult的结构体,标记为可在蓝图中使用(BlueprintType)
31
// 该结构体用于表示参与者生成函数的结果
32
USTRUCT(BlueprintType)
33
struct
FActorSpawnResult
34
{
35
GENERATED_BODY()
36
// 这是UE4的宏,用于生成支持反射等功能所需的代码,具体由引擎的代码生成工具处理
37
38
// 默认构造函数,使用默认的初始化方式
39
FActorSpawnResult
() = default;
40
41
// 显式构造函数,接受一个AActor类型的指针参数InActor
42
// 根据传入的指针是否为空来初始化结构体中的成员变量Status
43
// 如果传入的指针不为空,则状态设为Success,否则设为UnknownError
44
explicit
FActorSpawnResult
(
AActor
*InActor)
45
:
Actor
(InActor),
46
Status(
Actor
!=
nullptr
?
47
EActorSpawnResultStatus
::
Success
:
48
EActorSpawnResultStatus
::UnknownError) {}
49
50
// 静态函数,用于将EActorSpawnResultStatus类型的状态转换为FString类型的字符串表示
51
static
FString StatusToString(
EActorSpawnResultStatus
Status);
52
53
// 成员函数,用于判断当前的FActorSpawnResult对象是否有效
54
// 有效条件是Actor指针不为空且状态为Success
55
bool
IsValid
()
const
56
{
57
return
(
Actor
!=
nullptr
) && (Status == EActorSpawnResultStatus::Success);
58
}
59
60
// 声明一个可编辑(EditAnywhere)且可在蓝图中读写(BlueprintReadWrite)的属性
61
// 用于存储指向AActor的指针,初始化为nullptr
62
UPROPERTY(EditAnywhere, BlueprintReadWrite)
63
AActor
*
Actor
=
nullptr
;
64
65
// 同样声明一个可编辑且可在蓝图中读写的属性,用于存储参与者生成结果的状态
66
// 初始化为UnknownError状态
67
UPROPERTY(EditAnywhere, BlueprintReadWrite)
68
EActorSpawnResultStatus
Status =
EActorSpawnResultStatus
::UnknownError;
69
};
EActorSpawnResultStatus
EActorSpawnResultStatus
Definition
ActorSpawnResult.h:16
EActorSpawnResultStatus::UMETA
@ UMETA
Actor
TSharedPtr< const FActorInfo > carla::rpc::ActorState UWorld Actor
Definition
CarlaActor.cpp:83
CarlaRecorderPacketId::Collision
@ Collision
ECarlaServerResponse::Success
@ Success
AActor
FActorSpawnResult
Definition
ActorSpawnResult.h:34
FActorSpawnResult::IsValid
bool IsValid() const
Definition
ActorSpawnResult.h:55
制作者
1.10.0