plansys2_domain_expert
This package contains the Domain Expert module for the ROS2 Planning System
Links
README
Domain Expert
The Domain Expert module is responsible for maintaining the PDDL domain.
The main class is plansys2::DomainExpertNode
, which is instantiated from DomainExpertNode.cpp
. plansys2::DomainExpertNode
is a rclcpp_lifecycle::LifecycleNode
and in its configuration phase reads the model_file
parameter, which contains the .pddl file from which to read the model.
The class responsible for maintaining this domain is plansys2::DomainExpert
, which is independent of ROS2.
The Domain Expert does not change while active, accessing its functionality through ROS2 services. To facilitate the task of the application developer, an plansys2::DomainExpertClient
class has been implemented that hides the complexity of handling ROS2 messages and services. Its API is similar to that of plansys2::DomainExpert
, since both have to implement the plansys2::DomainExpertInterface
interface.
Services:
/domain_expert/get_domain
[plansys2_msgs::srv::GetDomain
]/domain_expert/get_domain_action_details
[plansys2_msgs::srv::GetDomainActionDetails
]/domain_expert/get_domain_actions
[plansys2_msgs::srv::GetDomainActions
]/domain_expert/get_domain_durative_action_details
[plansys2_msgs::srv::GetDomainDurativeActionDetails
]/domain_expert/get_domain_durative_actions
[plansys2_msgs::srv::GetDomainActions
]/domain_expert/get_domain_function_details
[plansys2_msgs::srv::GetNodeDetails
]/domain_expert/get_domain_functions
[plansys2_msgs::srv::GetStates
]/domain_expert/get_domain_predicate_details
[plansys2_msgs::srv::GetNodeDetails
]/domain_expert/get_domain_predicates
[plansys2_msgs::srv::GetStates
]/domain_expert/get_domain_types
[plansys2_msgs::srv::GetDomainTypes
]/domain_expert/get_domain_constants
[plansys2_msgs::srv::GetDomainConstants
]