Skip to content

Commit 02970bd

Browse files
committed
refactor
1 parent f9da091 commit 02970bd

File tree

6 files changed

+209
-123
lines changed

6 files changed

+209
-123
lines changed

doc/api/.manifest

Lines changed: 187 additions & 101 deletions
Large diffs are not rendered by default.

src/Sandwych.MapMatchingKit/Markov/AbstractFilter.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public abstract class AbstractFilter<TCandidate, TTransition, TSample> :
2828
/// <param name="predecessors">Predecessor state candidate <i>s<sub>t-1</sub></i>.</param>
2929
/// <param name="sample">Measurement sample.</param>
3030
/// <returns>Set of tuples consisting of a {@link StateCandidate} and its emission probability.</returns>
31-
public abstract IReadOnlyCollection<CandidateProbability<TCandidate>> Candidates(IEnumerable<TCandidate> predecessors, in TSample sample);
31+
public abstract IReadOnlyCollection<CandidateProbability<TCandidate>> ComputeCandidates(IEnumerable<TCandidate> predecessors, in TSample sample);
3232

3333

3434
/// <summary>
@@ -44,7 +44,7 @@ public abstract class AbstractFilter<TCandidate, TTransition, TSample> :
4444
/// <i>s<sub>t</sub></i> and its transition probability, or null if there is no
4545
/// transition.
4646
/// </returns>
47-
public abstract TransitionProbability<TTransition> Transition(in (TSample, TCandidate) predecessor, in (TSample, TCandidate) candidate);
47+
public abstract TransitionProbability<TTransition> ComputeTransition(in (TSample, TCandidate) predecessor, in (TSample, TCandidate) candidate);
4848

4949

