RapyutaSimulationPlugins
|
Example of URRRobotROS2Interface's child class. More...
#include <RRTurtlebotROS2Interface.h>
Protected Member Functions | |
void | SetupROSParams () override |
Init turlebot's ros parameter and set to publish odom as topic and tf. More... | |
Protected Member Functions inherited from URRRobotROS2Interface | |
template<typename TROS2Message , typename TROS2MessageData , typename TRobot , typename TRobotMemFuncType = void (TRobot::*)(const TROS2MessageData&)> | |
FORCEINLINE void | OnMessageReceived (const TROS2Message *InMsg, const TRobotMemFuncType &InMemFunc) |
template<typename TROS2Message , typename TROS2MessageData , typename TRobot > | |
FORCEINLINE void | OnMessageReceivedFunc (const TROS2Message *InMsg, const TFunction< void(const TROS2MessageData &)> &InFunc) |
template<typename TService , typename TServiceRequest > | |
void | MakeServiceRequest (const FString &InServiceName, const TServiceRequest &InRequest) |
Additional Inherited Members | |
Public Member Functions inherited from URRRobotROS2Interface | |
virtual void | GetLifetimeReplicatedProps (TArray< FLifetimeProperty > &OutLifetimeProps) const override |
Returns the properties used for network replication, this needs to be overridden by all actor classes with native. More... | |
virtual void | Initialize (AActor *Owner) override |
Initialize robot's ROS 2 interface by calling InitRobotROS2Node, InitPublishers, InitSubscriptions and ARRBaseRobot::InitSensors. More... | |
virtual void | InitInterfaces () override |
Init publishers, subscribers, service clients, service servers, action clients, and action servers. More... | |
virtual void | DeInitialize () override |
DeInitialize robot's ROS 2 interface by stopping publisher. More... | |
virtual void | InitROS2NodeParam (AActor *Owner) override |
Spawn ROS2 Node, and initialize it if ROS2 Node = nullptr. More... | |
virtual void | JointCmdCallback (const UROS2GenericMsg *Msg) |
Move robot joints by setting position or velocity to Pawn(=Robot) with given ROS 2 msg. More... | |
void | UpdateJointState (UROS2GenericMsg *InMessage) |
Update Joint State msg. More... | |
virtual bool | InitPublishers () override |
Initialize non sensor basic publishers such as odometry. More... | |
virtual bool | InitSubscriptions () override |
Initialize subscriptions for cmd_vel & joint_states topics. More... | |
virtual void | MovementCallback (const UROS2GenericMsg *Msg) |
MoveRobot by setting velocity to Pawn(=Robot) with given ROS 2 msg. More... | |
Public Member Functions inherited from URRBaseROS2Interface | |
virtual bool | IsSupportedForNetworking () const override |
void | GetLifetimeReplicatedProps (TArray< FLifetimeProperty > &OutLifetimeProps) const override |
Returns the properties used for network replication, this needs to be overridden by all actor classes with native. More... | |
void | BPInitialize () |
AdditionalInitialization implemented in BP. More... | |
virtual void | InitRobotROS2Node (AActor *Owner) |
Spawn ROS2Node and initialize it. More... | |
void | BPSetupROSParams () |
Setup ROS params called after SetupROSParams. override by BP child class to config custom ROS 2 Interface's params. More... | |
void | SetupROSParamsAll () |
Call SetupROSParams and BPSetupROSParams. More... | |
virtual void | StopPublishers () |
Stop all publishers. More... | |
virtual bool | InitServiceClients () |
Initialize service clients. More... | |
virtual bool | InitServiceServers () |
Initialize service servers. More... | |
virtual bool | InitActionClients () |
Initialize action clients. More... | |
virtual bool | InitActionServers () |
Initialize action servers. More... | |
Public Attributes inherited from URRRobotROS2Interface | |
TObjectPtr< ARRBaseRobot > | Robot = nullptr |
Target robot. More... | |
TObjectPtr< URRBaseOdomComponent > | OdomComponent = nullptr |
Odometry source. More... | |
bool | bPublishOdom = true |
bool | bPublishOdomTf = false |
float | OdomPublicationFrequencyHz = 30 |
FString | CmdVelTopicName = TEXT("cmd_vel") |
Movement command topic. If empty is given, subscriber will not be initiated. More... | |
FString | JointCmdTopicName = TEXT("ue_joint_commands") |
Joint control command topic. If empty is given, subscriber will not be initiated. More... | |
TObjectPtr< UROS2Publisher > | JointStatePublisher = nullptr |
JointState Publisher. More... | |
float | JointStatePublicationFrequencyHz = 30.f |
Joint control command topic. If empty is given, subscriber will not be initiated. More... | |
FString | JointStateTopicName = TEXT("ue_joint_states") |
Joint state topic. More... | |
bool | bWarnAboutMissingLink = true |
TObjectPtr< URRROS2TFsPublisher > | JointsTFPublisher = nullptr |
bool | bPublishJointTf = false |
float | JointTfPublicationFrequencyHz = 1.f |
TObjectPtr< URRROS2OdomPublisher > | OdomPublisher = nullptr |
Odom publisher. More... | |
Public Attributes inherited from URRBaseROS2Interface | |
TObjectPtr< UROS2NodeComponent > | RobotROS2Node = nullptr |
ROS 2 node of this interface created by InitRobotROS2Node. More... | |
TObjectPtr< UROS2Spawnable > | ROSSpawnParameters = nullptr |
ROS2SpawnParameters which is created when robot is spawn from /SpawnEntity srv provided by ASimulationState. More... | |
FString | DefautlROSNamespace = TEXT("") |
Defautl ROS namespace. More... | |
TMap< FString, UROS2Publisher * > | Publishers |
You can add your publishers here to ask ROS2Interface to manage. More... | |
TMap< FString, UROS2Subscriber * > | Subscribers |
You can add your subscribers here to ask ROS2Interface to manage. More... | |
TMap< FString, UROS2ServiceClient * > | ServiceClients |
You can add your publishers here to ask ROS2Interface to manage. More... | |
TMap< FString, UROS2ServiceServer * > | ServiceServers |
You can add your publishers here to ask ROS2Interface to manage. More... | |
TMap< FString, UROS2ActionClient * > | ActionClients |
You can add your publishers here to ask ROS2Interface to manage. More... | |
TMap< FString, UROS2ActionServer * > | ActionServers |
You can add your publishers here to ask ROS2Interface to manage. More... | |
Example of URRRobotROS2Interface's child class.
|
inlineoverrideprotectedvirtual |
Init turlebot's ros parameter and set to publish odom as topic and tf.
Reimplemented from URRBaseROS2Interface.