Go to the documentation of this file.
19 #include "CoreMinimal.h"
21 #include "GameFramework/Actor.h"
27 #include "Msgs/ROS2PointCloud2.h"
37 #include "RR3DLidarComponent.generated.h"
98 virtual void TickComponent(
float DeltaTime,
enum ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
override;
148 bool Visible(AActor* TargetActor)
override;
167 FROSPointCloud2 GetROS2Data();
181 virtual void SetROS2Msg(UROS2GenericMsg* InMessage)
override;
192 int32 NChannelsPerScan = 32;
210 return NSamplesPerScan * NChannelsPerScan;
223 float StartVerticalAngle = -45.f;
234 float FOVVertical = 90.f;
249 bool bOrganizedCloud =
false;
uint64 GetTotalScan() const
Get the Total Scan object.
Definition: RR3DLidarComponent.h:206
virtual void SetROS2Msg(UROS2GenericMsg *InMessage)
Set sensor data to ROS 2 msg. This method should be overwritten by child class.
Definition: RRROS2BaseSensorComponent.h:367
Base ROS 2 LIDAR Component class. Other lidar class should inherit from this class.
virtual void SensorUpdate()
Update Sensor data. This method should be overwritten by child class.
Definition: RRROS2BaseSensorComponent.h:348
ROS 2 3D lidar components.
Definition: RR3DLidarComponent.h:62
virtual bool Visible(AActor *TargetActor)
Return true if laser hits the target actor. This method should be overwritten by child class.
Definition: RRBaseLidarComponent.h:103
Base ROS 2 LIDAR Component class. Other lidar class should inherit from this class.
Definition: RRBaseLidarComponent.h:66
virtual void Run()
Start timer to update and publish sensor data by using SetTimer.