5050
/// <summary>
@@ -65,7 +65,7 @@ public abstract class AbstractFilter<TCandidate, TTransition, TSample> :
6565
/// all transitions from <i>s<sub>t-1</sub></i> to <i>s<sub>t</sub></i> and its
6666
/// transition probability, or null if there no transition.
6767
/// </returns>
68-
public virtual IDictionary<TCandidate, IDictionary<TCandidate, TransitionProbability<TTransition>>> Transitions(
68+
public virtual IDictionary<TCandidate, IDictionary<TCandidate, TransitionProbability<TTransition>>> ComputeTransitions(
6969
in (TSample, IEnumerable<TCandidate>) predecessors, in (TSample, IEnumerable<TCandidate>) candidates)
7070
{
7171
TSample sample = candidates.Item1;
@@ -79,7 +79,7 @@ public virtual IDictionary<TCandidate, IDictionary<TCandidate, TransitionProbabi
7979

8080
foreach (TCandidate candidate in candidates.Item2)
8181
{
82-
map[predecessor].Add(candidate, this.Transition((previous, predecessor), (sample, candidate)));
82+
map[predecessor].Add(candidate, this.ComputeTransition((previous, predecessor), (sample, candidate)));
8383
}
8484
}
8585

@@ -109,7 +109,7 @@ public virtual ICollection<TCandidate> Execute(IEnumerable<TCandidate> predecess
109109
}
110110

111111
var result = new HashSet<TCandidate>();
112-
var candidates = this.Candidates(predecessors, sample);
112+
var candidates = this.ComputeCandidates(predecessors, sample);
113113
//logger.trace("{} state candidates", candidates.size());
114114

115115
double normsum = 0;
@@ -122,7 +122,7 @@ public virtual ICollection<TCandidate> Execute(IEnumerable<TCandidate> predecess
122122
states.Add(candidate.Candidate);
123123
}
124124

125-
var transitions = this.Transitions((previous, predecessors), (sample, states));
125+
var transitions = this.ComputeTransitions((previous, predecessors), (sample, states));
126126

127127
foreach (var candidate in candidates)
128128
{

src/Sandwych.MapMatchingKit/Matching/Matcher.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public double Sigma
8181
public double MaxDistance { get; set; } = 15000.0;
8282

8383

84-
public override IReadOnlyCollection<CandidateProbability> Candidates(
84+
public override IReadOnlyCollection<CandidateProbability> ComputeCandidates(
8585
IEnumerable<MatcherCandidate> predecessors, in MatcherSample sample)
8686
{
8787
var points_ = this._map.Radius(sample.Coordinate, this.MaxRadius);
@@ -131,13 +131,13 @@ public override IReadOnlyCollection<CandidateProbability> Candidates(
131131
return candidates;
132132
}
133133

134-
public override TransitionProbability Transition(
134+
public override TransitionProbability ComputeTransition(
135135
in (MatcherSample, MatcherCandidate) predecessor, in (MatcherSample, MatcherCandidate) candidate)
136136
{
137137
throw new NotSupportedException();
138138
}
139139

140-
public override IDictionary<MatcherCandidate, IDictionary<MatcherCandidate, TransitionProbability>> Transitions(
140+
public override IDictionary<MatcherCandidate, IDictionary<MatcherCandidate, TransitionProbability>> ComputeTransitions(
141141
in (MatcherSample, IEnumerable<MatcherCandidate>) predecessors,
142142
in (MatcherSample, IEnumerable<MatcherCandidate>) candidates)
143143
{

src/Sandwych.MapMatchingKit/Spatial/GeodesicInterception.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public readonly struct GeodesicInterception
6464
* Maximum number of iterations for calculation of interception point. (The solution should
6565
* usually converge before reaching the maximum number of iterations. The default is 10.)
6666
*/
67-
public static int _maxit = 10;
67+
public const int Maxit = 10;
6868
private readonly Gnomonic _gnom;
6969

7070
/**
@@ -74,7 +74,7 @@ public readonly struct GeodesicInterception
7474
* @param earth the {@link Geodesic} object to use for geodesic calculations. By default the
7575
* WGS84 ellipsoid should be used.
7676
*/
77-
public GeodesicInterception(Geodesic earth)
77+
public GeodesicInterception(in Geodesic earth)
7878
{
7979
this._gnom = new Gnomonic(earth);
8080
}
@@ -110,7 +110,7 @@ public GeodesicData Intercept(double lata1, double lona1, double lata2, double l
110110
var est = Geodesic.WGS84.Line(inv.lat1, inv.lon1, inv.azi1).Position(inv.s12 * 0.5);
111111
double latb2 = est.lat2, latb2_ = double.NaN, lonb2_ = double.NaN, lonb2 = est.lon2;
112112

113-
for (int i = 0; i < _maxit; ++i)
113+
for (int i = 0; i < Maxit; ++i)
114114
{
115115
var xa1 = _gnom.Forward(latb2, lonb2, lata1, lona1);
116116
var xa2 = _gnom.Forward(latb2, lonb2, lata2, lona2);

test/Sandwych.MapMatchingKit.Tests/Markov/FilterTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public MockFilter(MockStates states)
133133
this.states = states;
134134
}
135135

136-
public override IReadOnlyCollection<CandidateProbability<MockElement>> Candidates(
136+
public override IReadOnlyCollection<CandidateProbability<MockElement>> ComputeCandidates(
137137
IEnumerable<MockElement> predecessors, in MockSample sample)
138138
{
139139
var candidates = new List<CandidateProbability<MockElement>>();
@@ -145,7 +145,7 @@ public override IReadOnlyCollection<CandidateProbability<MockElement>> Candidate
145145
}
146146

147147

148-
public override TransitionProbability<MockStateTransition> Transition(
148+
public override TransitionProbability<MockStateTransition> ComputeTransition(
149149
in (MockSample, MockElement) predecessor,
150150
in (MockSample, MockElement) candidate)
151151
{

test/Sandwych.MapMatchingKit.Tests/Matching/MatcherTest.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public void TestCandidates()
117117
filter.MaxRadius = 100D;
118118
var sample = new Coordinate2D(11.001, 48.001);
119119

120-
var candidates = filter.Candidates(new MatcherCandidate[] { }, new MatcherSample(0, 0, sample));
120+
var candidates = filter.ComputeCandidates(new MatcherCandidate[] { }, new MatcherSample(0, 0, sample));
121121

122122
Assert.Empty(candidates);
123123
}
@@ -126,7 +126,7 @@ void assertCandidate(double radius, Coordinate2D sample, IEnumerable<long> refse
126126
{
127127
filter.MaxRadius = radius;
128128

129-
var candidates = filter.Candidates(new MatcherCandidate[] { }, new MatcherSample(0, 0, sample));
129+
var candidates = filter.ComputeCandidates(new MatcherCandidate[] { }, new MatcherSample(0, 0, sample));
130130

131131
var refset = new HashSet<long>(refsetIds);
132132
var set = new HashSet<long>();
@@ -161,20 +161,20 @@ public void TestTransitions()
161161
var predecessors = new HashSet<MatcherCandidate>();
162162
var candidates = new HashSet<MatcherCandidate>();
163163

164-
foreach (var candidate in filter.Candidates(new HashSet<MatcherCandidate>(), sample1))
164+
foreach (var candidate in filter.ComputeCandidates(new HashSet<MatcherCandidate>(), sample1))
165165
{
166166
predecessors.Add(candidate.Candidate);
167167
}
168168

169-
foreach (var candidate in filter.Candidates(new HashSet<MatcherCandidate>(), sample2))
169+
foreach (var candidate in filter.ComputeCandidates(new HashSet<MatcherCandidate>(), sample2))
170170
{
171171
candidates.Add(candidate.Candidate);
172172
}
173173

174174
Assert.Equal(2, predecessors.Count);
175175
Assert.Equal(4, candidates.Count);
176176

177-
var transitions = filter.Transitions((sample1, predecessors), (sample2, candidates));
177+
var transitions = filter.ComputeTransitions((sample1, predecessors), (sample2, candidates));
178178

179179
Assert.Equal(2, transitions.Count);
180180

@@ -196,20 +196,20 @@ public void TestTransitions()
196196
var predecessors = new HashSet<MatcherCandidate>();
197197
var candidates = new HashSet<MatcherCandidate>();
198198

199-
foreach (var candidate in filter.Candidates(new HashSet<MatcherCandidate>(), sample1))
199+
foreach (var candidate in filter.ComputeCandidates(new HashSet<MatcherCandidate>(), sample1))
200200
{
201201
predecessors.Add(candidate.Candidate);
202202
}
203203

204-
foreach (var candidate in filter.Candidates(new HashSet<MatcherCandidate>(), sample2))
204+
foreach (var candidate in filter.ComputeCandidates(new HashSet<MatcherCandidate>(), sample2))
205205
{
206206
candidates.Add(candidate.Candidate);
207207
}
208208

209209
Assert.Equal(4, predecessors.Count);
210210
Assert.Equal(2, candidates.Count);
211211

212-
var transitions = filter.Transitions((sample1, predecessors), (sample2, candidates));
212+
var transitions = filter.ComputeTransitions((sample1, predecessors), (sample2, candidates));
213213

214214
Assert.Equal(4, transitions.Count);
215215

0 commit comments

Comments
 (0)