/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepDirectNeighbours"></param> public CHPreProcessor(IDynamicGraphRouterDataSource <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepDirectNeighbours) : this(target, calculator, witnessCalculator, true, 1) { }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witness_calculator"></param> public EdgeDifferenceContractedSearchSpace(IDynamicGraph <CHEdgeData> data, INodeWitnessCalculator witness_calculator) { _data = data; _witness_calculator = witness_calculator; _contraction_count = new Dictionary <uint, short>(); _depth = new Dictionary <long, long>(); }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witness_calculator"></param> public EdgeDifferenceContractedSearchSpace(IDynamicGraph<CHEdgeData> data, INodeWitnessCalculator witness_calculator) { _data = data; _witness_calculator = witness_calculator; _contraction_count = new Dictionary<uint, short>(); _depth = new Dictionary<long, long>(); }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witnessCalculator"></param> public EdgeDifferenceContractedSearchSpace(GraphBase<CHEdgeData> data, INodeWitnessCalculator witnessCalculator) { _data = data; _witnessCalculator = witnessCalculator; _contractionCount = new Dictionary<uint, int>(); _depth = new Dictionary<long, int>(); }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witnessCalculator"></param> public EdgeDifferenceContractedSearchSpace(GraphBase <CHEdgeData> data, INodeWitnessCalculator witnessCalculator) { _data = data; _witnessCalculator = witnessCalculator; _contractionCount = new Dictionary <uint, int>(); _depth = new Dictionary <long, int>(); }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreProcessor(IDynamicGraphRouterDataSource <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) { _comparer = new CHEdgeDataComparer(); _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepReverseEdges"></param> public CHPreProcessor(IDynamicGraph <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepReverseEdges) { _comparer = new CHEdgeDataComparer(); _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; _keepReverseEdges = keepReverseEdges; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreprocessor(GraphBase <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) { _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _queue = new BinaryHeap <uint>(target.VertexCount + (uint)System.Math.Max(target.VertexCount * 0.1, 5)); _lowestPriorities = new float[target.VertexCount + (uint)System.Math.Max(target.VertexCount * 0.1, 5)]; for (int idx = 0; idx < _lowestPriorities.Length; idx++) { // uncontracted = priority != float.MinValue. _lowestPriorities[idx] = float.MaxValue; } }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreprocessor(GraphBase<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) { _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _queue = new BinaryHeap<uint>(target.VertexCount + (uint)System.Math.Max(target.VertexCount * 0.1, 5)); _lowestPriorities = new float[target.VertexCount + (uint)System.Math.Max(target.VertexCount * 0.1, 5)]; for (int idx = 0; idx < _lowestPriorities.Length; idx++) { // uncontracted = priority != float.MinValue. _lowestPriorities[idx] = float.MaxValue; } }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepDirectNeighbours"></param> public CHPreProcessor(IDynamicGraphRouterDataSource <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepDirectNeighbours, double preProcessingPercentage) { _comparer = new CHEdgeDataComparer(); _keepDirectNeighbours = keepDirectNeighbours; _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _preProcessingPercentage = preProcessingPercentage; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreProcessor(IDynamicGraphRouterDataSource <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) : this(target, calculator, witnessCalculator, true) { }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witnessCalculator"></param> public EdgeDifference(IDynamicGraphRouterDataSource<CHEdgeData> data, INodeWitnessCalculator witnessCalculator) { _data = data; _witnessCalculator = witnessCalculator; }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witness_calculator"></param> public EdgeDifference(IDynamicGraph <CHEdgeData> data, INodeWitnessCalculator witness_calculator) { _data = data; _witness_calculator = witness_calculator; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreProcessor(IDynamicGraphRouterDataSource<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) : this(target, calculator, witnessCalculator, true) { }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepDirectNeighbours"></param> public CHPreProcessor(IDynamicGraphRouterDataSource<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepDirectNeighbours, double preProcessingPercentage) { _comparer = new CHEdgeDataComparer(); _keepDirectNeighbours = keepDirectNeighbours; _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _preProcessingPercentage = preProcessingPercentage; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witness_calculator"></param> public EdgeDifference(IDynamicGraph<CHEdgeData> data, INodeWitnessCalculator witness_calculator) { _data = data; _witness_calculator = witness_calculator; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreProcessor(IDynamicGraph <CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) : this(target, calculator, witnessCalculator, false) { }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witness_calculator"></param> /// <param name="max"></param> public CHPreProcessor(IDynamicGraph<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witness_calculator, int max) { _comparer = new CHEdgeDataComparer(); _target = target; _calculator = calculator; _witness_calculator = witness_calculator; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepReverseEdges"></param> public CHPreProcessor(IDynamicGraphRouterDataSource<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepReverseEdges) { _comparer = new CHEdgeDataComparer(); _target = target; _calculator = calculator; _witnessCalculator = witnessCalculator; _queue = new CHPriorityQueue(); _contracted = new bool[1000]; }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="witness_calculator"></param> public EdgeDifferenceContracted(INodeWitnessCalculator witness_calculator) { _witness_calculator = witness_calculator; _contraction_count = new Dictionary <long, long>(); }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> /// <param name="keepDirectNeighbours"></param> public CHPreProcessor(IDynamicGraphRouterDataSource<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator, bool keepDirectNeighbours) : this(target, calculator, witnessCalculator, true, 1) { }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="data"></param> /// <param name="witnessCalculator"></param> public EdgeDifference(IDynamicGraphRouterDataSource <CHEdgeData> data, INodeWitnessCalculator witnessCalculator) { _data = data; _witnessCalculator = witnessCalculator; }
/// <summary> /// Creates a new edge difference calculator. /// </summary> /// <param name="witness_calculator"></param> public EdgeDifferenceContracted(INodeWitnessCalculator witness_calculator) { // _witness_calculator = witness_calculator; // _contraction_count = new Dictionary<long, long>(); }
/// <summary> /// Creates a new pre-processor. /// </summary> /// <param name="target"></param> /// <param name="calculator"></param> /// <param name="witnessCalculator"></param> public CHPreProcessor(IDynamicGraph<CHEdgeData> target, INodeWeightCalculator calculator, INodeWitnessCalculator witnessCalculator) : this(target, calculator, witnessCalculator, false) { }