Section 3.11. rdActor – Utilities

// [rdInst v1.10] Call regularly to maintain profile information
void rdGetFunctionCycles();

// [rdInst v1.10] Implement this Function with your Blueprint code you want to profile
void rdFunctionCyclesFunction();

// [rdInst v1.35] Adds a StaticMesh Component to the actor
UStaticMeshComponent* rdAddStaticMesh(UStaticMesh* mesh,const FTransform& transform,const FString& label=FString(""));

// [rdInst v1.35] Removes all the StaticMesh Components for this actor
void rdRemoveAllStaticMeshes();

// [rdInst v1.00] Finds the USceneComponent attached to the RootComponent that is a Folder for ChildActors, finding it from the specified Name
USceneComponent* rdFindFolderCompFromName(const FString& folder);

// [rdInst v1.22] Tests if the Actor has moved or changed visibility
void rdTestForActorChange(bool testTransform,bool testVisibility);

// [rdInst v1.35] rdReseatMeshInstances
int32 rdReseatMeshInstances(UStaticMesh* mesh,const FVector& shift);

// [rdInst v1.35] Helper Function that Sets the Label (Editor only) of the Actor
void rdSetActorLabel(const FName label);

// [rdInst v1.00] Gets the Name of the Component Folder
FString rdGetFolderName(USceneComponent* comp);

// [rdInst v1.24] Returns True if the world pointed to by this actor is the same as the game viewport
bool rdIsRealWorld();

// [rdInst v1.10] Returns the Static Array of Dirty rdActors
static TArray<ArdActor*>&	rdGetDirtyList();

// [rdInst v1.20] Returns the Static Array of rdActor with tick hooks
static TArray<ArdActor*>&	rdGetTickHookList();

// [rdInst v1.20] Add this Actor to the TickHook List - receive ticks in editor
void	rdAddToTickHookList();

// [rdInst v1.20] Remove this Actor from the TickHook List
void	rdRemFromTickHookList();

// [rdInst v1.10] The singular Base Actor for Instance Handling and Actor Pooling
ArdInstBaseActor* rdGetBase();

// [rdInst v1.35] Getter and Setter of the SplineInstanceData from rdPopulateSpline and rdPopulateSplinePMC
TArray<FrdSplineInstanceData>& GetSplineInstanceData();
void SetSplineInstanceData(const TArray<FrdSplineInstanceData>& instData);

// [rdInst v1.00] Node to get the current RandomStream for the Actor. If this Actor has parents, the Eldest's RandomStream is returned
FRandomStream& rdGetRandomStream();