namespace RobotNet10.GlobalPathPlanner; /// /// Factory interface for creating path planner instances optimized for different robot types. /// Each planner type uses algorithms and strategies tailored to the specific kinematics and constraints of the robot. /// public interface IPathPlannerFactory { /// /// Creates a path planner optimized for differential drive robots. /// Differential drive robots have two independently driven wheels on a common axis. /// /// An instance of configured for differential drive robots. IPathPlanner CreateDifferentialPlanner(); /// /// Creates a path planner optimized for forklift robots (version 1). /// Forklift robots have specific constraints related to their lifting mechanism and turning radius. /// /// An instance of configured for forklift robots. IPathPlanner CreateForkliftPlanner(); /// /// Creates an enhanced path planner optimized for forklift robots (version 2). /// This version uses improved algorithms (SSE A*) for better performance and path quality. /// /// An instance of configured for forklift robots with enhanced algorithms. IPathPlanner CreateForkliftPlannerV2(); /// /// Creates a path planner optimized for omni-directional drive robots. /// Omni-drive robots can move in any direction without changing orientation. /// Note: Currently uses the same planner as differential drive. /// /// An instance of configured for omni-directional drive robots. IPathPlanner CreateOmniDrivePlanner(); }