RapyutaSimulationPlugins
|
ROS 2 Camera component. Uses USceneCaptureComponent2D. More...
#include <RRROS2CameraComponent.h>
Public Member Functions | |
URRROS2CameraComponent () | |
Construct a new URRROS2CameraComponent object. More... | |
virtual void | PreInitializePublisher (UROS2NodeComponent *InROS2Node, const FString &InTopicName) override |
Initialize Data and RenderTarget, set SceneCaptureComponent parameters. More... | |
virtual void | SensorUpdate () override |
Update sensor data by CaptureScene and CaptureNonBlocking. More... | |
virtual FROSImg | GetROS2Data () |
Update ROS 2 Msg structure from RenderRequestQueue. More... | |
virtual void | SetROS2Msg (UROS2GenericMsg *InMessage) override |
Set result of GetROS2Data to InMessage. More... | |
Public Member Functions inherited from URRROS2BaseSensorComponent | |
URRROS2BaseSensorComponent () | |
Construct a new URRROS2BaseSensorComponent object. More... | |
virtual void | InitalizeWithROS2 (UROS2NodeComponent *InROS2Node, const FString &InPublisherName=TEXT(""), const FString &InTopicName=TEXT(""), const UROS2QoS InQoS=UROS2QoS::SensorData) |
Create and initialize publisher and start sensor update by calling. More... | |
virtual void | CreatePublisher (const FString &InPublisherName=TEXT("")) |
Create a Publisher with SensorPublisherClass. More... | |
virtual void | InitializePublisher (UROS2NodeComponent *InROS2Node, const UROS2QoS InQoS=UROS2QoS::SensorData) |
Initialize Sensorpublisher by using UROS2Publisher's methods. More... | |
virtual void | Run () |
Start timer to update and publish sensor data by using SetTimer. More... | |
virtual void | Stop () |
Stop timer to update and publish sensor data by using ClearTimer. More... | |
Public Attributes | |
UCameraComponent * | CameraComponent = nullptr |
Camera. Not necessary to capture but useful to see image in UE4 windows. More... | |
USceneCaptureComponent2D * | SceneCaptureComponent = nullptr |
UTextureRenderTarget2D * | RenderTarget = nullptr |
int32 | Width = 640 |
int32 | Height = 480 |
int32 | QueueSize = 2 |
EROS2CameraType | CameraType = EROS2CameraType::RGB |
FString | Encoding = TEXT("rgb8") |
Public Attributes inherited from URRROS2BaseSensorComponent | |
TSubclassOf< UROS2Publisher > | SensorPublisherClass = URRROS2BaseSensorPublisher::StaticClass() |
URRROS2BaseSensorPublisher * | SensorPublisher = nullptr |
TSubclassOf< UROS2GenericMsg > | MsgClass = UROS2GenericMsg::StaticClass() |
FString | TopicName = TEXT("sensor_data") |
FString | FrameId = TEXT("sensor_frame") |
int32 | PublicationFrequencyHz = 30 |
bool | bAppendNodeNamespace = true |
Append namespace to FrameId or not. More... | |
bool | bIsValid = true |
Protected Member Functions | |
void | CaptureNonBlocking () |
Capture data by notifing task in RenderRequestQueue. More... | |
Protected Attributes | |
TQueue< FRenderRequest * > | RenderRequestQueue |
FROSImg | Data |
int32 | QueueCount = 0 |
Protected Attributes inherited from URRROS2BaseSensorComponent | |
FTimerHandle | TimerHandle |
ROS 2 Camera component. Uses USceneCaptureComponent2D.
UCLASS(ClassGroup = (Custom), Blueprintable, meta = (BlueprintSpawnableComponent))
URRROS2CameraComponent::URRROS2CameraComponent | ( | ) |
Construct a new URRROS2CameraComponent object.
Initialize SceneCaptureComponent and CameraComponent.
|
protected |
Capture data by notifing task in RenderRequestQueue.
|
virtual |
|
overridevirtual |
Initialize Data and RenderTarget, set SceneCaptureComponent parameters.
InROS2Node | ROS2Node which this publisher belongs to |
InTopicName |
Reimplemented from URRROS2BaseSensorComponent.
|
overridevirtual |
Update sensor data by CaptureScene and CaptureNonBlocking.
Reimplemented from URRROS2BaseSensorComponent.
|
overridevirtual |
Set result of GetROS2Data to InMessage.
InMessage |
Reimplemented from URRROS2BaseSensorComponent.
UCameraComponent* URRROS2CameraComponent::CameraComponent = nullptr |
Camera. Not necessary to capture but useful to see image in UE4 windows.
EROS2CameraType URRROS2CameraComponent::CameraType = EROS2CameraType::RGB |
|
protected |
FString URRROS2CameraComponent::Encoding = TEXT("rgb8") |
int32 URRROS2CameraComponent::Height = 480 |
|
protected |
int32 URRROS2CameraComponent::QueueSize = 2 |
|
protected |
UTextureRenderTarget2D* URRROS2CameraComponent::RenderTarget = nullptr |
USceneCaptureComponent2D* URRROS2CameraComponent::SceneCaptureComponent = nullptr |
int32 URRROS2CameraComponent::Width = 640 |