Public Member Functions | Private Member Functions | Private Attributes | List of all members
rc::ImagePublisher Class Reference

#include <image_publisher.h>

Inheritance diagram for rc::ImagePublisher:
Inheritance graph
[legend]

Public Member Functions

 ImagePublisher (image_transport::ImageTransport &it, const std::string &frame_id, bool left, bool color, bool out1_filter, std::function< void()> &sub_changed)
 
void publish (const rcg::Buffer *buffer, uint32_t part, uint64_t pixelformat) override
 Offers a buffer for publication. More...
 
void requiresComponents (int &components, bool &color) override
 Adds components and if color images are required to the given values. More...
 
bool used () override
 Returns true if there are subscribers to the topic. More...
 
- Public Member Functions inherited from rc::GenICam2RosPublisher
void clearNodemap ()
 Clear nodemap. More...
 
 GenICam2RosPublisher (const std::string &_frame_id)
 
void setNodemap (const std::shared_ptr< GenApi::CNodeMapRef > &_nodemap)
 Set nodemap to be used. More...
 
void subChanged (const ros::SingleSubscriberPublisher &pub)
 Called by publisher if subscription changed. More...
 
void subChangedIt (const image_transport::SingleSubscriberPublisher &pub)
 Called by publisher if subscription changed. More...
 
virtual ~GenICam2RosPublisher ()
 

Private Member Functions

 ImagePublisher (const ImagePublisher &)
 
ImagePublisheroperator= (const ImagePublisher &)
 

Private Attributes

bool color
 
bool left
 
image_transport::Publisher pub
 
image_transport::Publisher pub_out1_high
 
image_transport::Publisher pub_out1_low
 

Additional Inherited Members

- Static Public Attributes inherited from rc::GenICam2RosPublisher
const static int ComponentConfidence = 8
 
const static int ComponentDisparity = 4
 
const static int ComponentError = 16
 
const static int ComponentIntensity = 1
 
const static int ComponentIntensityCombined = 2
 
- Protected Attributes inherited from rc::GenICam2RosPublisher
std::string frame_id
 
std::shared_ptr< GenApi::CNodeMapRef > nodemap
 
std::function< void()> sub_callback
 

Detailed Description

Definition at line 45 of file image_publisher.h.

Constructor & Destructor Documentation

◆ ImagePublisher() [1/2]

rc::ImagePublisher::ImagePublisher ( image_transport::ImageTransport it,
const std::string &  frame_id,
bool  left,
bool  color,
bool  out1_filter,
std::function< void()> &  sub_changed 
)

Definition at line 44 of file image_publisher.cpp.

◆ ImagePublisher() [2/2]

rc::ImagePublisher::ImagePublisher ( const ImagePublisher )
private

Member Function Documentation

◆ operator=()

ImagePublisher& rc::ImagePublisher::operator= ( const ImagePublisher )
private

◆ publish()

void rc::ImagePublisher::publish ( const rcg::Buffer buffer,
uint32_t  part,
uint64_t  pixelformat 
)
overridevirtual

Offers a buffer for publication.

It depends on the the kind of buffer data and the implementation and configuration of the sub-class if the data is published.

Parameters
bufferBuffer with data to be published. The buffer is already attached to the nodemap for accessing the chunk data.
partPart index of image.
pixelformatThe pixelformat as given by buffer->getPixelFormat(part).

Implements rc::GenICam2RosPublisher.

Definition at line 105 of file image_publisher.cpp.

◆ requiresComponents()

void rc::ImagePublisher::requiresComponents ( int &  components,
bool &  color 
)
overridevirtual

Adds components and if color images are required to the given values.

Nothing will be changed if there are no subscribers, i.e. used() == false.

Parameters
componentsComponents Flags that will be updated according to the needs of this publisher.
colorValue that will be updated if this publisher needs color.

Implements rc::GenICam2RosPublisher.

Definition at line 87 of file image_publisher.cpp.

◆ used()

bool rc::ImagePublisher::used ( )
overridevirtual

Returns true if there are subscribers to the topic.

Returns
True if there are subscribers.

Implements rc::GenICam2RosPublisher.

Definition at line 82 of file image_publisher.cpp.

Member Data Documentation

◆ color

bool rc::ImagePublisher::color
private

Definition at line 61 of file image_publisher.h.

◆ left

bool rc::ImagePublisher::left
private

Definition at line 60 of file image_publisher.h.

◆ pub

image_transport::Publisher rc::ImagePublisher::pub
private

Definition at line 63 of file image_publisher.h.

◆ pub_out1_high

image_transport::Publisher rc::ImagePublisher::pub_out1_high
private

Definition at line 65 of file image_publisher.h.

◆ pub_out1_low

image_transport::Publisher rc::ImagePublisher::pub_out1_low
private

Definition at line 64 of file image_publisher.h.


The documentation for this class was generated from the following files:


rc_genicam_driver
Author(s): Heiko Hirschmueller , Felix Ruess
autogenerated on Sat Oct 26 2024 02:04:09