19 #include "CoreMinimal.h"
21 #include "EngineUtils.h"
31 #include <Msgs/ROS2OverlapEvent.h>
33 #include <Msgs/ROS2Overlaps.h>
43 #include "RRROS2OverlapSensorComponent.generated.h"
98 const FString& InPublisherName =
EMPTY_STR,
102 const UROS2QoS InQoS = UROS2QoS::SensorData)
override;
106 void BeginPlay()
override;
131 void AddTarget(UObject* InTargetObject);
137 void BindCallback(UObject* InTargetObject);
145 void OnOverlap(AActor* OverlappedActor,
149 UPrimitiveComponent* OtherComp,
153 const FString& Name = TEXT(
""));
161 void OnComponentOverlap(UPrimitiveComponent* OverlappedComponent,
165 UPrimitiveComponent* OtherComp,
167 int32 OtherBodyIndex,
178 virtual void OnTargetComponentBeginOverlap(UPrimitiveComponent* OverlappedComponent,
182 UPrimitiveComponent* OtherComp,
184 int32 OtherBodyIndex,
188 const FHitResult& SweepResult);
197 virtual void OnTargetComponentEndOverlap(UPrimitiveComponent* OverlappedComponent,
201 UPrimitiveComponent* OtherComp,
203 int32 OtherBodyIndex);
212 void OnTargetActorBeginOverlap(AActor* OverlappedActor, AActor* OtherActor);
221 void OnTargetActorEndOverlap(AActor* OverlappedActor, AActor* OtherActor);
237 virtual void SetROS2Msg(UROS2GenericMsg* InMessage)
override;
254 UROS2Publisher* EventPublisher =
nullptr;
263 FString EventTopicName = TEXT(
"");
296 bool bIgnoreSelf =
true;
311 bool IsIgnore(AActor* SelfActor, AActor* OtherActor, UPrimitiveComponent* OtherComp);