Creates multiple cameras and publishes an event with synchronized images from all of these cameras. More...
#include <gvm_multicamera_sensor.h>
Classes | |
struct | CameraData |
struct | ImageData |
Public Types | |
using | ImageDataPtr = std::shared_ptr< ImageData > |
using | NewImagesFn = void(const std::vector< ImageDataPtr > &) |
Public Member Functions | |
bool | attachToLink (const std::string &camera_name, const RefModelConfig &model_config, bool on_init=false) |
event::ConnectionPtr | connectNewImages (const std::function< NewImagesFn > &callback) |
rendering::CameraPtr | getCamera (const std::string &name) |
std::vector< std::string > | getCameraNames () const |
GvmMulticameraSensor () | |
virtual void | Init () override |
void | initRos (ros::NodeHandlePtr &nh, const std::string &set_camera_service_name) |
virtual bool | IsActive () const override |
bool | isRecording () const |
virtual void | Load (const std::string &world_name) override |
void | setRecording (bool recording) |
virtual | ~GvmMulticameraSensor () override |
Static Public Member Functions | |
static sensors::GvmMulticameraSensor * | newSensor () |
Private Member Functions | |
virtual void | Fini () override |
void | Render () |
void | resetCameraVisualization (CameraData &camera) |
bool | setCameraServiceCallback (gazebo_video_monitor_msgs::SetCameraRequest &req, gazebo_video_monitor_msgs::SetCameraResponse &res) |
void | setCameraVisualization (CameraData &camera) |
virtual bool | UpdateImpl (const bool force) override |
Private Attributes | |
std::map< std::string, CameraData > | cameras_ |
std::vector< ImageDataPtr > | images_ |
physics::LinkPtr | link_ |
event::EventT< NewImagesFn > | new_images_ |
bool | recording_ |
bool | rendered_ |
transport::PublisherPtr | request_publisher_ |
transport::PublisherPtr | sensor_publisher_ |
ros::ServiceServer | set_camera_service_ |
transport::PublisherPtr | visual_publisher_ |
Creates multiple cameras and publishes an event with synchronized images from all of these cameras.
Definition at line 50 of file gvm_multicamera_sensor.h.
using gazebo::sensors::GvmMulticameraSensor::ImageDataPtr = std::shared_ptr<ImageData> |
Definition at line 65 of file gvm_multicamera_sensor.h.
using gazebo::sensors::GvmMulticameraSensor::NewImagesFn = void(const std::vector<ImageDataPtr> &) |
Definition at line 67 of file gvm_multicamera_sensor.h.
gazebo::sensors::GvmMulticameraSensor::GvmMulticameraSensor | ( | ) |
Definition at line 29 of file gvm_multicamera_sensor.cpp.
|
overridevirtual |
Definition at line 35 of file gvm_multicamera_sensor.cpp.
bool gazebo::sensors::GvmMulticameraSensor::attachToLink | ( | const std::string & | camera_name, |
const RefModelConfig & | model_config, | ||
bool | on_init = false |
||
) |
Definition at line 133 of file gvm_multicamera_sensor.cpp.
event::ConnectionPtr gazebo::sensors::GvmMulticameraSensor::connectNewImages | ( | const std::function< NewImagesFn > & | callback | ) |
Definition at line 123 of file gvm_multicamera_sensor.cpp.
|
overrideprivatevirtual |
Definition at line 258 of file gvm_multicamera_sensor.cpp.
rendering::CameraPtr gazebo::sensors::GvmMulticameraSensor::getCamera | ( | const std::string & | name | ) |
Definition at line 128 of file gvm_multicamera_sensor.cpp.
std::vector< std::string > gazebo::sensors::GvmMulticameraSensor::getCameraNames | ( | ) | const |
Definition at line 117 of file gvm_multicamera_sensor.cpp.
|
overridevirtual |
Definition at line 51 of file gvm_multicamera_sensor.cpp.
void gazebo::sensors::GvmMulticameraSensor::initRos | ( | ros::NodeHandlePtr & | nh, |
const std::string & | set_camera_service_name | ||
) |
Definition at line 106 of file gvm_multicamera_sensor.cpp.
|
overridevirtual |
Definition at line 96 of file gvm_multicamera_sensor.cpp.
bool gazebo::sensors::GvmMulticameraSensor::isRecording | ( | ) | const |
Definition at line 178 of file gvm_multicamera_sensor.cpp.
|
overridevirtual |
Definition at line 37 of file gvm_multicamera_sensor.cpp.
|
static |
Definition at line 113 of file gvm_multicamera_sensor.cpp.
|
private |
Definition at line 263 of file gvm_multicamera_sensor.cpp.
|
private |
Definition at line 180 of file gvm_multicamera_sensor.cpp.
|
private |
Definition at line 288 of file gvm_multicamera_sensor.cpp.
|
private |
Definition at line 201 of file gvm_multicamera_sensor.cpp.
void gazebo::sensors::GvmMulticameraSensor::setRecording | ( | bool | recording | ) |
Definition at line 174 of file gvm_multicamera_sensor.cpp.
|
overrideprivatevirtual |
Definition at line 272 of file gvm_multicamera_sensor.cpp.
|
private |
Definition at line 235 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 236 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 227 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 233 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 239 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 238 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 231 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 229 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 241 of file gvm_multicamera_sensor.h.
|
private |
Definition at line 230 of file gvm_multicamera_sensor.h.