Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
spinnaker_camera_driver::SpinnakerCamera Class Reference

#include <SpinnakerCamera.h>

Public Member Functions

void connect ()
 Function that connects to a specified camera. More...
 
void disconnect ()
 Disconnects from the camera. More...
 
int getHeightMax ()
 
uint32_t getSerial ()
 
int getWidthMax ()
 
void grabImage (sensor_msgs::Image *image, const std::string &frame_id)
 Loads the raw data from the cameras buffer. More...
 
bool readableProperty (const Spinnaker::GenICam::gcstring property_name)
 
Spinnaker::GenApi::CNodePtr readProperty (const Spinnaker::GenICam::gcstring property_name)
 
void setDesiredCamera (const uint32_t &id)
 Used to set the serial number for the camera you wish to connect to. More...
 
void setGain (const float &gain)
 
void setNewConfiguration (const spinnaker_camera_driver::SpinnakerConfig &config, const uint32_t &level)
 Function that allows reconfiguration of the camera. More...
 
void setTimeout (const double &timeout)
 Will set grabImage timeout for the camera. More...
 
 SpinnakerCamera ()
 
void start ()
 Starts the camera loading data into its buffer. More...
 
void stop ()
 Stops the camera loading data into its buffer. More...
 
 ~SpinnakerCamera ()
 

Static Public Attributes

static const uint8_t LEVEL_RECONFIGURE_CLOSE = 3
 
static const uint8_t LEVEL_RECONFIGURE_RUNNING = 0
 
static const uint8_t LEVEL_RECONFIGURE_STOP = 1
 

Private Member Functions

void ConfigureChunkData (const Spinnaker::GenApi::INodeMap &nodeMap)
 

Private Attributes

bool auto_packet_size_
 If true, GigE packet size is automatically determined, otherwise packet_size_ is used: More...
 
std::shared_ptr< Cameracamera_
 
Spinnaker::CameraList camList_
 
volatile bool captureRunning_
 
Spinnaker::ChunkData image_metadata_
 
bool isColor_
 If true, camera is currently running in color mode, otherwise camera is running in mono mode. More...
 
std::mutex mutex_
 A mutex to make sure that we don't try to grabImages while reconfiguring or vice versa. More...
 
Spinnaker::GenApi::INodeMap * node_map_
 
unsigned int packet_delay_
 GigE packet delay: More...
 
unsigned int packet_size_
 GigE packet size: More...
 
Spinnaker::CameraPtr pCam_
 
uint32_t serial_
 A variable to hold the serial number of the desired camera. More...
 
Spinnaker::SystemPtr system_
 
uint64_t timeout_
 

Detailed Description

Definition at line 69 of file SpinnakerCamera.h.

Constructor & Destructor Documentation

◆ SpinnakerCamera()

spinnaker_camera_driver::SpinnakerCamera::SpinnakerCamera ( )

Definition at line 54 of file SpinnakerCamera.cpp.

◆ ~SpinnakerCamera()

spinnaker_camera_driver::SpinnakerCamera::~SpinnakerCamera ( )

Definition at line 67 of file SpinnakerCamera.cpp.

Member Function Documentation

◆ ConfigureChunkData()

void spinnaker_camera_driver::SpinnakerCamera::ConfigureChunkData ( const Spinnaker::GenApi::INodeMap &  nodeMap)
private

Definition at line 482 of file SpinnakerCamera.cpp.

◆ connect()

void spinnaker_camera_driver::SpinnakerCamera::connect ( )

Function that connects to a specified camera.

Will connect to the camera specified in the setDesiredCamera(std::string id) call. If setDesiredCamera is not called first this will connect to the first camera. Connecting to the first camera is not recommended for multi-camera or production systems. This function must be called before setNewConfiguration() or start()!

Definition at line 145 of file SpinnakerCamera.cpp.

◆ disconnect()

void spinnaker_camera_driver::SpinnakerCamera::disconnect ( )

