19#include <gtest/gtest_prod.h>
26#include <unordered_set>
30#include <ros2_lifecycle_manager/lifecycle_manager_interface.hpp>
32#include <carma_driver_msgs/msg/driver_status.hpp>
33#include <carma_msgs/msg/system_alert.hpp>
34#include <carma_planning_msgs/msg/plugin.hpp>
35#include <carma_planning_msgs/srv/get_plugin_api.hpp>
36#include <carma_planning_msgs/srv/plugin_activation.hpp>
37#include <carma_planning_msgs/srv/plugin_list.hpp>
60 SSCDriverManager(
const std::string & ssc_driver_name,
const long driver_timeout);
66 const carma_driver_msgs::msg::DriverStatus::SharedPtr msg,
long current_time);
77 long time_now,
long start_up_timestamp,
long startup_duration);
91 FRIEND_TEST(DriverManagerTest, testCarTruckHandleSpinFatalUnknown);
The SSCDriverManager serves as a component to manage ROS1 SSC Driver in CARMA which is primarily in R...
bool is_ssc_driver_operational(long current_time)
Check if all critical drivers are operational.
SSCDriverManager()
Default constructor for SSCDriverManager with driver_timeout_ = 1000ms.
std::string ssc_driver_name_
std::shared_ptr< Entry > latest_ssc_status_entry_
Latest SSC Status entry to keep track.
void update_driver_status(const carma_driver_msgs::msg::DriverStatus::SharedPtr msg, long current_time)
Update driver status.
FRIEND_TEST(DriverManagerTest, testCarTruckHandleSpinFatalUnknown)
carma_msgs::msg::SystemAlert get_latest_system_alert(long time_now, long start_up_timestamp, long startup_duration)
Handle the spin and publisher.