29 #include <rcl_action/action_client.h>
33 #include "ROS2ActionClient.generated.h"
88 const FString& InActionName,
90 const TSubclassOf<UROS2GenericAction>& InActionClass,
92 const FActionCallback& InGoalResponseDelegate,
94 const FActionCallback& InResultResponseDelegate,
96 const FActionCallback& InFeedbackDelegate,
98 const FSimpleCallback& InCancelResponseDelegate,
104 const UROS2QoS InFeedbackQoS = UROS2QoS::Default,
116 virtual void Destroy()
override;
130 virtual void ProcessReady(rcl_wait_set_t* wait_set)
override;
163 template<
typename TAction,
typename TUEStruct>
175 CastChecked<TAction>(Action)->SetGoalRequest(InGoalData);
210 void SendResultRequest();
227 void SendCancelRequest();
254 void SetDelegates(
const FActionCallback& InFeedbackDelegate,
256 const FActionCallback& InResultResponseDelegate,
258 const FActionCallback& InGoalResponseDelegate,
260 const FSimpleCallback& InCancelResponseDelegate);
272 rmw_request_id_t goal_res_id;
274 rmw_request_id_t result_res_id;
276 rmw_request_id_t cancel_res_id;
280 FActionCallback GoalResponseDelegate;
282 FActionCallback ResultResponseDelegate;
284 FActionCallback FeedbackDelegate;
286 FSimpleCallback CancelResponseDelegate;
343 FString ActionName = TEXT(
"");
402 FActionCallback GoalResponseDelegate;
404 FActionCallback ResultResponseDelegate;
406 FActionCallback FeedbackDelegate;
408 FSimpleCallback CancelResponseDelegate;
412 virtual void BeginPlay()
override
416 if (ActionClient ==
nullptr)
426 GoalResponseDelegate,
428 ResultResponseDelegate,
432 CancelResponseDelegate,