CARLA
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
AVehicleActorFactory Class Reference

Factory in charge of spawning static meshes. More...

#include <VehicleActorFactory.h>

+ Inheritance diagram for AVehicleActorFactory:

Public Member Functions

bool PostProcessVehicle (AActor *SpawnedActor, const FActorDescription &VehicleParams)
 
- Public Member Functions inherited from ACarlaActorFactory
 ACarlaActorFactory (const FObjectInitializer &ObjectInitializer)
 

Static Public Member Functions

static void LoadVehicleParametersArrayFromFile (const FString &FileName, TArray< FVehicleParameters > &OutVehicleParamsArray)
 
static void SaveVehicleParametersArrayToFile (const TArray< FVehicleParameters > &VehicleParamsArray, const FString &FileName)
 
- Static Public Member Functions inherited from ACarlaActorFactory
static bool DefinitionReferencesPath (const FActorDefinition &Definition, const FString &MountPoint)
 True when the definition's class or any attribute/variation value points at content under MountPoint.
 

Protected Attributes

TArray< FActorDefinition > Definitions
 
TArray< FVehicleParameters > MineVehiclesParams
 
TArray< FVehicleParameters > VehiclesParams
 

Private Member Functions

virtual TArray< FActorDefinition > GetDefinitions () override
 Retrieve the definitions of the static mesh actor.
 
virtual void ReleaseContentPack (const FString &MountPoint) override
 Drop every cached definition, parameter and loaded asset that refers to content under MountPoint ("/<Pack>/"), so a content pack can be unmounted; the dropped blueprints are gone until the next episode.
 
virtual FActorSpawnResult SpawnActor (const FTransform &SpawnAtTransform, const FActorDescription &ActorDescription) override
 Spawn an actor based on ActorDescription and Transform.
 

Static Private Member Functions

static FString FVehicleParametersArrayToJson (const TArray< FVehicleParameters > &VehicleParamsArray)
 
static TSharedPtr< FJsonObject > FVehicleParametersToJsonObject (const FVehicleParameters &VehicleParams)
 
static bool JsonToFVehicleParameters (const TSharedPtr< FJsonObject > JsonObject, FVehicleParameters &OutVehicleParams)
 
static bool JsonToFVehicleParametersArray (const FString &JsonString, TArray< FVehicleParameters > &OutVehicleParamsArray)
 

Detailed Description

Factory in charge of spawning static meshes.

This factory is able to spawn any mesh in content.

Definition at line 23 of file VehicleActorFactory.h.

Member Function Documentation

◆ FVehicleParametersArrayToJson()

FString AVehicleActorFactory::FVehicleParametersArrayToJson ( const TArray< FVehicleParameters > &  VehicleParamsArray)
staticprivate

◆ FVehicleParametersToJsonObject()

TSharedPtr< FJsonObject > AVehicleActorFactory::FVehicleParametersToJsonObject ( const FVehicleParameters &  VehicleParams)
staticprivate

◆ GetDefinitions()

TArray< FActorDefinition > AVehicleActorFactory::GetDefinitions ( )
overrideprivatevirtual

◆ JsonToFVehicleParameters()

bool AVehicleActorFactory::JsonToFVehicleParameters ( const TSharedPtr< FJsonObject >  JsonObject,
FVehicleParameters &  OutVehicleParams 
)
staticprivate

◆ JsonToFVehicleParametersArray()

bool AVehicleActorFactory::JsonToFVehicleParametersArray ( const FString &  JsonString,
TArray< FVehicleParameters > &  OutVehicleParamsArray 
)
staticprivate

Definition at line 245 of file VehicleActorFactory.cpp.

References JsonToFVehicleParameters().

Referenced by LoadVehicleParametersArrayFromFile().

◆ LoadVehicleParametersArrayFromFile()

void AVehicleActorFactory::LoadVehicleParametersArrayFromFile ( const FString &  FileName,
TArray< FVehicleParameters > &  OutVehicleParamsArray 
)
static

Definition at line 278 of file VehicleActorFactory.cpp.

References JsonToFVehicleParametersArray().

Referenced by GetDefinitions().

◆ PostProcessVehicle()

bool AVehicleActorFactory::PostProcessVehicle ( AActor *  SpawnedActor,
const FActorDescription &  VehicleParams 
)

Referenced by SpawnActor().

◆ ReleaseContentPack()

void AVehicleActorFactory::ReleaseContentPack ( const FString &  MountPoint)
overrideprivatevirtual

Drop every cached definition, parameter and loaded asset that refers to content under MountPoint ("/<Pack>/"), so a content pack can be unmounted; the dropped blueprints are gone until the next episode.

Reimplemented from ACarlaActorFactory.

Definition at line 101 of file VehicleActorFactory.cpp.

References ACarlaActorFactory::DefinitionReferencesPath(), Definitions, MineVehiclesParams, and VehiclesParams.

◆ SaveVehicleParametersArrayToFile()

void AVehicleActorFactory::SaveVehicleParametersArrayToFile ( const TArray< FVehicleParameters > &  VehicleParamsArray,
const FString &  FileName 
)
static

Definition at line 173 of file VehicleActorFactory.cpp.

References FVehicleParametersArrayToJson().

◆ SpawnActor()

FActorSpawnResult AVehicleActorFactory::SpawnActor ( const FTransform &  SpawnAtTransform,
const FActorDescription &  ActorDescription 
)
overrideprivatevirtual

Spawn an actor based on ActorDescription and Transform.

Precondition
ActorDescription is expected to be derived from one of the definitions retrieved with GetDefinitions.

Reimplemented from ACarlaActorFactory.

Definition at line 48 of file VehicleActorFactory.cpp.

References FActorSpawnResult::Actor, FActorDescription::Class, IsValid(), PostProcessVehicle(), UActorBlueprintFunctionLibrary::RetrieveActorAttributeToColor(), FActorSpawnResult::Status, and FActorDescription::Variations.

Member Data Documentation

◆ Definitions

TArray<FActorDefinition> AVehicleActorFactory::Definitions
protected

Definition at line 56 of file VehicleActorFactory.h.

Referenced by GetDefinitions(), and ReleaseContentPack().

◆ MineVehiclesParams

TArray<FVehicleParameters> AVehicleActorFactory::MineVehiclesParams
protected

Definition at line 60 of file VehicleActorFactory.h.

Referenced by GetDefinitions(), and ReleaseContentPack().

◆ VehiclesParams

TArray<FVehicleParameters> AVehicleActorFactory::VehiclesParams
protected

Definition at line 58 of file VehicleActorFactory.h.

Referenced by GetDefinitions(), and ReleaseContentPack().


The documentation for this class was generated from the following files: