mirror of
https://github.com/Livox-SDK/livox_ros_driver.git
synced 2023-04-06 15:49:55 +08:00
feat:add INT signal handler for "Ctrl+C" exit
This commit is contained in:
@@ -26,6 +26,7 @@
|
|||||||
|
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
#include <csignal>
|
||||||
|
|
||||||
#include <ros/ros.h>
|
#include <ros/ros.h>
|
||||||
#include "lddc.h"
|
#include "lddc.h"
|
||||||
@@ -38,9 +39,13 @@ using namespace livox_ros;
|
|||||||
|
|
||||||
const int32_t kSdkVersionMajorLimit = 2;
|
const int32_t kSdkVersionMajorLimit = 2;
|
||||||
|
|
||||||
int main(int argc, char **argv) {
|
inline void SignalHandler(int signum) {
|
||||||
ROS_INFO("Livox Ros Driver Version: %s", LIVOX_ROS_DRIVER_VERSION_STRING);
|
printf("livox ros driver will exit\r\n");
|
||||||
|
ros::shutdown();
|
||||||
|
exit(signum);
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int argc, char **argv) {
|
||||||
/** Ros related */
|
/** Ros related */
|
||||||
if (ros::console::set_logger_level(ROSCONSOLE_DEFAULT_NAME,
|
if (ros::console::set_logger_level(ROSCONSOLE_DEFAULT_NAME,
|
||||||
ros::console::levels::Debug)) {
|
ros::console::levels::Debug)) {
|
||||||
@@ -49,6 +54,8 @@ int main(int argc, char **argv) {
|
|||||||
ros::init(argc, argv, "livox_lidar_publisher");
|
ros::init(argc, argv, "livox_lidar_publisher");
|
||||||
ros::NodeHandle livox_node;
|
ros::NodeHandle livox_node;
|
||||||
|
|
||||||
|
ROS_INFO("Livox Ros Driver Version: %s", LIVOX_ROS_DRIVER_VERSION_STRING);
|
||||||
|
signal(SIGINT, SignalHandler);
|
||||||
/** Check sdk version */
|
/** Check sdk version */
|
||||||
LivoxSdkVersion _sdkversion;
|
LivoxSdkVersion _sdkversion;
|
||||||
GetLivoxSdkVersion(&_sdkversion);
|
GetLivoxSdkVersion(&_sdkversion);
|
||||||
|
|||||||
Reference in New Issue
Block a user