Disconnects from the camera.

Disconnects the camera and frees it.

Definition at line 277 of file SpinnakerCamera.cpp.

◆ getHeightMax()

int spinnaker_camera_driver::SpinnakerCamera::getHeightMax ( )

Definition at line 105 of file SpinnakerCamera.cpp.

◆ getSerial()

uint32_t spinnaker_camera_driver::SpinnakerCamera::getSerial ( )
inline

Definition at line 169 of file SpinnakerCamera.h.

◆ getWidthMax()

int spinnaker_camera_driver::SpinnakerCamera::getWidthMax ( )

Definition at line 113 of file SpinnakerCamera.cpp.

◆ grabImage()

void spinnaker_camera_driver::SpinnakerCamera::grabImage ( sensor_msgs::Image *  image,
const std::string &  frame_id 
)

Loads the raw data from the cameras buffer.

This function will load the raw data from the buffer and place it into a sensor_msgs::Image.

Parameters
imagesensor_msgs::Image that will be filled with the image currently in the buffer.
frame_idThe name of the optical frame of the camera.

Definition at line 335 of file SpinnakerCamera.cpp.

◆ readableProperty()

bool spinnaker_camera_driver::SpinnakerCamera::readableProperty ( const Spinnaker::GenICam::gcstring  property_name)

Definition at line 121 of file SpinnakerCamera.cpp.

◆ readProperty()

Spinnaker::GenApi::CNodePtr spinnaker_camera_driver::SpinnakerCamera::readProperty ( const Spinnaker::GenICam::gcstring  property_name)

Definition at line 133 of file SpinnakerCamera.cpp.

◆ setDesiredCamera()

void spinnaker_camera_driver::SpinnakerCamera::setDesiredCamera ( const uint32_t &  id)

Used to set the serial number for the camera you wish to connect to.

Sets the desired serial number. If this value is not set, the driver will try to connect to the first camera on the bus. This function should be called before connect().

Parameters
idserial number for the camera. Should be something like 10491081.

Definition at line 477 of file SpinnakerCamera.cpp.

◆ setGain()

void spinnaker_camera_driver::SpinnakerCamera::setGain ( const float &  gain)

Definition at line 99 of file SpinnakerCamera.cpp.

◆ setNewConfiguration()

void spinnaker_camera_driver::SpinnakerCamera::setNewConfiguration ( const spinnaker_camera_driver::SpinnakerConfig &  config,
const uint32_t &  level 
)

Function that allows reconfiguration of the camera.

This function handles a reference of a camera_library::CameraConfig object and configures the camera as close to the given values as possible. As a function for dynamic_reconfigure, values that are not valid are changed by the driver and can be inspected after this function ends. This function will stop and restart the camera when called on a SensorLevels::RECONFIGURE_STOP level.

Parameters
configcamera_library::CameraConfig object passed by reference. Values will be changed to those the driver is currently using.
levelReconfiguration level. See constants below for details.
Returns
Returns true when the configuration could be applied without modification.

Definition at line 72 of file SpinnakerCamera.cpp.

◆ setTimeout()

void spinnaker_camera_driver::SpinnakerCamera::setTimeout ( const double &  timeout)

Will set grabImage timeout for the camera.

This function will set the time required for grabCamera to throw a timeout exception. Must be called after connect().

Parameters
timeoutThe desired timeout value (in seconds)

Definition at line 473 of file SpinnakerCamera.cpp.

◆ start()

void spinnaker_camera_driver::SpinnakerCamera::start ( )

Starts the camera loading data into its buffer.

This function will start the camera capturing images and loading them into the buffer. To retrieve images, grabImage must be called.

Definition at line 300 of file SpinnakerCamera.cpp.

◆ stop()

void spinnaker_camera_driver::SpinnakerCamera::stop ( )

Stops the camera loading data into its buffer.

This function will stop the camera capturing images and loading them into the buffer.

