Skip to content

Commit a61c762

Browse files
MarcelPiNacy-CVCBlyron
authored andcommitted
Reorder TryGetParameter arguments for better readability.
1 parent 280c71c commit a61c762

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

LibCarla/source/carla/opendrive/parser/GeoReferenceParser.cpp

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ namespace parser {
5151
}
5252

5353
template <typename M, typename S>
54-
static bool TryGetParameter(M& parameters, S&& name, std::string& out)
54+
static bool TryGetParameter(std::string& out, M& parameters, S&& name)
5555
{
5656
auto i = parameters.find(std::forward<S>(name));
5757
if (i == parameters.cend())
@@ -60,10 +60,10 @@ namespace parser {
6060
return true;
6161
}
6262

63-
template <typename Map, typename S, typename O>
63+
template <typename M, typename S, typename O>
6464
static
6565
std::enable_if_t<std::is_floating_point<O>::value, bool>
66-
TryGetParameter(Map& parameters, S&& name, O& out)
66+
TryGetParameter(O& out, M& parameters, S&& name)
6767
{
6868
auto i = parameters.find(std::forward<S>(name));
6969
if (i == parameters.cend())
@@ -72,10 +72,10 @@ namespace parser {
7272
return true;
7373
}
7474

75-
template <typename Map, typename S, typename O>
75+
template <typename M, typename S, typename O>
7676
static
7777
std::enable_if_t<std::is_integral<O>::value && std::is_unsigned<O>::value, bool>
78-
TryGetParameter(Map& parameters, S&& name, O& out)
78+
TryGetParameter(O& out, M& parameters, S&& name)
7979
{
8080
auto i = parameters.find(std::forward<S>(name));
8181
if (i == parameters.cend())
@@ -84,10 +84,10 @@ namespace parser {
8484
return true;
8585
}
8686

87-
template <typename Map, typename S, typename O>
87+
template <typename M, typename S, typename O>
8888
static
8989
std::enable_if_t<std::is_integral<O>::value && std::is_signed<O>::value, bool>
90-
TryGetParameter(Map& parameters, S&& name, O& out)
90+
TryGetParameter(O& out, M& parameters, S&& name)
9191
{
9292
auto i = parameters.find(std::forward<S>(name));
9393
if (i == parameters.cend())
@@ -102,7 +102,7 @@ namespace parser {
102102
std::string value;
103103
double x;
104104

105-
if (TryGetParameter(parameters, "ellps", value)) {
105+
if (TryGetParameter(value, parameters, "ellps")) {
106106
value = ToLowerCase(value);
107107
auto it = geom::custom_ellipsoids.find(value);
108108
if (it != geom::custom_ellipsoids.end()) {
@@ -116,12 +116,12 @@ namespace parser {
116116
}
117117

118118
// Specific semi-major axis
119-
TryGetParameter(parameters, "a", ellps.a);
120-
TryGetParameter(parameters, "b", x);
119+
TryGetParameter(ellps.a, parameters, "a");
120+
TryGetParameter(x, parameters, "b");
121121
ellps.fromb(x);
122-
TryGetParameter(parameters, "f", x);
122+
TryGetParameter(x, parameters, "f");
123123
ellps.fromf(x);
124-
TryGetParameter(parameters, "rf", ellps.f_inv);
124+
TryGetParameter(ellps.f_inv, parameters, "rf");
125125

126126
return ellps;
127127
}
@@ -132,11 +132,11 @@ namespace parser {
132132
geom::Ellipsoid ellipsoid){
133133

134134
geom::TransverseMercatorParams p;
135-
TryGetParameter(parameters, "lat_0", p.lat_0);
136-
TryGetParameter(parameters, "lon_0", p.lon_0);
137-
TryGetParameter(parameters, "k", p.k);
138-
TryGetParameter(parameters, "x_0", p.x_0);
139-
TryGetParameter(parameters, "y_0", p.y_0);
135+
TryGetParameter(p.lat_0, parameters, "lat_0");
136+
TryGetParameter(p.lon_0, parameters, "lon_0");
137+
TryGetParameter(p.k, parameters, "k");
138+
TryGetParameter(p.x_0, parameters, "x_0");
139+
TryGetParameter(p.y_0, parameters, "y_0");
140140
p.ellps = ellipsoid;
141141
auto projection = geom::GeoProjection::Make(p);
142142
projection.setPROJString(proj_string);
@@ -149,7 +149,7 @@ namespace parser {
149149
geom::Ellipsoid ellipsoid){
150150

151151
geom::UniversalTransverseMercatorParams p;
152-
if (!TryGetParameter(parameters, "zone", p.zone)) {
152+
if (!TryGetParameter(p.zone, parameters, "zone")) {
153153
log_warning("Missing 'zone' parameter for UTM projection. Using default value " + std::to_string(p.zone));
154154
}
155155
p.north = (parameters.count("south") > 0) ? false : true;
@@ -177,14 +177,14 @@ namespace parser {
177177
geom::Ellipsoid ellipsoid){
178178

179179
geom::LambertConformalConicParams p;
180-
TryGetParameter(parameters, "lon_0", p.lon_0);
181-
TryGetParameter(parameters, "lat_0", p.lat_0);
182-
if (!TryGetParameter(parameters, "lat_1", p.lat_1))
180+
TryGetParameter(p.lon_0, parameters, "lon_0");
181+
TryGetParameter(p.lat_0, parameters, "lat_0");
182+
if (!TryGetParameter(p.lat_1, parameters, "lat_1"))
183183
log_warning("Missing 'lat_1' parameter for LCC projection. Using default value " + std::to_string(p.lat_1));
184-
if (!TryGetParameter(parameters, "lat_2", p.lat_2))
184+
if (!TryGetParameter(p.lat_2, parameters, "lat_2"))
185185
log_warning("Missing 'lat_2' parameter for LCC projection. Using default value " + std::to_string(p.lat_2));
186-
TryGetParameter(parameters, "x_0", p.x_0);
187-
TryGetParameter(parameters, "y_0", p.y_0);
186+
TryGetParameter(p.x_0, parameters, "x_0");
187+
TryGetParameter(p.y_0, parameters, "y_0");
188188
p.ellps = ellipsoid;
189189
auto projection = geom::GeoProjection::Make(p);
190190
projection.setPROJString(proj_string);
@@ -202,15 +202,15 @@ namespace parser {
202202

203203
static geom::GeoLocation CreateTransverseMercatorGeoReference(std::unordered_map<std::string, std::string> parameters){
204204
geom::GeoLocation result{0.0, 0.0, 0.0};
205-
TryGetParameter(parameters, "lat_0", result.latitude);
206-
TryGetParameter(parameters, "lon_0", result.longitude);
205+
TryGetParameter(result.latitude, parameters, "lat_0");
206+
TryGetParameter(result.longitude, parameters, "lon_0");
207207
return result;
208208
}
209209

210210
static geom::GeoLocation CreateUniversalTransverseMercatorGeoReference(std::unordered_map<std::string, std::string> parameters){
211211
geom::GeoLocation result{0.0, 0.0, 0.0};
212212
result.latitude = 0.0;
213-
if (TryGetParameter(parameters, "zone", result.longitude))
213+
if (TryGetParameter(result.longitude, parameters, "zone"))
214214
result.longitude = geom::Math::ToRadians(6 * result.longitude - 183);
215215
return result;
216216
}
@@ -222,8 +222,8 @@ namespace parser {
222222

223223
static geom::GeoLocation CreateLamberConic2SPGeoReference(std::unordered_map<std::string, std::string> parameters){
224224
geom::GeoLocation result{0.0, 0.0, 0.0};
225-
TryGetParameter(parameters, "lat_0", result.latitude);
226-
TryGetParameter(parameters, "lon_0", result.longitude);
225+
TryGetParameter(result.latitude, parameters, "lat_0");
226+
TryGetParameter(result.longitude, parameters, "lon_0");
227227
return result;
228228
}
229229

@@ -238,7 +238,7 @@ namespace parser {
238238

239239
// Get the projection type
240240
std::string proj;
241-
if (!TryGetParameter(parameters, "proj", proj)) {
241+
if (!TryGetParameter(proj, parameters, "proj")) {
242242
log_warning("cannot find the type of projection, using default transverse mercator");
243243
return std::make_pair(
244244
CreateDefaultProjection(ellipsoid),

0 commit comments

Comments
 (0)