Class FaultManagerNode
Defined in File fault_manager_node.hpp
Inheritance Relationships
Base Type
public rclcpp::Node
Class Documentation
-
class FaultManagerNode : public rclcpp::Node
Central fault manager node
Provides service interfaces for fault reporting, querying, and clearing. Supports configurable storage backends (memory or SQLite) via ROS parameters.
Parameters:
storage_type (string): “memory” or “sqlite” (default: “sqlite”)
database_path (string): Path to SQLite database file (default: “/var/lib/ros2_medkit/faults.db”) Use “:memory:” for in-memory SQLite database (useful for testing)
Public Functions
-
explicit FaultManagerNode(const rclcpp::NodeOptions &options = rclcpp::NodeOptions())
-
~FaultManagerNode() override
-
FaultManagerNode(const FaultManagerNode&) = delete
-
FaultManagerNode &operator=(const FaultManagerNode&) = delete
-
FaultManagerNode(FaultManagerNode&&) = delete
-
FaultManagerNode &operator=(FaultManagerNode&&) = delete
-
inline const FaultStorage &get_storage() const
Get read-only access to fault storage (for testing)
-
inline const std::string &get_storage_type() const
Get the storage type being used.
Public Static Functions
-
static bool matches_entity(const std::vector<std::string> &reporting_sources, const std::string &entity_id)
Check if entity matches any reporting source
- Parameters:
reporting_sources – List of reporting sources from fault
entity_id – Entity ID to match (exact match or as suffix of FQN)
- Returns:
true if entity_id matches any source