Definition at line 318 of file SpinnakerCamera.cpp.

Member Data Documentation

◆ auto_packet_size_

bool spinnaker_camera_driver::SpinnakerCamera::auto_packet_size_
private

If true, GigE packet size is automatically determined, otherwise packet_size_ is used:

Definition at line 196 of file SpinnakerCamera.h.

◆ camera_

std::shared_ptr<Camera> spinnaker_camera_driver::SpinnakerCamera::camera_
private

Definition at line 183 of file SpinnakerCamera.h.

◆ camList_

Spinnaker::CameraList spinnaker_camera_driver::SpinnakerCamera::camList_
private

Definition at line 178 of file SpinnakerCamera.h.

◆ captureRunning_

volatile bool spinnaker_camera_driver::SpinnakerCamera::captureRunning_
private

A status boolean that checks if the camera has been started and is loading images into its buffer.

Definition at line 188 of file SpinnakerCamera.h.

◆ image_metadata_

Spinnaker::ChunkData spinnaker_camera_driver::SpinnakerCamera::image_metadata_
private

Definition at line 185 of file SpinnakerCamera.h.

◆ isColor_

bool spinnaker_camera_driver::SpinnakerCamera::isColor_
private

If true, camera is currently running in color mode, otherwise camera is running in mono mode.

Definition at line 192 of file SpinnakerCamera.h.

◆ LEVEL_RECONFIGURE_CLOSE

const uint8_t spinnaker_camera_driver::SpinnakerCamera::LEVEL_RECONFIGURE_CLOSE = 3
static

Parameters that need a sensor to be stopped completely when changed.

Definition at line 92 of file SpinnakerCamera.h.

◆ LEVEL_RECONFIGURE_RUNNING

const uint8_t spinnaker_camera_driver::SpinnakerCamera::LEVEL_RECONFIGURE_RUNNING = 0
static

Parameters that can be changed while a sensor is streaming.

Definition at line 98 of file SpinnakerCamera.h.

◆ LEVEL_RECONFIGURE_STOP

const uint8_t spinnaker_camera_driver::SpinnakerCamera::LEVEL_RECONFIGURE_STOP = 1
static

Parameters that need a sensor to stop streaming when changed.

Definition at line 95 of file SpinnakerCamera.h.

◆ mutex_

std::mutex spinnaker_camera_driver::SpinnakerCamera::mutex_
private

A mutex to make sure that we don't try to grabImages while reconfiguring or vice versa.

Definition at line 187 of file SpinnakerCamera.h.

◆ node_map_

Spinnaker::GenApi::INodeMap* spinnaker_camera_driver::SpinnakerCamera::node_map_
private

Definition at line 182 of file SpinnakerCamera.h.

◆ packet_delay_

unsigned int spinnaker_camera_driver::SpinnakerCamera::packet_delay_
private

GigE packet delay:

Definition at line 200 of file SpinnakerCamera.h.

◆ packet_size_

unsigned int spinnaker_camera_driver::SpinnakerCamera::packet_size_
private

GigE packet size:

Definition at line 198 of file SpinnakerCamera.h.

◆ pCam_

Spinnaker::CameraPtr spinnaker_camera_driver::SpinnakerCamera::pCam_
private

Definition at line 179 of file SpinnakerCamera.h.

◆ serial_

uint32_t spinnaker_camera_driver::SpinnakerCamera::serial_
private

A variable to hold the serial number of the desired camera.

Definition at line 175 of file SpinnakerCamera.h.

◆ system_

Spinnaker::SystemPtr spinnaker_camera_driver::SpinnakerCamera::system_
private

Definition at line 177 of file SpinnakerCamera.h.

◆ timeout_

uint64_t spinnaker_camera_driver::SpinnakerCamera::timeout_
private

Definition at line 202 of file SpinnakerCamera.h.


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


spinnaker_camera_driver
Author(s): Chad Rockey
autogenerated on Mon Sep 25 2023 02:56:14