/// <summary> /// Creates a new event machine. /// </summary> /// <param name="planner"></param> /// <param name="priority"></param> protected MicroPlannerMachine(MicroPlanner planner, int priority) { _planner = planner; _priority = priority; this.IsSuccesfull = false; }
/// <summary> /// Generates instructions. /// </summary> /// <param name="point"></param> /// <param name="interpreter"></param> /// <param name="languageGenerator"></param> /// <returns></returns> public static List <Instruction> Generate(AggregatedPoint point, IRoutingInterpreter interpreter, ILanguageGenerator languageGenerator) { if (point == null) { throw new ArgumentNullException("route"); } if (interpreter == null) { throw new ArgumentNullException("interpreter"); } if (languageGenerator == null) { throw new ArgumentNullException("languageGenerator"); } MicroPlanning.MicroPlanner planner = new MicroPlanning.MicroPlanner(languageGenerator, interpreter); return(planner.Plan(point)); }
/// <summary> /// Creates a new event machine. /// </summary> /// <param name="initial"></param> /// <param name="planner"></param> /// <param name="priority"></param> protected MicroPlannerMachine(FiniteStateMachineState <MicroPlannerMessage> initial, MicroPlanner planner, int priority) : base(initial) { _planner = planner; _priority = priority; }
/// <summary> /// Generates instructions. /// </summary> /// <param name="planner"></param> /// <param name="route"></param> /// <param name="point"></param> /// <returns></returns> public static List<Instruction> Generate(MicroPlanner planner, Route route, AggregatedPoint point) { if (point == null) { throw new ArgumentNullException("route"); } if (planner == null) { throw new ArgumentNullException("planner"); } return planner.Plan(route, point); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="point"></param> /// <param name="interpreter"></param> /// <param name="languageGenerator"></param> /// <returns></returns> public static List<Instruction> Generate(AggregatedPoint point, IRoutingInterpreter interpreter, ILanguageGenerator languageGenerator) { if (point == null) { throw new ArgumentNullException("route"); } if (interpreter == null) { throw new ArgumentNullException("interpreter"); } if (languageGenerator == null) { throw new ArgumentNullException("languageGenerator"); } MicroPlanning.MicroPlanner planner = new MicroPlanning.MicroPlanner(languageGenerator, interpreter); return planner.Plan(point); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="planner"></param> /// <param name="route"></param> /// <returns></returns> public static List<Instruction> Generate(MicroPlanner planner, Route route) { if (route == null) { throw new ArgumentNullException("route"); } var aggregator = new ArcAggregator(planner.Interpreter); var point = aggregator.Aggregate(route); if(point == null) { // returns an empty list because of an empty route. return new List<Instruction>(); } return InstructionGenerator.Generate(planner, route, point); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="point"></param> /// <param name="interpreter"></param> /// <param name="language_generator"></param> /// <returns></returns> public static List<Instruction> Generate(AggregatedPoint point, IRoutingInterpreter interpreter, ILanguageGenerator language_generator) { MicroPlanning.MicroPlanner planner = new MicroPlanning.MicroPlanner(language_generator, interpreter); return planner.Plan(point); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="planner"></param> /// <param name="route"></param> /// <param name="interpreter"></param> /// <param name="languageGenerator"></param> /// <returns></returns> public static List<Instruction> Generate(MicroPlanner planner, Route route, IRoutingInterpreter interpreter, ILanguageGenerator languageGenerator) { if (route == null) { throw new ArgumentNullException("route"); } if (route.Vehicle == null) { throw new InvalidOperationException("Vehicle not set on route: Cannot generate instruction for a route without a vehicle!"); } if (interpreter == null) { throw new ArgumentNullException("interpreter"); } if (languageGenerator == null) { throw new ArgumentNullException("languageGenerator"); } var aggregator = new ArcAggregator(interpreter); var point = aggregator.Aggregate(route); return InstructionGenerator.Generate(planner, point, interpreter, languageGenerator); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="planner"></param> /// <param name="route"></param> /// <param name="interpreter"></param> /// <returns></returns> public static List<Instruction> Generate(MicroPlanner planner, Route route, IRoutingInterpreter interpreter) { return InstructionGenerator.Generate(planner, route, interpreter, new OsmSharp.Routing.Instructions.LanguageGeneration.Defaults.EnglishLanguageGenerator()); }
/// <summary> /// Generates instructions. /// </summary> /// <param name="point"></param> /// <param name="interpreter"></param> /// <param name="language_generator"></param> /// <returns></returns> public static List <Instruction> Generate(AggregatedPoint point, IRoutingInterpreter interpreter, ILanguageGenerator language_generator) { MicroPlanning.MicroPlanner planner = new MicroPlanning.MicroPlanner(language_generator, interpreter); return(planner.Plan(point)); }