8 #include <google/protobuf/io/coded_stream.h>
9 #include <google/protobuf/extension_set.h>
10 #include <google/protobuf/wire_format_lite.h>
11 #include <google/protobuf/descriptor.h>
12 #include <google/protobuf/generated_message_reflection.h>
13 #include <google/protobuf/reflection_ops.h>
14 #include <google/protobuf/wire_format.h>
16 #include <google/protobuf/port_def.inc>
24 ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RoutingSearchParameters_LocalSearchNeighborhoodOperators>
_instance;
28 ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RoutingSearchParameters_ImprovementSearchLimitParameters>
_instance;
32 ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RoutingSearchParameters>
_instance;
36 ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RoutingModelParameters>
_instance;
40 GOOGLE_PROTOBUF_VERIFY_VERSION;
44 new (ptr) ::operations_research::RoutingModelParameters();
45 ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
54 GOOGLE_PROTOBUF_VERIFY_VERSION;
58 new (ptr) ::operations_research::RoutingSearchParameters();
59 ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
70 GOOGLE_PROTOBUF_VERIFY_VERSION;
74 new (ptr) ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters();
75 ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
83 GOOGLE_PROTOBUF_VERIFY_VERSION;
87 new (ptr) ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators();
88 ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
101 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, _internal_metadata_),
105 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_),
106 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_pair_),
107 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_light_relocate_pair_),
108 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_neighbors_),
109 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_subtrip_),
110 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_exchange_),
111 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_exchange_pair_),
112 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_exchange_subtrip_),
113 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_cross_),
114 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_cross_exchange_),
115 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_expensive_chain_),
116 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_two_opt_),
117 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_or_opt_),
118 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_lin_kernighan_),
119 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_tsp_opt_),
120 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_make_active_),
121 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_and_make_active_),
122 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_make_inactive_),
123 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_make_chain_inactive_),
124 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_swap_active_),
125 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_extended_swap_active_),
126 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_node_pair_swap_active_),
127 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_path_lns_),
128 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_full_path_lns_),
129 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_tsp_lns_),
130 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_inactive_lns_),
131 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_global_cheapest_insertion_path_lns_),
132 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_local_cheapest_insertion_path_lns_),
133 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_path_global_cheapest_insertion_insert_unperformed_),
134 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_global_cheapest_insertion_expensive_chain_lns_),
135 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_local_cheapest_insertion_expensive_chain_lns_),
136 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_global_cheapest_insertion_close_nodes_lns_),
137 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_local_cheapest_insertion_close_nodes_lns_),
139 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters, _internal_metadata_),
143 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters, improvement_rate_coefficient_),
144 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters, improvement_rate_solutions_distance_),
146 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, _internal_metadata_),
150 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, first_solution_strategy_),
151 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_unfiltered_first_solution_strategy_),
152 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, savings_neighbors_ratio_),
153 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, savings_max_memory_usage_bytes_),
154 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, savings_add_reverse_arcs_),
155 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, savings_arc_coefficient_),
156 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, savings_parallel_routes_),
157 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_farthest_seeds_ratio_),
158 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_first_solution_neighbors_ratio_),
159 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_first_solution_min_neighbors_),
160 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_ls_operator_neighbors_ratio_),
161 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_ls_operator_min_neighbors_),
162 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, cheapest_insertion_add_unperformed_entries_),
163 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, christofides_use_minimum_matching_),
164 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, local_search_operators_),
165 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_multi_armed_bandit_concatenate_operators_),
166 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, multi_armed_bandit_compound_operator_memory_coefficient_),
167 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, multi_armed_bandit_compound_operator_exploration_coefficient_),
168 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, relocate_expensive_chain_num_arcs_to_consider_),
169 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, heuristic_expensive_chain_lns_num_arcs_to_consider_),
170 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, heuristic_close_nodes_lns_num_nodes_),
171 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, local_search_metaheuristic_),
172 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, guided_local_search_lambda_coefficient_),
173 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_depth_first_search_),
174 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_cp_),
175 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_cp_sat_),
176 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, continuous_scheduling_solver_),
177 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, mixed_integer_scheduling_solver_),
178 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, optimization_step_),
179 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, number_of_solutions_to_collect_),
180 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, solution_limit_),
181 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, time_limit_),
182 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, lns_time_limit_),
183 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, improvement_limit_parameters_),
184 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, use_full_propagation_),
185 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, log_search_),
186 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, log_cost_scaling_factor_),
187 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, log_cost_offset_),
188 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingSearchParameters, log_tag_),
190 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingModelParameters, _internal_metadata_),
194 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingModelParameters, solver_parameters_),
195 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingModelParameters, reduce_vehicle_cost_model_),
196 PROTOBUF_FIELD_OFFSET(::operations_research::RoutingModelParameters, max_callback_cache_size_),
199 { 0, -1,
sizeof(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators)},
200 { 38, -1,
sizeof(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters)},
201 { 45, -1,
sizeof(::operations_research::RoutingSearchParameters)},
202 { 89, -1,
sizeof(::operations_research::RoutingModelParameters)},
212 const char descriptor_table_protodef_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto[]
PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
213 "\n2ortools/constraint_solver/routing_para"
214 "meters.proto\022\023operations_research\032\036googl"
215 "e/protobuf/duration.proto\032-ortools/const"
216 "raint_solver/routing_enums.proto\0321ortool"
217 "s/constraint_solver/solver_parameters.pr"
218 "oto\032#ortools/util/optional_boolean.proto"
219 "\"\242$\n\027RoutingSearchParameters\022Q\n\027first_so"
220 "lution_strategy\030\001 \001(\01620.operations_resea"
221 "rch.FirstSolutionStrategy.Value\022.\n&use_u"
222 "nfiltered_first_solution_strategy\030\002 \001(\010\022"
223 "\037\n\027savings_neighbors_ratio\030\016 \001(\001\022&\n\036savi"
224 "ngs_max_memory_usage_bytes\030\027 \001(\001\022 \n\030savi"
225 "ngs_add_reverse_arcs\030\017 \001(\010\022\037\n\027savings_ar"
226 "c_coefficient\030\022 \001(\001\022\037\n\027savings_parallel_"
227 "routes\030\023 \001(\010\022/\n\'cheapest_insertion_farth"
228 "est_seeds_ratio\030\020 \001(\001\0229\n1cheapest_insert"
229 "ion_first_solution_neighbors_ratio\030\025 \001(\001"
230 "\0227\n/cheapest_insertion_first_solution_mi"
231 "n_neighbors\030, \001(\005\0226\n.cheapest_insertion_"
232 "ls_operator_neighbors_ratio\030\037 \001(\001\0224\n,che"
233 "apest_insertion_ls_operator_min_neighbor"
234 "s\030- \001(\005\0222\n*cheapest_insertion_add_unperf"
235 "ormed_entries\030( \001(\010\022)\n!christofides_use_"
236 "minimum_matching\030\036 \001(\010\022m\n\026local_search_o"
237 "perators\030\003 \001(\0132M.operations_research.Rou"
238 "tingSearchParameters.LocalSearchNeighbor"
239 "hoodOperators\0224\n,use_multi_armed_bandit_"
240 "concatenate_operators\030) \001(\010\022\?\n7multi_arm"
241 "ed_bandit_compound_operator_memory_coeff"
242 "icient\030* \001(\001\022D\n<multi_armed_bandit_compo"
243 "und_operator_exploration_coefficient\030+ \001"
244 "(\001\0225\n-relocate_expensive_chain_num_arcs_"
245 "to_consider\030\024 \001(\005\022:\n2heuristic_expensive"
246 "_chain_lns_num_arcs_to_consider\030 \001(\005\022+\n"
247 "#heuristic_close_nodes_lns_num_nodes\030# \001"
248 "(\005\022W\n\032local_search_metaheuristic\030\004 \001(\01623"
249 ".operations_research.LocalSearchMetaheur"
250 "istic.Value\022.\n&guided_local_search_lambd"
251 "a_coefficient\030\005 \001(\001\022\036\n\026use_depth_first_s"
252 "earch\030\006 \001(\010\0224\n\006use_cp\030\034 \001(\0162$.operations"
253 "_research.OptionalBoolean\0228\n\nuse_cp_sat\030"
254 "\033 \001(\0162$.operations_research.OptionalBool"
255 "ean\022c\n\034continuous_scheduling_solver\030! \001("
256 "\0162=.operations_research.RoutingSearchPar"
257 "ameters.SchedulingSolver\022f\n\037mixed_intege"
258 "r_scheduling_solver\030\" \001(\0162=.operations_r"
259 "esearch.RoutingSearchParameters.Scheduli"
260 "ngSolver\022\031\n\021optimization_step\030\007 \001(\001\022&\n\036n"
261 "umber_of_solutions_to_collect\030\021 \001(\005\022\026\n\016s"
262 "olution_limit\030\010 \001(\003\022-\n\ntime_limit\030\t \001(\0132"
263 "\031.google.protobuf.Duration\0221\n\016lns_time_l"
264 "imit\030\n \001(\0132\031.google.protobuf.Duration\022s\n"
265 "\034improvement_limit_parameters\030% \001(\0132M.op"
266 "erations_research.RoutingSearchParameter"
267 "s.ImprovementSearchLimitParameters\022\034\n\024us"
268 "e_full_propagation\030\013 \001(\010\022\022\n\nlog_search\030\r"
269 " \001(\010\022\037\n\027log_cost_scaling_factor\030\026 \001(\001\022\027\n"
270 "\017log_cost_offset\030\035 \001(\001\022\017\n\007log_tag\030$ \001(\t\032"
271 "\327\022\n LocalSearchNeighborhoodOperators\022:\n\014"
272 "use_relocate\030\001 \001(\0162$.operations_research"
273 ".OptionalBoolean\022\?\n\021use_relocate_pair\030\002 "
274 "\001(\0162$.operations_research.OptionalBoolea"
275 "n\022E\n\027use_light_relocate_pair\030\030 \001(\0162$.ope"
276 "rations_research.OptionalBoolean\022D\n\026use_"
277 "relocate_neighbors\030\003 \001(\0162$.operations_re"
278 "search.OptionalBoolean\022B\n\024use_relocate_s"
279 "ubtrip\030\031 \001(\0162$.operations_research.Optio"
280 "nalBoolean\022:\n\014use_exchange\030\004 \001(\0162$.opera"
281 "tions_research.OptionalBoolean\022\?\n\021use_ex"
282 "change_pair\030\026 \001(\0162$.operations_research."
283 "OptionalBoolean\022B\n\024use_exchange_subtrip\030"
284 "\032 \001(\0162$.operations_research.OptionalBool"
285 "ean\0227\n\tuse_cross\030\005 \001(\0162$.operations_rese"
286 "arch.OptionalBoolean\022@\n\022use_cross_exchan"
287 "ge\030\006 \001(\0162$.operations_research.OptionalB"
288 "oolean\022J\n\034use_relocate_expensive_chain\030\027"
289 " \001(\0162$.operations_research.OptionalBoole"
290 "an\0229\n\013use_two_opt\030\007 \001(\0162$.operations_res"
291 "earch.OptionalBoolean\0228\n\nuse_or_opt\030\010 \001("
292 "\0162$.operations_research.OptionalBoolean\022"
293 "\?\n\021use_lin_kernighan\030\t \001(\0162$.operations_"
294 "research.OptionalBoolean\0229\n\013use_tsp_opt\030"
295 "\n \001(\0162$.operations_research.OptionalBool"
296 "ean\022=\n\017use_make_active\030\013 \001(\0162$.operation"
297 "s_research.OptionalBoolean\022J\n\034use_reloca"
298 "te_and_make_active\030\025 \001(\0162$.operations_re"
299 "search.OptionalBoolean\022\?\n\021use_make_inact"
300 "ive\030\014 \001(\0162$.operations_research.Optional"
301 "Boolean\022E\n\027use_make_chain_inactive\030\r \001(\016"
302 "2$.operations_research.OptionalBoolean\022="
303 "\n\017use_swap_active\030\016 \001(\0162$.operations_res"
304 "earch.OptionalBoolean\022F\n\030use_extended_sw"
305 "ap_active\030\017 \001(\0162$.operations_research.Op"
306 "tionalBoolean\022G\n\031use_node_pair_swap_acti"
307 "ve\030\024 \001(\0162$.operations_research.OptionalB"
308 "oolean\022:\n\014use_path_lns\030\020 \001(\0162$.operation"
309 "s_research.OptionalBoolean\022\?\n\021use_full_p"
310 "ath_lns\030\021 \001(\0162$.operations_research.Opti"
311 "onalBoolean\0229\n\013use_tsp_lns\030\022 \001(\0162$.opera"
312 "tions_research.OptionalBoolean\022>\n\020use_in"
313 "active_lns\030\023 \001(\0162$.operations_research.O"
314 "ptionalBoolean\022T\n&use_global_cheapest_in"
315 "sertion_path_lns\030\033 \001(\0162$.operations_rese"
316 "arch.OptionalBoolean\022S\n%use_local_cheape"
317 "st_insertion_path_lns\030\034 \001(\0162$.operations"
318 "_research.OptionalBoolean\022l\n>use_relocat"
319 "e_path_global_cheapest_insertion_insert_"
320 "unperformed\030! \001(\0162$.operations_research."
321 "OptionalBoolean\022_\n1use_global_cheapest_i"
322 "nsertion_expensive_chain_lns\030\035 \001(\0162$.ope"
323 "rations_research.OptionalBoolean\022^\n0use_"
324 "local_cheapest_insertion_expensive_chain"
325 "_lns\030\036 \001(\0162$.operations_research.Optiona"
326 "lBoolean\022[\n-use_global_cheapest_insertio"
327 "n_close_nodes_lns\030\037 \001(\0162$.operations_res"
328 "earch.OptionalBoolean\022Z\n,use_local_cheap"
329 "est_insertion_close_nodes_lns\030 \001(\0162$.op"
330 "erations_research.OptionalBoolean\032u\n Imp"
331 "rovementSearchLimitParameters\022$\n\034improve"
332 "ment_rate_coefficient\030& \001(\001\022+\n#improveme"
333 "nt_rate_solutions_distance\030\' \001(\005\"3\n\020Sche"
334 "dulingSolver\022\t\n\005UNSET\020\000\022\010\n\004GLOP\020\001\022\n\n\006CP_"
335 "SAT\020\002\"\250\001\n\026RoutingModelParameters\022J\n\021solv"
336 "er_parameters\030\001 \001(\0132/.operations_researc"
337 "h.ConstraintSolverParameters\022!\n\031reduce_v"
338 "ehicle_cost_model\030\002 \001(\010\022\037\n\027max_callback_"
339 "cache_size\030\003 \001(\005BI\n#com.google.ortools.c"
340 "onstraintsolverP\001\252\002\037Google.OrTools.Const"
341 "raintSolverb\006proto3"
344 &::descriptor_table_google_2fprotobuf_2fduration_2eproto,
357 false,
false, descriptor_table_protodef_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto,
"ortools/constraint_solver/routing_parameters.proto", 5139,
381 #if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
387 constexpr
int RoutingSearchParameters::SchedulingSolver_ARRAYSIZE;
396 RoutingSearchParameters_LocalSearchNeighborhoodOperators::RoutingSearchParameters_LocalSearchNeighborhoodOperators(::PROTOBUF_NAMESPACE_ID::Arena* arena)
397 : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
399 RegisterArenaDtor(arena);
402 RoutingSearchParameters_LocalSearchNeighborhoodOperators::RoutingSearchParameters_LocalSearchNeighborhoodOperators(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from)
403 : ::PROTOBUF_NAMESPACE_ID::Message() {
404 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
405 ::memcpy(&use_relocate_, &from.use_relocate_,
406 static_cast<size_t>(
reinterpret_cast<char*
>(&use_relocate_path_global_cheapest_insertion_insert_unperformed_) -
407 reinterpret_cast<char*
>(&use_relocate_)) +
sizeof(use_relocate_path_global_cheapest_insertion_insert_unperformed_));
411 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::SharedCtor() {
412 ::memset(
reinterpret_cast<char*
>(
this) +
static_cast<size_t>(
413 reinterpret_cast<char*
>(&use_relocate_) -
reinterpret_cast<char*
>(
this)),
414 0,
static_cast<size_t>(
reinterpret_cast<char*
>(&use_relocate_path_global_cheapest_insertion_insert_unperformed_) -
415 reinterpret_cast<char*
>(&use_relocate_)) +
sizeof(use_relocate_path_global_cheapest_insertion_insert_unperformed_));
418 RoutingSearchParameters_LocalSearchNeighborhoodOperators::~RoutingSearchParameters_LocalSearchNeighborhoodOperators() {
421 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
424 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::SharedDtor() {
425 GOOGLE_DCHECK(GetArena() ==
nullptr);
428 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::ArenaDtor(
void*
object) {
429 RoutingSearchParameters_LocalSearchNeighborhoodOperators* _this =
reinterpret_cast< RoutingSearchParameters_LocalSearchNeighborhoodOperators*
>(object);
432 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
434 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::SetCachedSize(
int size)
const {
435 _cached_size_.Set(size);
437 const RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters_LocalSearchNeighborhoodOperators::default_instance() {
439 return *internal_default_instance();
443 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::Clear() {
447 (void) cached_has_bits;
449 ::memset(&use_relocate_, 0,
static_cast<size_t>(
450 reinterpret_cast<char*
>(&use_relocate_path_global_cheapest_insertion_insert_unperformed_) -
451 reinterpret_cast<char*
>(&use_relocate_)) +
sizeof(use_relocate_path_global_cheapest_insertion_insert_unperformed_));
452 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
455 const char* RoutingSearchParameters_LocalSearchNeighborhoodOperators::_InternalParse(
const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
456 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
457 while (!ctx->Done(&ptr)) {
459 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
468 }
else goto handle_unusual;
476 }
else goto handle_unusual;
484 }
else goto handle_unusual;
492 }
else goto handle_unusual;
500 }
else goto handle_unusual;
508 }
else goto handle_unusual;
516 }
else goto handle_unusual;
524 }
else goto handle_unusual;
532 }
else goto handle_unusual;
540 }
else goto handle_unusual;
548 }
else goto handle_unusual;
556 }
else goto handle_unusual;
564 }
else goto handle_unusual;
572 }
else goto handle_unusual;
580 }
else goto handle_unusual;
588 }
else goto handle_unusual;
596 }
else goto handle_unusual;
604 }
else goto handle_unusual;
612 }
else goto handle_unusual;
620 }
else goto handle_unusual;
628 }
else goto handle_unusual;
636 }
else goto handle_unusual;
644 }
else goto handle_unusual;
652 }
else goto handle_unusual;
660 }
else goto handle_unusual;
668 }
else goto handle_unusual;
676 }
else goto handle_unusual;
684 }
else goto handle_unusual;
692 }
else goto handle_unusual;
700 }
else goto handle_unusual;
708 }
else goto handle_unusual;
716 }
else goto handle_unusual;
724 }
else goto handle_unusual;
728 if ((tag & 7) == 4 || tag == 0) {
729 ctx->SetLastTag(tag);
732 ptr = UnknownFieldParse(tag,
733 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
735 CHK_(ptr !=
nullptr);
752 (void) cached_has_bits;
755 if (this->use_relocate() != 0) {
756 target = stream->EnsureSpace(target);
757 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
758 1, this->_internal_use_relocate(), target);
762 if (this->use_relocate_pair() != 0) {
763 target = stream->EnsureSpace(target);
764 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
765 2, this->_internal_use_relocate_pair(), target);
769 if (this->use_relocate_neighbors() != 0) {
770 target = stream->EnsureSpace(target);
771 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
772 3, this->_internal_use_relocate_neighbors(), target);
776 if (this->use_exchange() != 0) {
777 target = stream->EnsureSpace(target);
778 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
779 4, this->_internal_use_exchange(), target);
783 if (this->use_cross() != 0) {
784 target = stream->EnsureSpace(target);
785 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
786 5, this->_internal_use_cross(), target);
790 if (this->use_cross_exchange() != 0) {
791 target = stream->EnsureSpace(target);
792 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
793 6, this->_internal_use_cross_exchange(), target);
797 if (this->use_two_opt() != 0) {
798 target = stream->EnsureSpace(target);
799 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
800 7, this->_internal_use_two_opt(), target);
804 if (this->use_or_opt() != 0) {
805 target = stream->EnsureSpace(target);
806 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
807 8, this->_internal_use_or_opt(), target);
811 if (this->use_lin_kernighan() != 0) {
812 target = stream->EnsureSpace(target);
813 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
814 9, this->_internal_use_lin_kernighan(), target);
818 if (this->use_tsp_opt() != 0) {
819 target = stream->EnsureSpace(target);
820 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
821 10, this->_internal_use_tsp_opt(), target);
825 if (this->use_make_active() != 0) {
826 target = stream->EnsureSpace(target);
827 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
828 11, this->_internal_use_make_active(), target);
832 if (this->use_make_inactive() != 0) {
833 target = stream->EnsureSpace(target);
834 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
835 12, this->_internal_use_make_inactive(), target);
839 if (this->use_make_chain_inactive() != 0) {
840 target = stream->EnsureSpace(target);
841 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
842 13, this->_internal_use_make_chain_inactive(), target);
846 if (this->use_swap_active() != 0) {
847 target = stream->EnsureSpace(target);
848 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
849 14, this->_internal_use_swap_active(), target);
853 if (this->use_extended_swap_active() != 0) {
854 target = stream->EnsureSpace(target);
855 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
856 15, this->_internal_use_extended_swap_active(), target);
860 if (this->use_path_lns() != 0) {
861 target = stream->EnsureSpace(target);
862 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
863 16, this->_internal_use_path_lns(), target);
867 if (this->use_full_path_lns() != 0) {
868 target = stream->EnsureSpace(target);
869 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
870 17, this->_internal_use_full_path_lns(), target);
874 if (this->use_tsp_lns() != 0) {
875 target = stream->EnsureSpace(target);
876 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
877 18, this->_internal_use_tsp_lns(), target);
881 if (this->use_inactive_lns() != 0) {
882 target = stream->EnsureSpace(target);
883 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
884 19, this->_internal_use_inactive_lns(), target);
888 if (this->use_node_pair_swap_active() != 0) {
889 target = stream->EnsureSpace(target);
890 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
891 20, this->_internal_use_node_pair_swap_active(), target);
895 if (this->use_relocate_and_make_active() != 0) {
896 target = stream->EnsureSpace(target);
897 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
898 21, this->_internal_use_relocate_and_make_active(), target);
902 if (this->use_exchange_pair() != 0) {
903 target = stream->EnsureSpace(target);
904 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
905 22, this->_internal_use_exchange_pair(), target);
909 if (this->use_relocate_expensive_chain() != 0) {
910 target = stream->EnsureSpace(target);
911 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
912 23, this->_internal_use_relocate_expensive_chain(), target);
916 if (this->use_light_relocate_pair() != 0) {
917 target = stream->EnsureSpace(target);
918 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
919 24, this->_internal_use_light_relocate_pair(), target);
923 if (this->use_relocate_subtrip() != 0) {
924 target = stream->EnsureSpace(target);
925 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
926 25, this->_internal_use_relocate_subtrip(), target);
930 if (this->use_exchange_subtrip() != 0) {
931 target = stream->EnsureSpace(target);
932 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
933 26, this->_internal_use_exchange_subtrip(), target);
937 if (this->use_global_cheapest_insertion_path_lns() != 0) {
938 target = stream->EnsureSpace(target);
939 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
940 27, this->_internal_use_global_cheapest_insertion_path_lns(), target);
944 if (this->use_local_cheapest_insertion_path_lns() != 0) {
945 target = stream->EnsureSpace(target);
946 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
947 28, this->_internal_use_local_cheapest_insertion_path_lns(), target);
951 if (this->use_global_cheapest_insertion_expensive_chain_lns() != 0) {
952 target = stream->EnsureSpace(target);
953 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
954 29, this->_internal_use_global_cheapest_insertion_expensive_chain_lns(), target);
958 if (this->use_local_cheapest_insertion_expensive_chain_lns() != 0) {
959 target = stream->EnsureSpace(target);
960 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
961 30, this->_internal_use_local_cheapest_insertion_expensive_chain_lns(), target);
965 if (this->use_global_cheapest_insertion_close_nodes_lns() != 0) {
966 target = stream->EnsureSpace(target);
967 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
968 31, this->_internal_use_global_cheapest_insertion_close_nodes_lns(), target);
972 if (this->use_local_cheapest_insertion_close_nodes_lns() != 0) {
973 target = stream->EnsureSpace(target);
974 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
975 32, this->_internal_use_local_cheapest_insertion_close_nodes_lns(), target);
979 if (this->use_relocate_path_global_cheapest_insertion_insert_unperformed() != 0) {
980 target = stream->EnsureSpace(target);
981 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
982 33, this->_internal_use_relocate_path_global_cheapest_insertion_insert_unperformed(), target);
985 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
986 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
987 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
993 size_t RoutingSearchParameters_LocalSearchNeighborhoodOperators::ByteSizeLong()
const {
995 size_t total_size = 0;
999 (void) cached_has_bits;
1002 if (this->use_relocate() != 0) {
1004 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate());
1008 if (this->use_relocate_pair() != 0) {
1010 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_pair());
1014 if (this->use_relocate_neighbors() != 0) {
1016 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_neighbors());
1020 if (this->use_exchange() != 0) {
1022 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_exchange());
1026 if (this->use_cross() != 0) {
1028 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_cross());
1032 if (this->use_cross_exchange() != 0) {
1034 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_cross_exchange());
1038 if (this->use_two_opt() != 0) {
1040 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_two_opt());
1044 if (this->use_or_opt() != 0) {
1046 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_or_opt());
1050 if (this->use_lin_kernighan() != 0) {
1052 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_lin_kernighan());
1056 if (this->use_tsp_opt() != 0) {
1058 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_tsp_opt());
1062 if (this->use_make_active() != 0) {
1064 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_make_active());
1068 if (this->use_make_inactive() != 0) {
1070 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_make_inactive());
1074 if (this->use_make_chain_inactive() != 0) {
1076 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_make_chain_inactive());
1080 if (this->use_swap_active() != 0) {
1082 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_swap_active());
1086 if (this->use_extended_swap_active() != 0) {
1088 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_extended_swap_active());
1092 if (this->use_path_lns() != 0) {
1094 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_path_lns());
1098 if (this->use_full_path_lns() != 0) {
1100 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_full_path_lns());
1104 if (this->use_tsp_lns() != 0) {
1106 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_tsp_lns());
1110 if (this->use_inactive_lns() != 0) {
1112 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_inactive_lns());
1116 if (this->use_node_pair_swap_active() != 0) {
1118 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_node_pair_swap_active());
1122 if (this->use_relocate_and_make_active() != 0) {
1124 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_and_make_active());
1128 if (this->use_exchange_pair() != 0) {
1130 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_exchange_pair());
1134 if (this->use_relocate_expensive_chain() != 0) {
1136 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_expensive_chain());
1140 if (this->use_light_relocate_pair() != 0) {
1142 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_light_relocate_pair());
1146 if (this->use_relocate_subtrip() != 0) {
1148 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_subtrip());
1152 if (this->use_exchange_subtrip() != 0) {
1154 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_exchange_subtrip());
1158 if (this->use_global_cheapest_insertion_path_lns() != 0) {
1160 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_global_cheapest_insertion_path_lns());
1164 if (this->use_local_cheapest_insertion_path_lns() != 0) {
1166 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_local_cheapest_insertion_path_lns());
1170 if (this->use_global_cheapest_insertion_expensive_chain_lns() != 0) {
1172 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_global_cheapest_insertion_expensive_chain_lns());
1176 if (this->use_local_cheapest_insertion_expensive_chain_lns() != 0) {
1178 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_local_cheapest_insertion_expensive_chain_lns());
1182 if (this->use_global_cheapest_insertion_close_nodes_lns() != 0) {
1184 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_global_cheapest_insertion_close_nodes_lns());
1188 if (this->use_local_cheapest_insertion_close_nodes_lns() != 0) {
1190 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_local_cheapest_insertion_close_nodes_lns());
1194 if (this->use_relocate_path_global_cheapest_insertion_insert_unperformed() != 0) {
1196 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_relocate_path_global_cheapest_insertion_insert_unperformed());
1199 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1200 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
1201 _internal_metadata_, total_size, &_cached_size_);
1203 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
1204 SetCachedSize(cached_size);
1208 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1210 GOOGLE_DCHECK_NE(&from,
this);
1211 const RoutingSearchParameters_LocalSearchNeighborhoodOperators* source =
1212 ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(
1214 if (source ==
nullptr) {
1216 ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from,
this);
1223 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::MergeFrom(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from) {
1225 GOOGLE_DCHECK_NE(&from,
this);
1226 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1228 (void) cached_has_bits;
1230 if (from.use_relocate() != 0) {
1231 _internal_set_use_relocate(from._internal_use_relocate());
1233 if (from.use_relocate_pair() != 0) {
1234 _internal_set_use_relocate_pair(from._internal_use_relocate_pair());
1236 if (from.use_relocate_neighbors() != 0) {
1237 _internal_set_use_relocate_neighbors(from._internal_use_relocate_neighbors());
1239 if (from.use_exchange() != 0) {
1240 _internal_set_use_exchange(from._internal_use_exchange());
1242 if (from.use_cross() != 0) {
1243 _internal_set_use_cross(from._internal_use_cross());
1245 if (from.use_cross_exchange() != 0) {
1246 _internal_set_use_cross_exchange(from._internal_use_cross_exchange());
1248 if (from.use_two_opt() != 0) {
1249 _internal_set_use_two_opt(from._internal_use_two_opt());
1251 if (from.use_or_opt() != 0) {
1252 _internal_set_use_or_opt(from._internal_use_or_opt());
1254 if (from.use_lin_kernighan() != 0) {
1255 _internal_set_use_lin_kernighan(from._internal_use_lin_kernighan());
1257 if (from.use_tsp_opt() != 0) {
1258 _internal_set_use_tsp_opt(from._internal_use_tsp_opt());
1260 if (from.use_make_active() != 0) {
1261 _internal_set_use_make_active(from._internal_use_make_active());
1263 if (from.use_make_inactive() != 0) {
1264 _internal_set_use_make_inactive(from._internal_use_make_inactive());
1266 if (from.use_make_chain_inactive() != 0) {
1267 _internal_set_use_make_chain_inactive(from._internal_use_make_chain_inactive());
1269 if (from.use_swap_active() != 0) {
1270 _internal_set_use_swap_active(from._internal_use_swap_active());
1272 if (from.use_extended_swap_active() != 0) {
1273 _internal_set_use_extended_swap_active(from._internal_use_extended_swap_active());
1275 if (from.use_path_lns() != 0) {
1276 _internal_set_use_path_lns(from._internal_use_path_lns());
1278 if (from.use_full_path_lns() != 0) {
1279 _internal_set_use_full_path_lns(from._internal_use_full_path_lns());
1281 if (from.use_tsp_lns() != 0) {
1282 _internal_set_use_tsp_lns(from._internal_use_tsp_lns());
1284 if (from.use_inactive_lns() != 0) {
1285 _internal_set_use_inactive_lns(from._internal_use_inactive_lns());
1287 if (from.use_node_pair_swap_active() != 0) {
1288 _internal_set_use_node_pair_swap_active(from._internal_use_node_pair_swap_active());
1290 if (from.use_relocate_and_make_active() != 0) {
1291 _internal_set_use_relocate_and_make_active(from._internal_use_relocate_and_make_active());
1293 if (from.use_exchange_pair() != 0) {
1294 _internal_set_use_exchange_pair(from._internal_use_exchange_pair());
1296 if (from.use_relocate_expensive_chain() != 0) {
1297 _internal_set_use_relocate_expensive_chain(from._internal_use_relocate_expensive_chain());
1299 if (from.use_light_relocate_pair() != 0) {
1300 _internal_set_use_light_relocate_pair(from._internal_use_light_relocate_pair());
1302 if (from.use_relocate_subtrip() != 0) {
1303 _internal_set_use_relocate_subtrip(from._internal_use_relocate_subtrip());
1305 if (from.use_exchange_subtrip() != 0) {
1306 _internal_set_use_exchange_subtrip(from._internal_use_exchange_subtrip());
1308 if (from.use_global_cheapest_insertion_path_lns() != 0) {
1309 _internal_set_use_global_cheapest_insertion_path_lns(from._internal_use_global_cheapest_insertion_path_lns());
1311 if (from.use_local_cheapest_insertion_path_lns() != 0) {
1312 _internal_set_use_local_cheapest_insertion_path_lns(from._internal_use_local_cheapest_insertion_path_lns());
1314 if (from.use_global_cheapest_insertion_expensive_chain_lns() != 0) {
1315 _internal_set_use_global_cheapest_insertion_expensive_chain_lns(from._internal_use_global_cheapest_insertion_expensive_chain_lns());
1317 if (from.use_local_cheapest_insertion_expensive_chain_lns() != 0) {
1318 _internal_set_use_local_cheapest_insertion_expensive_chain_lns(from._internal_use_local_cheapest_insertion_expensive_chain_lns());
1320 if (from.use_global_cheapest_insertion_close_nodes_lns() != 0) {
1321 _internal_set_use_global_cheapest_insertion_close_nodes_lns(from._internal_use_global_cheapest_insertion_close_nodes_lns());
1323 if (from.use_local_cheapest_insertion_close_nodes_lns() != 0) {
1324 _internal_set_use_local_cheapest_insertion_close_nodes_lns(from._internal_use_local_cheapest_insertion_close_nodes_lns());
1326 if (from.use_relocate_path_global_cheapest_insertion_insert_unperformed() != 0) {
1327 _internal_set_use_relocate_path_global_cheapest_insertion_insert_unperformed(from._internal_use_relocate_path_global_cheapest_insertion_insert_unperformed());
1331 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1333 if (&from ==
this)
return;
1338 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::CopyFrom(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from) {
1340 if (&from ==
this)
return;
1345 bool RoutingSearchParameters_LocalSearchNeighborhoodOperators::IsInitialized()
const {
1349 void RoutingSearchParameters_LocalSearchNeighborhoodOperators::InternalSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other) {
1351 _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
1352 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1353 PROTOBUF_FIELD_OFFSET(RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_path_global_cheapest_insertion_insert_unperformed_)
1354 +
sizeof(RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_path_global_cheapest_insertion_insert_unperformed_)
1355 - PROTOBUF_FIELD_OFFSET(RoutingSearchParameters_LocalSearchNeighborhoodOperators, use_relocate_)>(
1356 reinterpret_cast<char*
>(&use_relocate_),
1357 reinterpret_cast<char*
>(&other->use_relocate_));
1360 ::PROTOBUF_NAMESPACE_ID::Metadata RoutingSearchParameters_LocalSearchNeighborhoodOperators::GetMetadata()
const {
1361 return GetMetadataStatic();
1371 RoutingSearchParameters_ImprovementSearchLimitParameters::RoutingSearchParameters_ImprovementSearchLimitParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena)
1372 : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
1374 RegisterArenaDtor(arena);
1377 RoutingSearchParameters_ImprovementSearchLimitParameters::RoutingSearchParameters_ImprovementSearchLimitParameters(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from)
1378 : ::PROTOBUF_NAMESPACE_ID::Message() {
1379 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1380 ::memcpy(&improvement_rate_solutions_distance_, &from.improvement_rate_solutions_distance_,
1381 static_cast<size_t>(
reinterpret_cast<char*
>(&improvement_rate_coefficient_) -
1382 reinterpret_cast<char*
>(&improvement_rate_solutions_distance_)) +
sizeof(improvement_rate_coefficient_));
1386 void RoutingSearchParameters_ImprovementSearchLimitParameters::SharedCtor() {
1387 ::memset(
reinterpret_cast<char*
>(
this) +
static_cast<size_t>(
1388 reinterpret_cast<char*
>(&improvement_rate_solutions_distance_) -
reinterpret_cast<char*
>(
this)),
1389 0,
static_cast<size_t>(
reinterpret_cast<char*
>(&improvement_rate_coefficient_) -
1390 reinterpret_cast<char*
>(&improvement_rate_solutions_distance_)) +
sizeof(improvement_rate_coefficient_));
1393 RoutingSearchParameters_ImprovementSearchLimitParameters::~RoutingSearchParameters_ImprovementSearchLimitParameters() {
1396 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1399 void RoutingSearchParameters_ImprovementSearchLimitParameters::SharedDtor() {
1400 GOOGLE_DCHECK(GetArena() ==
nullptr);
1403 void RoutingSearchParameters_ImprovementSearchLimitParameters::ArenaDtor(
void*
object) {
1404 RoutingSearchParameters_ImprovementSearchLimitParameters* _this =
reinterpret_cast< RoutingSearchParameters_ImprovementSearchLimitParameters*
>(object);
1407 void RoutingSearchParameters_ImprovementSearchLimitParameters::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1409 void RoutingSearchParameters_ImprovementSearchLimitParameters::SetCachedSize(
int size)
const {
1410 _cached_size_.Set(size);
1412 const RoutingSearchParameters_ImprovementSearchLimitParameters& RoutingSearchParameters_ImprovementSearchLimitParameters::default_instance() {
1414 return *internal_default_instance();
1418 void RoutingSearchParameters_ImprovementSearchLimitParameters::Clear() {
1422 (void) cached_has_bits;
1424 ::memset(&improvement_rate_solutions_distance_, 0,
static_cast<size_t>(
1425 reinterpret_cast<char*
>(&improvement_rate_coefficient_) -
1426 reinterpret_cast<char*
>(&improvement_rate_solutions_distance_)) +
sizeof(improvement_rate_coefficient_));
1427 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1430 const char* RoutingSearchParameters_ImprovementSearchLimitParameters::_InternalParse(
const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1431 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1432 while (!ctx->Done(&ptr)) {
1434 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1440 improvement_rate_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1441 ptr +=
sizeof(double);
1442 }
else goto handle_unusual;
1447 improvement_rate_solutions_distance_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1449 }
else goto handle_unusual;
1453 if ((tag & 7) == 4 || tag == 0) {
1454 ctx->SetLastTag(tag);
1457 ptr = UnknownFieldParse(tag,
1458 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1460 CHK_(ptr !=
nullptr);
1477 (void) cached_has_bits;
1480 if (!(this->improvement_rate_coefficient() <= 0 && this->improvement_rate_coefficient() >= 0)) {
1481 target = stream->EnsureSpace(target);
1482 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(38, this->_internal_improvement_rate_coefficient(), target);
1486 if (this->improvement_rate_solutions_distance() != 0) {
1487 target = stream->EnsureSpace(target);
1488 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(39, this->_internal_improvement_rate_solutions_distance(), target);
1491 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1492 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1493 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1499 size_t RoutingSearchParameters_ImprovementSearchLimitParameters::ByteSizeLong()
const {
1501 size_t total_size = 0;
1505 (void) cached_has_bits;
1508 if (this->improvement_rate_solutions_distance() != 0) {
1510 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
1511 this->_internal_improvement_rate_solutions_distance());
1515 if (!(this->improvement_rate_coefficient() <= 0 && this->improvement_rate_coefficient() >= 0)) {
1516 total_size += 2 + 8;
1519 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1520 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
1521 _internal_metadata_, total_size, &_cached_size_);
1523 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
1524 SetCachedSize(cached_size);
1528 void RoutingSearchParameters_ImprovementSearchLimitParameters::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1530 GOOGLE_DCHECK_NE(&from,
this);
1531 const RoutingSearchParameters_ImprovementSearchLimitParameters* source =
1532 ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<RoutingSearchParameters_ImprovementSearchLimitParameters>(
1534 if (source ==
nullptr) {
1536 ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from,
this);
1543 void RoutingSearchParameters_ImprovementSearchLimitParameters::MergeFrom(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from) {
1545 GOOGLE_DCHECK_NE(&from,
this);
1546 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1548 (void) cached_has_bits;
1550 if (from.improvement_rate_solutions_distance() != 0) {
1551 _internal_set_improvement_rate_solutions_distance(from._internal_improvement_rate_solutions_distance());
1553 if (!(from.improvement_rate_coefficient() <= 0 && from.improvement_rate_coefficient() >= 0)) {
1554 _internal_set_improvement_rate_coefficient(from._internal_improvement_rate_coefficient());
1558 void RoutingSearchParameters_ImprovementSearchLimitParameters::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1560 if (&from ==
this)
return;
1565 void RoutingSearchParameters_ImprovementSearchLimitParameters::CopyFrom(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from) {
1567 if (&from ==
this)
return;
1572 bool RoutingSearchParameters_ImprovementSearchLimitParameters::IsInitialized()
const {
1576 void RoutingSearchParameters_ImprovementSearchLimitParameters::InternalSwap(RoutingSearchParameters_ImprovementSearchLimitParameters* other) {
1578 _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
1579 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1580 PROTOBUF_FIELD_OFFSET(RoutingSearchParameters_ImprovementSearchLimitParameters, improvement_rate_coefficient_)
1581 +
sizeof(RoutingSearchParameters_ImprovementSearchLimitParameters::improvement_rate_coefficient_)
1582 - PROTOBUF_FIELD_OFFSET(RoutingSearchParameters_ImprovementSearchLimitParameters, improvement_rate_solutions_distance_)>(
1583 reinterpret_cast<char*
>(&improvement_rate_solutions_distance_),
1584 reinterpret_cast<char*
>(&other->improvement_rate_solutions_distance_));
1587 ::PROTOBUF_NAMESPACE_ID::Metadata RoutingSearchParameters_ImprovementSearchLimitParameters::GetMetadata()
const {
1588 return GetMetadataStatic();
1596 static const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& local_search_operators(
const RoutingSearchParameters* msg);
1597 static const PROTOBUF_NAMESPACE_ID::Duration&
time_limit(
const RoutingSearchParameters* msg);
1598 static const PROTOBUF_NAMESPACE_ID::Duration& lns_time_limit(
const RoutingSearchParameters* msg);
1599 static const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& improvement_limit_parameters(
const RoutingSearchParameters* msg);
1602 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators&
1604 return *msg->local_search_operators_;
1606 const PROTOBUF_NAMESPACE_ID::Duration&
1608 return *msg->time_limit_;
1610 const PROTOBUF_NAMESPACE_ID::Duration&
1612 return *msg->lns_time_limit_;
1614 const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters&
1616 return *msg->improvement_limit_parameters_;
1618 void RoutingSearchParameters::clear_time_limit() {
1619 if (GetArena() ==
nullptr && time_limit_ !=
nullptr) {
1622 time_limit_ =
nullptr;
1624 void RoutingSearchParameters::clear_lns_time_limit() {
1625 if (GetArena() ==
nullptr && lns_time_limit_ !=
nullptr) {
1626 delete lns_time_limit_;
1628 lns_time_limit_ =
nullptr;
1630 RoutingSearchParameters::RoutingSearchParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena)
1631 : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
1633 RegisterArenaDtor(arena);
1636 RoutingSearchParameters::RoutingSearchParameters(
const RoutingSearchParameters& from)
1637 : ::PROTOBUF_NAMESPACE_ID::Message() {
1638 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1639 log_tag_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1640 if (!from._internal_log_tag().empty()) {
1641 log_tag_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_log_tag(),
1644 if (from._internal_has_local_search_operators()) {
1645 local_search_operators_ = new ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators(*from.local_search_operators_);
1647 local_search_operators_ =
nullptr;
1649 if (from._internal_has_time_limit()) {
1650 time_limit_ =
new PROTOBUF_NAMESPACE_ID::Duration(*from.time_limit_);
1652 time_limit_ =
nullptr;
1654 if (from._internal_has_lns_time_limit()) {
1655 lns_time_limit_ =
new PROTOBUF_NAMESPACE_ID::Duration(*from.lns_time_limit_);
1657 lns_time_limit_ =
nullptr;
1659 if (from._internal_has_improvement_limit_parameters()) {
1660 improvement_limit_parameters_ = new ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters(*from.improvement_limit_parameters_);
1662 improvement_limit_parameters_ =
nullptr;
1664 ::memcpy(&first_solution_strategy_, &from.first_solution_strategy_,
1665 static_cast<size_t>(
reinterpret_cast<char*
>(&multi_armed_bandit_compound_operator_exploration_coefficient_) -
1666 reinterpret_cast<char*
>(&first_solution_strategy_)) +
sizeof(multi_armed_bandit_compound_operator_exploration_coefficient_));
1670 void RoutingSearchParameters::SharedCtor() {
1672 log_tag_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1673 ::memset(
reinterpret_cast<char*
>(
this) +
static_cast<size_t>(
1674 reinterpret_cast<char*
>(&local_search_operators_) -
reinterpret_cast<char*
>(
this)),
1675 0,
static_cast<size_t>(
reinterpret_cast<char*
>(&multi_armed_bandit_compound_operator_exploration_coefficient_) -
1676 reinterpret_cast<char*
>(&local_search_operators_)) +
sizeof(multi_armed_bandit_compound_operator_exploration_coefficient_));
1679 RoutingSearchParameters::~RoutingSearchParameters() {
1682 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1685 void RoutingSearchParameters::SharedDtor() {
1686 GOOGLE_DCHECK(GetArena() ==
nullptr);
1687 log_tag_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1688 if (
this != internal_default_instance())
delete local_search_operators_;
1689 if (
this != internal_default_instance())
delete time_limit_;
1690 if (
this != internal_default_instance())
delete lns_time_limit_;
1691 if (
this != internal_default_instance())
delete improvement_limit_parameters_;
1694 void RoutingSearchParameters::ArenaDtor(
void*
object) {
1695 RoutingSearchParameters* _this =
reinterpret_cast< RoutingSearchParameters*
>(object);
1698 void RoutingSearchParameters::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1700 void RoutingSearchParameters::SetCachedSize(
int size)
const {
1701 _cached_size_.Set(size);
1703 const RoutingSearchParameters& RoutingSearchParameters::default_instance() {
1705 return *internal_default_instance();
1709 void RoutingSearchParameters::Clear() {
1713 (void) cached_has_bits;
1715 log_tag_.ClearToEmpty();
1716 if (GetArena() ==
nullptr && local_search_operators_ !=
nullptr) {
1717 delete local_search_operators_;
1719 local_search_operators_ =
nullptr;
1720 if (GetArena() ==
nullptr && time_limit_ !=
nullptr) {
1723 time_limit_ =
nullptr;
1724 if (GetArena() ==
nullptr && lns_time_limit_ !=
nullptr) {
1725 delete lns_time_limit_;
1727 lns_time_limit_ =
nullptr;
1728 if (GetArena() ==
nullptr && improvement_limit_parameters_ !=
nullptr) {
1729 delete improvement_limit_parameters_;
1731 improvement_limit_parameters_ =
nullptr;
1732 ::memset(&first_solution_strategy_, 0,
static_cast<size_t>(
1733 reinterpret_cast<char*
>(&multi_armed_bandit_compound_operator_exploration_coefficient_) -
1734 reinterpret_cast<char*
>(&first_solution_strategy_)) +
sizeof(multi_armed_bandit_compound_operator_exploration_coefficient_));
1735 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1738 const char* RoutingSearchParameters::_InternalParse(
const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1739 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1740 while (!ctx->Done(&ptr)) {
1742 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1751 }
else goto handle_unusual;
1756 use_unfiltered_first_solution_strategy_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1758 }
else goto handle_unusual;
1763 ptr = ctx->ParseMessage(_internal_mutable_local_search_operators(), ptr);
1765 }
else goto handle_unusual;
1773 }
else goto handle_unusual;
1778 guided_local_search_lambda_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1779 ptr +=
sizeof(double);
1780 }
else goto handle_unusual;
1785 use_depth_first_search_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1787 }
else goto handle_unusual;
1792 optimization_step_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1793 ptr +=
sizeof(double);
1794 }
else goto handle_unusual;
1799 solution_limit_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1801 }
else goto handle_unusual;
1806 ptr = ctx->ParseMessage(_internal_mutable_time_limit(), ptr);
1808 }
else goto handle_unusual;
1813 ptr = ctx->ParseMessage(_internal_mutable_lns_time_limit(), ptr);
1815 }
else goto handle_unusual;
1820 use_full_propagation_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1822 }
else goto handle_unusual;
1827 log_search_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1829 }
else goto handle_unusual;
1834 savings_neighbors_ratio_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1835 ptr +=
sizeof(double);
1836 }
else goto handle_unusual;
1841 savings_add_reverse_arcs_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1843 }
else goto handle_unusual;
1848 cheapest_insertion_farthest_seeds_ratio_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1849 ptr +=
sizeof(double);
1850 }
else goto handle_unusual;
1855 number_of_solutions_to_collect_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1857 }
else goto handle_unusual;
1862 savings_arc_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1863 ptr +=
sizeof(double);
1864 }
else goto handle_unusual;
1869 savings_parallel_routes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1871 }
else goto handle_unusual;
1876 relocate_expensive_chain_num_arcs_to_consider_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1878 }
else goto handle_unusual;
1883 cheapest_insertion_first_solution_neighbors_ratio_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1884 ptr +=
sizeof(double);
1885 }
else goto handle_unusual;
1890 log_cost_scaling_factor_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1891 ptr +=
sizeof(double);
1892 }
else goto handle_unusual;
1897 savings_max_memory_usage_bytes_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1898 ptr +=
sizeof(double);
1899 }
else goto handle_unusual;
1907 }
else goto handle_unusual;
1915 }
else goto handle_unusual;
1920 log_cost_offset_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1921 ptr +=
sizeof(double);
1922 }
else goto handle_unusual;
1927 christofides_use_minimum_matching_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1929 }
else goto handle_unusual;
1934 cheapest_insertion_ls_operator_neighbors_ratio_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1935 ptr +=
sizeof(double);
1936 }
else goto handle_unusual;
1941 heuristic_expensive_chain_lns_num_arcs_to_consider_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1943 }
else goto handle_unusual;
1951 }
else goto handle_unusual;
1959 }
else goto handle_unusual;
1964 heuristic_close_nodes_lns_num_nodes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1966 }
else goto handle_unusual;
1971 auto str = _internal_mutable_log_tag();
1972 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
1973 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str,
"operations_research.RoutingSearchParameters.log_tag"));
1975 }
else goto handle_unusual;
1980 ptr = ctx->ParseMessage(_internal_mutable_improvement_limit_parameters(), ptr);
1982 }
else goto handle_unusual;
1987 cheapest_insertion_add_unperformed_entries_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1989 }
else goto handle_unusual;
1994 use_multi_armed_bandit_concatenate_operators_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1996 }
else goto handle_unusual;
2001 multi_armed_bandit_compound_operator_memory_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
2002 ptr +=
sizeof(double);
2003 }
else goto handle_unusual;
2008 multi_armed_bandit_compound_operator_exploration_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
2009 ptr +=
sizeof(double);
2010 }
else goto handle_unusual;
2015 cheapest_insertion_first_solution_min_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2017 }
else goto handle_unusual;
2022 cheapest_insertion_ls_operator_min_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2024 }
else goto handle_unusual;
2028 if ((tag & 7) == 4 || tag == 0) {
2029 ctx->SetLastTag(tag);
2032 ptr = UnknownFieldParse(tag,
2033 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
2035 CHK_(ptr !=
nullptr);
2052 (void) cached_has_bits;
2055 if (this->first_solution_strategy() != 0) {
2056 target = stream->EnsureSpace(target);
2057 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2058 1, this->_internal_first_solution_strategy(), target);
2062 if (this->use_unfiltered_first_solution_strategy() != 0) {
2063 target = stream->EnsureSpace(target);
2064 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_use_unfiltered_first_solution_strategy(), target);
2068 if (this->has_local_search_operators()) {
2069 target = stream->EnsureSpace(target);
2070 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2071 InternalWriteMessage(
2076 if (this->local_search_metaheuristic() != 0) {
2077 target = stream->EnsureSpace(target);
2078 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2079 4, this->_internal_local_search_metaheuristic(), target);
2083 if (!(this->guided_local_search_lambda_coefficient() <= 0 && this->guided_local_search_lambda_coefficient() >= 0)) {
2084 target = stream->EnsureSpace(target);
2085 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(5, this->_internal_guided_local_search_lambda_coefficient(), target);
2089 if (this->use_depth_first_search() != 0) {
2090 target = stream->EnsureSpace(target);
2091 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(6, this->_internal_use_depth_first_search(), target);
2095 if (!(this->optimization_step() <= 0 && this->optimization_step() >= 0)) {
2096 target = stream->EnsureSpace(target);
2097 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(7, this->_internal_optimization_step(), target);
2101 if (this->solution_limit() != 0) {
2102 target = stream->EnsureSpace(target);
2103 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(8, this->_internal_solution_limit(), target);
2107 if (this->has_time_limit()) {
2108 target = stream->EnsureSpace(target);
2109 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2110 InternalWriteMessage(
2115 if (this->has_lns_time_limit()) {
2116 target = stream->EnsureSpace(target);
2117 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2118 InternalWriteMessage(
2123 if (this->use_full_propagation() != 0) {
2124 target = stream->EnsureSpace(target);
2125 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(11, this->_internal_use_full_propagation(), target);
2129 if (this->log_search() != 0) {
2130 target = stream->EnsureSpace(target);
2131 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(13, this->_internal_log_search(), target);
2135 if (!(this->savings_neighbors_ratio() <= 0 && this->savings_neighbors_ratio() >= 0)) {
2136 target = stream->EnsureSpace(target);
2137 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(14, this->_internal_savings_neighbors_ratio(), target);
2141 if (this->savings_add_reverse_arcs() != 0) {
2142 target = stream->EnsureSpace(target);
2143 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(15, this->_internal_savings_add_reverse_arcs(), target);
2147 if (!(this->cheapest_insertion_farthest_seeds_ratio() <= 0 && this->cheapest_insertion_farthest_seeds_ratio() >= 0)) {
2148 target = stream->EnsureSpace(target);
2149 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(16, this->_internal_cheapest_insertion_farthest_seeds_ratio(), target);
2153 if (this->number_of_solutions_to_collect() != 0) {
2154 target = stream->EnsureSpace(target);
2155 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(17, this->_internal_number_of_solutions_to_collect(), target);
2159 if (!(this->savings_arc_coefficient() <= 0 && this->savings_arc_coefficient() >= 0)) {
2160 target = stream->EnsureSpace(target);
2161 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(18, this->_internal_savings_arc_coefficient(), target);
2165 if (this->savings_parallel_routes() != 0) {
2166 target = stream->EnsureSpace(target);
2167 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(19, this->_internal_savings_parallel_routes(), target);
2171 if (this->relocate_expensive_chain_num_arcs_to_consider() != 0) {
2172 target = stream->EnsureSpace(target);
2173 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(20, this->_internal_relocate_expensive_chain_num_arcs_to_consider(), target);
2177 if (!(this->cheapest_insertion_first_solution_neighbors_ratio() <= 0 && this->cheapest_insertion_first_solution_neighbors_ratio() >= 0)) {
2178 target = stream->EnsureSpace(target);
2179 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(21, this->_internal_cheapest_insertion_first_solution_neighbors_ratio(), target);
2183 if (!(this->log_cost_scaling_factor() <= 0 && this->log_cost_scaling_factor() >= 0)) {
2184 target = stream->EnsureSpace(target);
2185 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(22, this->_internal_log_cost_scaling_factor(), target);
2189 if (!(this->savings_max_memory_usage_bytes() <= 0 && this->savings_max_memory_usage_bytes() >= 0)) {
2190 target = stream->EnsureSpace(target);
2191 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(23, this->_internal_savings_max_memory_usage_bytes(), target);
2195 if (this->use_cp_sat() != 0) {
2196 target = stream->EnsureSpace(target);
2197 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2198 27, this->_internal_use_cp_sat(), target);
2202 if (this->use_cp() != 0) {
2203 target = stream->EnsureSpace(target);
2204 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2205 28, this->_internal_use_cp(), target);
2209 if (!(this->log_cost_offset() <= 0 && this->log_cost_offset() >= 0)) {
2210 target = stream->EnsureSpace(target);
2211 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(29, this->_internal_log_cost_offset(), target);
2215 if (this->christofides_use_minimum_matching() != 0) {
2216 target = stream->EnsureSpace(target);
2217 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(30, this->_internal_christofides_use_minimum_matching(), target);
2221 if (!(this->cheapest_insertion_ls_operator_neighbors_ratio() <= 0 && this->cheapest_insertion_ls_operator_neighbors_ratio() >= 0)) {
2222 target = stream->EnsureSpace(target);
2223 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(31, this->_internal_cheapest_insertion_ls_operator_neighbors_ratio(), target);
2227 if (this->heuristic_expensive_chain_lns_num_arcs_to_consider() != 0) {
2228 target = stream->EnsureSpace(target);
2229 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(32, this->_internal_heuristic_expensive_chain_lns_num_arcs_to_consider(), target);
2233 if (this->continuous_scheduling_solver() != 0) {
2234 target = stream->EnsureSpace(target);
2235 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2236 33, this->_internal_continuous_scheduling_solver(), target);
2240 if (this->mixed_integer_scheduling_solver() != 0) {
2241 target = stream->EnsureSpace(target);
2242 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2243 34, this->_internal_mixed_integer_scheduling_solver(), target);
2247 if (this->heuristic_close_nodes_lns_num_nodes() != 0) {
2248 target = stream->EnsureSpace(target);
2249 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(35, this->_internal_heuristic_close_nodes_lns_num_nodes(), target);
2253 if (this->log_tag().size() > 0) {
2254 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
2255 this->_internal_log_tag().data(),
static_cast<int>(this->_internal_log_tag().length()),
2256 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
2257 "operations_research.RoutingSearchParameters.log_tag");
2258 target = stream->WriteStringMaybeAliased(
2259 36, this->_internal_log_tag(), target);
2263 if (this->has_improvement_limit_parameters()) {
2264 target = stream->EnsureSpace(target);
2265 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2266 InternalWriteMessage(
2271 if (this->cheapest_insertion_add_unperformed_entries() != 0) {
2272 target = stream->EnsureSpace(target);
2273 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(40, this->_internal_cheapest_insertion_add_unperformed_entries(), target);
2277 if (this->use_multi_armed_bandit_concatenate_operators() != 0) {
2278 target = stream->EnsureSpace(target);
2279 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(41, this->_internal_use_multi_armed_bandit_concatenate_operators(), target);
2283 if (!(this->multi_armed_bandit_compound_operator_memory_coefficient() <= 0 && this->multi_armed_bandit_compound_operator_memory_coefficient() >= 0)) {
2284 target = stream->EnsureSpace(target);
2285 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(42, this->_internal_multi_armed_bandit_compound_operator_memory_coefficient(), target);
2289 if (!(this->multi_armed_bandit_compound_operator_exploration_coefficient() <= 0 && this->multi_armed_bandit_compound_operator_exploration_coefficient() >= 0)) {
2290 target = stream->EnsureSpace(target);
2291 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(43, this->_internal_multi_armed_bandit_compound_operator_exploration_coefficient(), target);
2295 if (this->cheapest_insertion_first_solution_min_neighbors() != 0) {
2296 target = stream->EnsureSpace(target);
2297 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(44, this->_internal_cheapest_insertion_first_solution_min_neighbors(), target);
2301 if (this->cheapest_insertion_ls_operator_min_neighbors() != 0) {
2302 target = stream->EnsureSpace(target);
2303 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(45, this->_internal_cheapest_insertion_ls_operator_min_neighbors(), target);
2306 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2307 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
2308 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
2314 size_t RoutingSearchParameters::ByteSizeLong()
const {
2316 size_t total_size = 0;
2320 (void) cached_has_bits;
2323 if (this->log_tag().size() > 0) {
2325 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
2326 this->_internal_log_tag());
2330 if (this->has_local_search_operators()) {
2332 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2333 *local_search_operators_);
2337 if (this->has_time_limit()) {
2339 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2344 if (this->has_lns_time_limit()) {
2346 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2351 if (this->has_improvement_limit_parameters()) {
2353 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2354 *improvement_limit_parameters_);
2358 if (this->first_solution_strategy() != 0) {
2360 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_first_solution_strategy());
2364 if (this->local_search_metaheuristic() != 0) {
2366 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_local_search_metaheuristic());
2370 if (!(this->guided_local_search_lambda_coefficient() <= 0 && this->guided_local_search_lambda_coefficient() >= 0)) {
2371 total_size += 1 + 8;
2375 if (!(this->optimization_step() <= 0 && this->optimization_step() >= 0)) {
2376 total_size += 1 + 8;
2380 if (this->solution_limit() != 0) {
2382 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
2383 this->_internal_solution_limit());
2387 if (!(this->savings_neighbors_ratio() <= 0 && this->savings_neighbors_ratio() >= 0)) {
2388 total_size += 1 + 8;
2392 if (this->log_search() != 0) {
2393 total_size += 1 + 1;
2397 if (this->number_of_solutions_to_collect() != 0) {
2399 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2400 this->_internal_number_of_solutions_to_collect());
2404 if (!(this->cheapest_insertion_farthest_seeds_ratio() <= 0 && this->cheapest_insertion_farthest_seeds_ratio() >= 0)) {
2405 total_size += 2 + 8;
2409 if (!(this->savings_arc_coefficient() <= 0 && this->savings_arc_coefficient() >= 0)) {
2410 total_size += 2 + 8;
2414 if (this->use_unfiltered_first_solution_strategy() != 0) {
2415 total_size += 1 + 1;
2419 if (this->savings_add_reverse_arcs() != 0) {
2420 total_size += 1 + 1;
2424 if (this->savings_parallel_routes() != 0) {
2425 total_size += 2 + 1;
2429 if (this->cheapest_insertion_add_unperformed_entries() != 0) {
2430 total_size += 2 + 1;
2434 if (this->relocate_expensive_chain_num_arcs_to_consider() != 0) {
2436 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2437 this->_internal_relocate_expensive_chain_num_arcs_to_consider());
2441 if (!(this->cheapest_insertion_first_solution_neighbors_ratio() <= 0 && this->cheapest_insertion_first_solution_neighbors_ratio() >= 0)) {
2442 total_size += 2 + 8;
2446 if (!(this->log_cost_scaling_factor() <= 0 && this->log_cost_scaling_factor() >= 0)) {
2447 total_size += 2 + 8;
2451 if (!(this->savings_max_memory_usage_bytes() <= 0 && this->savings_max_memory_usage_bytes() >= 0)) {
2452 total_size += 2 + 8;
2456 if (this->christofides_use_minimum_matching() != 0) {
2457 total_size += 2 + 1;
2461 if (this->use_multi_armed_bandit_concatenate_operators() != 0) {
2462 total_size += 2 + 1;
2466 if (this->use_depth_first_search() != 0) {
2467 total_size += 1 + 1;
2471 if (this->use_full_propagation() != 0) {
2472 total_size += 1 + 1;
2476 if (this->use_cp_sat() != 0) {
2478 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_cp_sat());
2482 if (!(this->log_cost_offset() <= 0 && this->log_cost_offset() >= 0)) {
2483 total_size += 2 + 8;
2487 if (this->use_cp() != 0) {
2489 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_cp());
2493 if (this->heuristic_expensive_chain_lns_num_arcs_to_consider() != 0) {
2495 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2496 this->_internal_heuristic_expensive_chain_lns_num_arcs_to_consider());
2500 if (!(this->cheapest_insertion_ls_operator_neighbors_ratio() <= 0 && this->cheapest_insertion_ls_operator_neighbors_ratio() >= 0)) {
2501 total_size += 2 + 8;
2505 if (this->continuous_scheduling_solver() != 0) {
2507 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_continuous_scheduling_solver());
2511 if (this->mixed_integer_scheduling_solver() != 0) {
2513 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_mixed_integer_scheduling_solver());
2517 if (this->heuristic_close_nodes_lns_num_nodes() != 0) {
2519 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2520 this->_internal_heuristic_close_nodes_lns_num_nodes());
2524 if (this->cheapest_insertion_first_solution_min_neighbors() != 0) {
2526 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2527 this->_internal_cheapest_insertion_first_solution_min_neighbors());
2531 if (this->cheapest_insertion_ls_operator_min_neighbors() != 0) {
2533 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2534 this->_internal_cheapest_insertion_ls_operator_min_neighbors());
2538 if (!(this->multi_armed_bandit_compound_operator_memory_coefficient() <= 0 && this->multi_armed_bandit_compound_operator_memory_coefficient() >= 0)) {
2539 total_size += 2 + 8;
2543 if (!(this->multi_armed_bandit_compound_operator_exploration_coefficient() <= 0 && this->multi_armed_bandit_compound_operator_exploration_coefficient() >= 0)) {
2544 total_size += 2 + 8;
2547 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2548 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
2549 _internal_metadata_, total_size, &_cached_size_);
2551 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
2552 SetCachedSize(cached_size);
2556 void RoutingSearchParameters::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2558 GOOGLE_DCHECK_NE(&from,
this);
2559 const RoutingSearchParameters* source =
2560 ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<RoutingSearchParameters>(
2562 if (source ==
nullptr) {
2564 ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from,
this);
2571 void RoutingSearchParameters::MergeFrom(
const RoutingSearchParameters& from) {
2573 GOOGLE_DCHECK_NE(&from,
this);
2574 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2576 (void) cached_has_bits;
2578 if (from.log_tag().size() > 0) {
2579 _internal_set_log_tag(from._internal_log_tag());
2581 if (from.has_local_search_operators()) {
2582 _internal_mutable_local_search_operators()->::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators::MergeFrom(from._internal_local_search_operators());
2584 if (from.has_time_limit()) {
2585 _internal_mutable_time_limit()->PROTOBUF_NAMESPACE_ID::Duration::MergeFrom(from._internal_time_limit());
2587 if (from.has_lns_time_limit()) {
2588 _internal_mutable_lns_time_limit()->PROTOBUF_NAMESPACE_ID::Duration::MergeFrom(from._internal_lns_time_limit());
2590 if (from.has_improvement_limit_parameters()) {
2591 _internal_mutable_improvement_limit_parameters()->::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters::MergeFrom(from._internal_improvement_limit_parameters());
2593 if (from.first_solution_strategy() != 0) {
2594 _internal_set_first_solution_strategy(from._internal_first_solution_strategy());
2596 if (from.local_search_metaheuristic() != 0) {
2597 _internal_set_local_search_metaheuristic(from._internal_local_search_metaheuristic());
2599 if (!(from.guided_local_search_lambda_coefficient() <= 0 && from.guided_local_search_lambda_coefficient() >= 0)) {
2600 _internal_set_guided_local_search_lambda_coefficient(from._internal_guided_local_search_lambda_coefficient());
2602 if (!(from.optimization_step() <= 0 && from.optimization_step() >= 0)) {
2603 _internal_set_optimization_step(from._internal_optimization_step());
2605 if (from.solution_limit() != 0) {
2606 _internal_set_solution_limit(from._internal_solution_limit());
2608 if (!(from.savings_neighbors_ratio() <= 0 && from.savings_neighbors_ratio() >= 0)) {
2609 _internal_set_savings_neighbors_ratio(from._internal_savings_neighbors_ratio());
2611 if (from.log_search() != 0) {
2612 _internal_set_log_search(from._internal_log_search());
2614 if (from.number_of_solutions_to_collect() != 0) {
2615 _internal_set_number_of_solutions_to_collect(from._internal_number_of_solutions_to_collect());
2617 if (!(from.cheapest_insertion_farthest_seeds_ratio() <= 0 && from.cheapest_insertion_farthest_seeds_ratio() >= 0)) {
2618 _internal_set_cheapest_insertion_farthest_seeds_ratio(from._internal_cheapest_insertion_farthest_seeds_ratio());
2620 if (!(from.savings_arc_coefficient() <= 0 && from.savings_arc_coefficient() >= 0)) {
2621 _internal_set_savings_arc_coefficient(from._internal_savings_arc_coefficient());
2623 if (from.use_unfiltered_first_solution_strategy() != 0) {
2624 _internal_set_use_unfiltered_first_solution_strategy(from._internal_use_unfiltered_first_solution_strategy());
2626 if (from.savings_add_reverse_arcs() != 0) {
2627 _internal_set_savings_add_reverse_arcs(from._internal_savings_add_reverse_arcs());
2629 if (from.savings_parallel_routes() != 0) {
2630 _internal_set_savings_parallel_routes(from._internal_savings_parallel_routes());
2632 if (from.cheapest_insertion_add_unperformed_entries() != 0) {
2633 _internal_set_cheapest_insertion_add_unperformed_entries(from._internal_cheapest_insertion_add_unperformed_entries());
2635 if (from.relocate_expensive_chain_num_arcs_to_consider() != 0) {
2636 _internal_set_relocate_expensive_chain_num_arcs_to_consider(from._internal_relocate_expensive_chain_num_arcs_to_consider());
2638 if (!(from.cheapest_insertion_first_solution_neighbors_ratio() <= 0 && from.cheapest_insertion_first_solution_neighbors_ratio() >= 0)) {
2639 _internal_set_cheapest_insertion_first_solution_neighbors_ratio(from._internal_cheapest_insertion_first_solution_neighbors_ratio());
2641 if (!(from.log_cost_scaling_factor() <= 0 && from.log_cost_scaling_factor() >= 0)) {
2642 _internal_set_log_cost_scaling_factor(from._internal_log_cost_scaling_factor());
2644 if (!(from.savings_max_memory_usage_bytes() <= 0 && from.savings_max_memory_usage_bytes() >= 0)) {
2645 _internal_set_savings_max_memory_usage_bytes(from._internal_savings_max_memory_usage_bytes());
2647 if (from.christofides_use_minimum_matching() != 0) {
2648 _internal_set_christofides_use_minimum_matching(from._internal_christofides_use_minimum_matching());
2650 if (from.use_multi_armed_bandit_concatenate_operators() != 0) {
2651 _internal_set_use_multi_armed_bandit_concatenate_operators(from._internal_use_multi_armed_bandit_concatenate_operators());
2653 if (from.use_depth_first_search() != 0) {
2654 _internal_set_use_depth_first_search(from._internal_use_depth_first_search());
2656 if (from.use_full_propagation() != 0) {
2657 _internal_set_use_full_propagation(from._internal_use_full_propagation());
2659 if (from.use_cp_sat() != 0) {
2660 _internal_set_use_cp_sat(from._internal_use_cp_sat());
2662 if (!(from.log_cost_offset() <= 0 && from.log_cost_offset() >= 0)) {
2663 _internal_set_log_cost_offset(from._internal_log_cost_offset());
2665 if (from.use_cp() != 0) {
2666 _internal_set_use_cp(from._internal_use_cp());
2668 if (from.heuristic_expensive_chain_lns_num_arcs_to_consider() != 0) {
2669 _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(from._internal_heuristic_expensive_chain_lns_num_arcs_to_consider());
2671 if (!(from.cheapest_insertion_ls_operator_neighbors_ratio() <= 0 && from.cheapest_insertion_ls_operator_neighbors_ratio() >= 0)) {
2672 _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(from._internal_cheapest_insertion_ls_operator_neighbors_ratio());
2674 if (from.continuous_scheduling_solver() != 0) {
2675 _internal_set_continuous_scheduling_solver(from._internal_continuous_scheduling_solver());
2677 if (from.mixed_integer_scheduling_solver() != 0) {
2678 _internal_set_mixed_integer_scheduling_solver(from._internal_mixed_integer_scheduling_solver());
2680 if (from.heuristic_close_nodes_lns_num_nodes() != 0) {
2681 _internal_set_heuristic_close_nodes_lns_num_nodes(from._internal_heuristic_close_nodes_lns_num_nodes());
2683 if (from.cheapest_insertion_first_solution_min_neighbors() != 0) {
2684 _internal_set_cheapest_insertion_first_solution_min_neighbors(from._internal_cheapest_insertion_first_solution_min_neighbors());
2686 if (from.cheapest_insertion_ls_operator_min_neighbors() != 0) {
2687 _internal_set_cheapest_insertion_ls_operator_min_neighbors(from._internal_cheapest_insertion_ls_operator_min_neighbors());
2689 if (!(from.multi_armed_bandit_compound_operator_memory_coefficient() <= 0 && from.multi_armed_bandit_compound_operator_memory_coefficient() >= 0)) {
2690 _internal_set_multi_armed_bandit_compound_operator_memory_coefficient(from._internal_multi_armed_bandit_compound_operator_memory_coefficient());
2692 if (!(from.multi_armed_bandit_compound_operator_exploration_coefficient() <= 0 && from.multi_armed_bandit_compound_operator_exploration_coefficient() >= 0)) {
2693 _internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(from._internal_multi_armed_bandit_compound_operator_exploration_coefficient());
2697 void RoutingSearchParameters::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2699 if (&from ==
this)
return;
2704 void RoutingSearchParameters::CopyFrom(
const RoutingSearchParameters& from) {
2706 if (&from ==
this)
return;
2711 bool RoutingSearchParameters::IsInitialized()
const {
2715 void RoutingSearchParameters::InternalSwap(RoutingSearchParameters* other) {
2717 _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
2718 log_tag_.Swap(&other->log_tag_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
2719 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
2720 PROTOBUF_FIELD_OFFSET(RoutingSearchParameters, multi_armed_bandit_compound_operator_exploration_coefficient_)
2721 +
sizeof(RoutingSearchParameters::multi_armed_bandit_compound_operator_exploration_coefficient_)
2722 - PROTOBUF_FIELD_OFFSET(RoutingSearchParameters, local_search_operators_)>(
2723 reinterpret_cast<char*
>(&local_search_operators_),
2724 reinterpret_cast<char*
>(&other->local_search_operators_));
2727 ::PROTOBUF_NAMESPACE_ID::Metadata RoutingSearchParameters::GetMetadata()
const {
2728 return GetMetadataStatic();
2736 static const ::operations_research::ConstraintSolverParameters& solver_parameters(
const RoutingModelParameters* msg);
2739 const ::operations_research::ConstraintSolverParameters&
2741 return *msg->solver_parameters_;
2743 void RoutingModelParameters::clear_solver_parameters() {
2744 if (GetArena() ==
nullptr && solver_parameters_ !=
nullptr) {
2745 delete solver_parameters_;
2747 solver_parameters_ =
nullptr;
2749 RoutingModelParameters::RoutingModelParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena)
2750 : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
2752 RegisterArenaDtor(arena);
2755 RoutingModelParameters::RoutingModelParameters(
const RoutingModelParameters& from)
2756 : ::PROTOBUF_NAMESPACE_ID::Message() {
2757 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2758 if (from._internal_has_solver_parameters()) {
2759 solver_parameters_ = new ::operations_research::ConstraintSolverParameters(*from.solver_parameters_);
2761 solver_parameters_ =
nullptr;
2763 ::memcpy(&reduce_vehicle_cost_model_, &from.reduce_vehicle_cost_model_,
2764 static_cast<size_t>(
reinterpret_cast<char*
>(&max_callback_cache_size_) -
2765 reinterpret_cast<char*
>(&reduce_vehicle_cost_model_)) +
sizeof(max_callback_cache_size_));
2769 void RoutingModelParameters::SharedCtor() {
2771 ::memset(
reinterpret_cast<char*
>(
this) +
static_cast<size_t>(
2772 reinterpret_cast<char*
>(&solver_parameters_) -
reinterpret_cast<char*
>(
this)),
2773 0,
static_cast<size_t>(
reinterpret_cast<char*
>(&max_callback_cache_size_) -
2774 reinterpret_cast<char*
>(&solver_parameters_)) +
sizeof(max_callback_cache_size_));
2777 RoutingModelParameters::~RoutingModelParameters() {
2780 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2783 void RoutingModelParameters::SharedDtor() {
2784 GOOGLE_DCHECK(GetArena() ==
nullptr);
2785 if (
this != internal_default_instance())
delete solver_parameters_;
2788 void RoutingModelParameters::ArenaDtor(
void*
object) {
2789 RoutingModelParameters* _this =
reinterpret_cast< RoutingModelParameters*
>(object);
2792 void RoutingModelParameters::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
2794 void RoutingModelParameters::SetCachedSize(
int size)
const {
2795 _cached_size_.Set(size);
2797 const RoutingModelParameters& RoutingModelParameters::default_instance() {
2799 return *internal_default_instance();
2803 void RoutingModelParameters::Clear() {
2807 (void) cached_has_bits;
2809 if (GetArena() ==
nullptr && solver_parameters_ !=
nullptr) {
2810 delete solver_parameters_;
2812 solver_parameters_ =
nullptr;
2813 ::memset(&reduce_vehicle_cost_model_, 0,
static_cast<size_t>(
2814 reinterpret_cast<char*
>(&max_callback_cache_size_) -
2815 reinterpret_cast<char*
>(&reduce_vehicle_cost_model_)) +
sizeof(max_callback_cache_size_));
2816 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2819 const char* RoutingModelParameters::_InternalParse(
const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
2820 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
2821 while (!ctx->Done(&ptr)) {
2823 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
2829 ptr = ctx->ParseMessage(_internal_mutable_solver_parameters(), ptr);
2831 }
else goto handle_unusual;
2836 reduce_vehicle_cost_model_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2838 }
else goto handle_unusual;
2843 max_callback_cache_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2845 }
else goto handle_unusual;
2849 if ((tag & 7) == 4 || tag == 0) {
2850 ctx->SetLastTag(tag);
2853 ptr = UnknownFieldParse(tag,
2854 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
2856 CHK_(ptr !=
nullptr);
2873 (void) cached_has_bits;
2876 if (this->has_solver_parameters()) {
2877 target = stream->EnsureSpace(target);
2878 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2879 InternalWriteMessage(
2884 if (this->reduce_vehicle_cost_model() != 0) {
2885 target = stream->EnsureSpace(target);
2886 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_reduce_vehicle_cost_model(), target);
2890 if (this->max_callback_cache_size() != 0) {
2891 target = stream->EnsureSpace(target);
2892 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_max_callback_cache_size(), target);
2895 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2896 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
2897 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
2903 size_t RoutingModelParameters::ByteSizeLong()
const {
2905 size_t total_size = 0;
2909 (void) cached_has_bits;
2912 if (this->has_solver_parameters()) {
2914 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2915 *solver_parameters_);
2919 if (this->reduce_vehicle_cost_model() != 0) {
2920 total_size += 1 + 1;
2924 if (this->max_callback_cache_size() != 0) {
2926 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
2927 this->_internal_max_callback_cache_size());
2930 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2931 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
2932 _internal_metadata_, total_size, &_cached_size_);
2934 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
2935 SetCachedSize(cached_size);
2939 void RoutingModelParameters::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2941 GOOGLE_DCHECK_NE(&from,
this);
2942 const RoutingModelParameters* source =
2943 ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<RoutingModelParameters>(
2945 if (source ==
nullptr) {
2947 ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from,
this);
2954 void RoutingModelParameters::MergeFrom(
const RoutingModelParameters& from) {
2956 GOOGLE_DCHECK_NE(&from,
this);
2957 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2959 (void) cached_has_bits;
2961 if (from.has_solver_parameters()) {
2962 _internal_mutable_solver_parameters()->::operations_research::ConstraintSolverParameters::MergeFrom(from._internal_solver_parameters());
2964 if (from.reduce_vehicle_cost_model() != 0) {
2965 _internal_set_reduce_vehicle_cost_model(from._internal_reduce_vehicle_cost_model());
2967 if (from.max_callback_cache_size() != 0) {
2968 _internal_set_max_callback_cache_size(from._internal_max_callback_cache_size());
2972 void RoutingModelParameters::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2974 if (&from ==
this)
return;
2979 void RoutingModelParameters::CopyFrom(
const RoutingModelParameters& from) {
2981 if (&from ==
this)
return;
2986 bool RoutingModelParameters::IsInitialized()
const {
2990 void RoutingModelParameters::InternalSwap(RoutingModelParameters* other) {
2992 _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
2993 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
2994 PROTOBUF_FIELD_OFFSET(RoutingModelParameters, max_callback_cache_size_)
2995 +
sizeof(RoutingModelParameters::max_callback_cache_size_)
2996 - PROTOBUF_FIELD_OFFSET(RoutingModelParameters, solver_parameters_)>(
2997 reinterpret_cast<char*
>(&solver_parameters_),
2998 reinterpret_cast<char*
>(&other->solver_parameters_));
3001 ::PROTOBUF_NAMESPACE_ID::Metadata RoutingModelParameters::GetMetadata()
const {
3002 return GetMetadataStatic();
3008 PROTOBUF_NAMESPACE_OPEN
3010 return Arena::CreateMessageInternal< ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators >(arena);
3013 return Arena::CreateMessageInternal< ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters >(arena);
3016 return Arena::CreateMessageInternal< ::operations_research::RoutingSearchParameters >(arena);
3019 return Arena::CreateMessageInternal< ::operations_research::RoutingModelParameters >(arena);
3021 PROTOBUF_NAMESPACE_CLOSE
3024 #include <google/protobuf/port_undef.inc>
static const ::operations_research::ConstraintSolverParameters & solver_parameters(const RoutingModelParameters *msg)
::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed< RoutingModelParameters > _instance
static const PROTOBUF_NAMESPACE_ID::Duration & lns_time_limit(const RoutingSearchParameters *msg)
static const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators & local_search_operators(const RoutingSearchParameters *msg)
static const PROTOBUF_NAMESPACE_ID::Duration & time_limit(const RoutingSearchParameters *msg)
static const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters & improvement_limit_parameters(const RoutingSearchParameters *msg)
::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed< RoutingSearchParameters_ImprovementSearchLimitParameters > _instance
::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed< RoutingSearchParameters_LocalSearchNeighborhoodOperators > _instance
::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed< RoutingSearchParameters > _instance
SharedTimeLimit * time_limit
The vehicle routing library lets one model and solve generic vehicle routing problems ranging from th...
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * RoutingSearchParameters_SchedulingSolver_descriptor()
class operations_research::RoutingSearchParameters_ImprovementSearchLimitParametersDefaultTypeInternal _RoutingSearchParameters_ImprovementSearchLimitParameters_default_instance_
FirstSolutionStrategy_Value
bool RoutingSearchParameters_SchedulingSolver_IsValid(int value)
class operations_research::RoutingSearchParametersDefaultTypeInternal _RoutingSearchParameters_default_instance_
RoutingSearchParameters_SchedulingSolver
class operations_research::RoutingModelParametersDefaultTypeInternal _RoutingModelParameters_default_instance_
class operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperatorsDefaultTypeInternal _RoutingSearchParameters_LocalSearchNeighborhoodOperators_default_instance_
LocalSearchMetaheuristic_Value
static constexpr ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2futil_2foptional_5fboolean_2eproto
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fenums_2eproto
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
PROTOBUF_NOINLINE ::operations_research::RoutingSearchParameters * Arena::CreateMaybeMessage< ::operations_research::RoutingSearchParameters >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 1 > scc_info_RoutingModelParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
static bool dynamic_init_dummy_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
PROTOBUF_NOINLINE ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters * Arena::CreateMaybeMessage< ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters >(Arena *arena)
static void InitDefaultsscc_info_RoutingSearchParameters_LocalSearchNeighborhoodOperators_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto()
static void InitDefaultsscc_info_RoutingModelParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto()
PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fduration_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 0 > scc_info_Duration_google_2fprotobuf_2fduration_2eproto
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * file_level_enum_descriptors_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto[1]
PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2fsolver_5fparameters_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 0 > scc_info_ConstraintSolverParameters_ortools_2fconstraint_5fsolver_2fsolver_5fparameters_2eproto
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto[4]
static void InitDefaultsscc_info_RoutingSearchParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto()
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * Arena::CreateMaybeMessage< ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators >(Arena *arena)
static void InitDefaultsscc_info_RoutingSearchParameters_ImprovementSearchLimitParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto()
PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 0 > scc_info_RoutingSearchParameters_LocalSearchNeighborhoodOperators_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
PROTOBUF_NOINLINE ::operations_research::RoutingModelParameters * Arena::CreateMaybeMessage< ::operations_research::RoutingModelParameters >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 3 > scc_info_RoutingSearchParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto_once
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable *const descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto_deps[4]
PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo< 0 > scc_info_RoutingSearchParameters_ImprovementSearchLimitParameters_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase *const descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto_sccs[4]
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2fsolver_5fparameters_2eproto