RapyutaSimulationPlugins
Public Member Functions | Public Attributes | List of all members
URRROS2StatePublisher Class Reference

This class should be attached to a robot and publish its states. More...

#include <RRROS2StatePublisher.h>

Inheritance diagram for URRROS2StatePublisher:
Inheritance graph
[legend]
Collaboration diagram for URRROS2StatePublisher:
Collaboration graph
[legend]

Public Member Functions

 URRROS2StatePublisher ()
 
void UpdateMessage (UROS2GenericMsg *InMessage) override
 
void AddEntityToPublish (const FString &InName, const FVector &InPosition, const FRotator &InOrientation, const FString &InRefFrame)
 
virtual void SetTargetRobot (ARobotVehicle *InRobot)
 

Public Attributes

TArray< FROSEntityState > StatesToPublish
 it's responsibility of the owner to update this More...
 
int32 Idx = 0
 
TWeakObjectPtr< ARobotVehicleRobot = nullptr
 
FString FrameId
 
FString ReferenceFrameId
 

Detailed Description

This class should be attached to a robot and publish its states.

It is responsibility of the owning robot to update the structs, this way the class can be kept more flexible and work with robots

defined by multiple actors as well as robots defined by a skeletal mesh. This could use a refactor once the robots are more well

defined and could require a refactor of the main publisher class as well, to avoid the iterator Idx as it is used now Ideally, it

should be this class that fetches all the necessary data to be published.

Todo:
Implementation should follow the other publisher classes.
See also
UROS2Publisher

UCLASS(ClassGroup = (Custom), Blueprintable, meta = (BlueprintSpawnableComponent))

Constructor & Destructor Documentation

◆ URRROS2StatePublisher()

URRROS2StatePublisher::URRROS2StatePublisher ( )

Member Function Documentation

◆ AddEntityToPublish()

void URRROS2StatePublisher::AddEntityToPublish ( const FString &  InName,
const FVector &  InPosition,
const FRotator &  InOrientation,
const FString &  InRefFrame 
)

◆ SetTargetRobot()

virtual void URRROS2StatePublisher::SetTargetRobot ( ARobotVehicle InRobot)
virtual

◆ UpdateMessage()

void URRROS2StatePublisher::UpdateMessage ( UROS2GenericMsg *  InMessage)
override

Member Data Documentation

◆ FrameId

FString URRROS2StatePublisher::FrameId

◆ Idx

int32 URRROS2StatePublisher::Idx = 0

◆ ReferenceFrameId

FString URRROS2StatePublisher::ReferenceFrameId

◆ Robot

TWeakObjectPtr<ARobotVehicle> URRROS2StatePublisher::Robot = nullptr

◆ StatesToPublish

TArray<FROSEntityState> URRROS2StatePublisher::StatesToPublish

it's responsibility of the owner to update this

UPROPERTY(EditAnywhere, BlueprintReadWrite)


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