ROS2 Publisher class.
More...
#include <ROS2Publisher.h>
|
static UROS2Publisher * | CreateLoopPublisherWithClass (UObject *InOwner, const FString &InTopicName, const TSubclassOf< UROS2Publisher > &InPublisherClass, const float InPubFrequency) |
| Create a new UROS2Publisher of custom publisher class and andd to Node. More...
|
|
static UROS2Publisher * | CreateLoopPublisher (UObject *InOwner, const FString &InTopicName, const TSubclassOf< UROS2Publisher > &InPublisherClass, const TSubclassOf< UROS2GenericMsg > &InMsgClass, float InPubFrequency, const FTopicCallback &InUpdateDelegate, const UROS2QoS InQoS=UROS2QoS::Default) |
| Create a Loop Publisher object. More...
|
|
static UROS2Publisher * | CreatePublisherWithClass (UObject *InOwner, const TSubclassOf< UROS2Publisher > &InPublisherClass, const FString &InTopicName=TEXT("")) |
| Create a new UROS2Publisher and add to Node. More...
|
|
static UROS2Publisher * | CreatePublisher (UObject *InOwner, const FString &InTopicName, const TSubclassOf< UROS2Publisher > &InPublisherClass, const TSubclassOf< UROS2GenericMsg > &InMsgClass, float InPubFrequency, const UROS2QoS InQoS=UROS2QoS::Default) |
| Create a new UROS2Publisher of custom type. More...
|
|
◆ CreateLoopPublisher()
static UROS2Publisher* UROS2Publisher::CreateLoopPublisher |
( |
UObject * |
InOwner, |
|
|
const FString & |
InTopicName, |
|
|
const TSubclassOf< UROS2Publisher > & |
InPublisherClass, |
|
|
const TSubclassOf< UROS2GenericMsg > & |
InMsgClass, |
|
|
float |
InPubFrequency, |
|
|
const FTopicCallback & |
InUpdateDelegate, |
|
|
const UROS2QoS |
InQoS = UROS2QoS::Default |
|
) |
| |
|
static |
Create a Loop Publisher object.
- Parameters
-
InOwner | |
InTopicName | Topic name |
InPublisherClass | Custom output publisher type class |
InMsgClass | Custom message type class |
InPubFrequency | Publishing frequency |
InUpdateDelegate | |
InQoS | |
- Returns
- UROS2Publisher*
UFUNCTION(BlueprintCallable)
◆ CreateLoopPublisherWithClass()
static UROS2Publisher* UROS2Publisher::CreateLoopPublisherWithClass |
( |
UObject * |
InOwner, |
|
|
const FString & |
InTopicName, |
|
|
const TSubclassOf< UROS2Publisher > & |
InPublisherClass, |
|
|
const float |
InPubFrequency |
|
) |
| |
|
static |
Create a new UROS2Publisher of custom publisher class and andd to Node.
Custom Publisher class is expected to override #UROS2Publisher::Update which in loop with frequency.
- Parameters
-
InOwner | |
InTopicName | Topic name |
InPublisherClass | Custom output publisher type class |
InPubFrequency | Publishing frequency |
UFUNCTION(BlueprintCallable)
◆ CreatePublisher()
static UROS2Publisher* UROS2Publisher::CreatePublisher |
( |
UObject * |
InOwner, |
|
|
const FString & |
InTopicName, |
|
|
const TSubclassOf< UROS2Publisher > & |
InPublisherClass, |
|
|
const TSubclassOf< UROS2GenericMsg > & |
InMsgClass, |
|
|
float |
InPubFrequency, |
|
|
const UROS2QoS |
InQoS = UROS2QoS::Default |
|
) |
| |
|
static |
Create a new UROS2Publisher of custom type.
- Parameters
-
InOwner | |
InTopicName | Topic name |
InPublisherClass | Custom output publisher type class |
InMsgClass | Custom message type class |
InPubFrequency | Publishing frequency |
InQoS | |
- Returns
- UROS2Publisher*
UFUNCTION(BlueprintCallable)
◆ CreatePublisherWithClass()
static UROS2Publisher* UROS2Publisher::CreatePublisherWithClass |
( |
UObject * |
InOwner, |
|
|
const TSubclassOf< UROS2Publisher > & |
InPublisherClass, |
|
|
const FString & |
InTopicName = TEXT("") |
|
) |
| |
|
static |
◆ Destroy()
virtual void UROS2Publisher::Destroy |
( |
| ) |
|
|
virtual |
Destroy publisher with rcl_publisher_fini.
Reimplemented from UROS2Topic.
◆ InitializeTopicComponent()
virtual void UROS2Publisher::InitializeTopicComponent |
( |
| ) |
|
|
protectedvirtual |
Initialize Publisher and start timer.
Reimplemented from UROS2Topic.
◆ Publish() [1/2]
void UROS2Publisher::Publish |
( |
| ) |
|
◆ Publish() [2/2]
template<typename TUEMessage , typename TUEStruct >
void UROS2Publisher::Publish |
( |
const TUEStruct & |
InMessageData | ) |
|
|
inline |
Publish a message.
- Template Parameters
-
- Parameters
-
◆ SetDefaultDelegates()
void UROS2Publisher::SetDefaultDelegates |
( |
| ) |
|
◆ SetDelegates()
void UROS2Publisher::SetDelegates |
( |
const FTopicCallback & |
InUpdateDelegate | ) |
|
◆ StartPublishTimer()
void UROS2Publisher::StartPublishTimer |
( |
| ) |
|
◆ StopPublishTimer()
void UROS2Publisher::StopPublishTimer |
( |
| ) |
|
◆ UpdateAndPublish()
void UROS2Publisher::UpdateAndPublish |
( |
| ) |
|
◆ UpdateMessage()
Update msg. Should be implemented in child class.
- Parameters
-
UFUNCTION()
◆ PublicationFrequencyHz
float UROS2Publisher::PublicationFrequencyHz = 1.f |
◆ TimerHandle
FTimerHandle UROS2Publisher::TimerHandle |
|
protected |
◆ TimerManager
◆ UpdateDelegate
FTopicCallback UROS2Publisher::UpdateDelegate |
The documentation for this class was generated from the following file:
- /home/docs/checkouts/readthedocs.org/user_builds/rclue/checkouts/devel/Source/rclUE/Public/ROS2Publisher.h