OR-Tools  8.0
routing_parameters.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/constraint_solver/routing_parameters.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3013000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3013000 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
36 #include <google/protobuf/duration.pb.h>
40 // @@protoc_insertion_point(includes)
41 #include <google/protobuf/port_def.inc>
42 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
43 PROTOBUF_NAMESPACE_OPEN
44 namespace internal {
45 class AnyMetadata;
46 } // namespace internal
47 PROTOBUF_NAMESPACE_CLOSE
48 
49 // Internal implementation detail -- do not use these members.
51  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
52  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
53  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
54  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
55  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3]
56  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
57  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
58  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
60 };
61 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
62 namespace operations_research {
63 class RoutingModelParameters;
64 class RoutingModelParametersDefaultTypeInternal;
66 class RoutingSearchParameters;
69 class RoutingSearchParameters_LocalSearchNeighborhoodOperators;
72 } // namespace operations_research
73 PROTOBUF_NAMESPACE_OPEN
74 template<> ::operations_research::RoutingModelParameters* Arena::CreateMaybeMessage<::operations_research::RoutingModelParameters>(Arena*);
75 template<> ::operations_research::RoutingSearchParameters* Arena::CreateMaybeMessage<::operations_research::RoutingSearchParameters>(Arena*);
76 template<> ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* Arena::CreateMaybeMessage<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators>(Arena*);
77 PROTOBUF_NAMESPACE_CLOSE
78 namespace operations_research {
79 
86 };
91 
92 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* RoutingSearchParameters_SchedulingSolver_descriptor();
93 template<typename T>
94 inline const std::string& RoutingSearchParameters_SchedulingSolver_Name(T enum_t_value) {
97  "Incorrect type passed to function RoutingSearchParameters_SchedulingSolver_Name.");
98  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
100 }
102  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RoutingSearchParameters_SchedulingSolver* value) {
103  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<RoutingSearchParameters_SchedulingSolver>(
105 }
106 // ===================================================================
107 
108 class RoutingSearchParameters_LocalSearchNeighborhoodOperators PROTOBUF_FINAL :
109  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators) */ {
110  public:
111  inline RoutingSearchParameters_LocalSearchNeighborhoodOperators() : RoutingSearchParameters_LocalSearchNeighborhoodOperators(nullptr) {}
113 
114  RoutingSearchParameters_LocalSearchNeighborhoodOperators(const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from);
115  RoutingSearchParameters_LocalSearchNeighborhoodOperators(RoutingSearchParameters_LocalSearchNeighborhoodOperators&& from) noexcept
116  : RoutingSearchParameters_LocalSearchNeighborhoodOperators() {
117  *this = ::std::move(from);
118  }
119 
120  inline RoutingSearchParameters_LocalSearchNeighborhoodOperators& operator=(const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from) {
121  CopyFrom(from);
122  return *this;
123  }
124  inline RoutingSearchParameters_LocalSearchNeighborhoodOperators& operator=(RoutingSearchParameters_LocalSearchNeighborhoodOperators&& from) noexcept {
125  if (GetArena() == from.GetArena()) {
126  if (this != &from) InternalSwap(&from);
127  } else {
128  CopyFrom(from);
129  }
130  return *this;
131  }
132 
133  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
134  return GetDescriptor();
135  }
136  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
137  return GetMetadataStatic().descriptor;
138  }
139  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
140  return GetMetadataStatic().reflection;
141  }
142  static const RoutingSearchParameters_LocalSearchNeighborhoodOperators& default_instance();
143 
144  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
145  static inline const RoutingSearchParameters_LocalSearchNeighborhoodOperators* internal_default_instance() {
146  return reinterpret_cast<const RoutingSearchParameters_LocalSearchNeighborhoodOperators*>(
148  }
149  static constexpr int kIndexInFileMessages =
150  0;
151 
152  friend void swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators& a, RoutingSearchParameters_LocalSearchNeighborhoodOperators& b) {
153  a.Swap(&b);
154  }
155  inline void Swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other) {
156  if (other == this) return;
157  if (GetArena() == other->GetArena()) {
158  InternalSwap(other);
159  } else {
160  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
161  }
162  }
163  void UnsafeArenaSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other) {
164  if (other == this) return;
165  GOOGLE_DCHECK(GetArena() == other->GetArena());
166  InternalSwap(other);
167  }
168 
169  // implements Message ----------------------------------------------
170 
171  inline RoutingSearchParameters_LocalSearchNeighborhoodOperators* New() const final {
172  return CreateMaybeMessage<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(nullptr);
173  }
174 
175  RoutingSearchParameters_LocalSearchNeighborhoodOperators* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
176  return CreateMaybeMessage<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(arena);
177  }
178  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
179  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
180  void CopyFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from);
181  void MergeFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from);
182  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
183  bool IsInitialized() const final;
184 
185  size_t ByteSizeLong() const final;
186  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
187  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
188  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
189  int GetCachedSize() const final { return _cached_size_.Get(); }
190 
191  private:
192  inline void SharedCtor();
193  inline void SharedDtor();
194  void SetCachedSize(int size) const final;
195  void InternalSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other);
196  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
197  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
198  return "operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators";
199  }
200  protected:
201  explicit RoutingSearchParameters_LocalSearchNeighborhoodOperators(::PROTOBUF_NAMESPACE_ID::Arena* arena);
202  private:
203  static void ArenaDtor(void* object);
204  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
205  public:
206 
207  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
208  private:
209  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
210  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto);
212  }
213 
214  public:
215 
216  // nested types ----------------------------------------------------
217 
218  // accessors -------------------------------------------------------
219 
220  enum : int {
221  kUseRelocateFieldNumber = 1,
222  kUseRelocatePairFieldNumber = 2,
223  kUseRelocateNeighborsFieldNumber = 3,
224  kUseExchangeFieldNumber = 4,
225  kUseCrossFieldNumber = 5,
226  kUseCrossExchangeFieldNumber = 6,
227  kUseTwoOptFieldNumber = 7,
228  kUseOrOptFieldNumber = 8,
229  kUseLinKernighanFieldNumber = 9,
230  kUseTspOptFieldNumber = 10,
231  kUseMakeActiveFieldNumber = 11,
232  kUseMakeInactiveFieldNumber = 12,
233  kUseMakeChainInactiveFieldNumber = 13,
234  kUseSwapActiveFieldNumber = 14,
235  kUseExtendedSwapActiveFieldNumber = 15,
236  kUsePathLnsFieldNumber = 16,
237  kUseFullPathLnsFieldNumber = 17,
238  kUseTspLnsFieldNumber = 18,
239  kUseInactiveLnsFieldNumber = 19,
240  kUseNodePairSwapActiveFieldNumber = 20,
241  kUseRelocateAndMakeActiveFieldNumber = 21,
242  kUseExchangePairFieldNumber = 22,
243  kUseRelocateExpensiveChainFieldNumber = 23,
244  kUseLightRelocatePairFieldNumber = 24,
245  kUseRelocateSubtripFieldNumber = 25,
246  kUseExchangeSubtripFieldNumber = 26,
247  kUseGlobalCheapestInsertionPathLnsFieldNumber = 27,
248  kUseLocalCheapestInsertionPathLnsFieldNumber = 28,
249  kUseGlobalCheapestInsertionExpensiveChainLnsFieldNumber = 29,
250  kUseLocalCheapestInsertionExpensiveChainLnsFieldNumber = 30,
251  kUseGlobalCheapestInsertionCloseNodesLnsFieldNumber = 31,
252  kUseLocalCheapestInsertionCloseNodesLnsFieldNumber = 32,
253  };
254  // .operations_research.OptionalBoolean use_relocate = 1;
258  private:
259  ::operations_research::OptionalBoolean _internal_use_relocate() const;
260  void _internal_set_use_relocate(::operations_research::OptionalBoolean value);
261  public:
262 
263  // .operations_research.OptionalBoolean use_relocate_pair = 2;
267  private:
268  ::operations_research::OptionalBoolean _internal_use_relocate_pair() const;
269  void _internal_set_use_relocate_pair(::operations_research::OptionalBoolean value);
270  public:
271 
272  // .operations_research.OptionalBoolean use_relocate_neighbors = 3;
276  private:
277  ::operations_research::OptionalBoolean _internal_use_relocate_neighbors() const;
278  void _internal_set_use_relocate_neighbors(::operations_research::OptionalBoolean value);
279  public:
280 
281  // .operations_research.OptionalBoolean use_exchange = 4;
285  private:
286  ::operations_research::OptionalBoolean _internal_use_exchange() const;
287  void _internal_set_use_exchange(::operations_research::OptionalBoolean value);
288  public:
289 
290  // .operations_research.OptionalBoolean use_cross = 5;
294  private:
295  ::operations_research::OptionalBoolean _internal_use_cross() const;
296  void _internal_set_use_cross(::operations_research::OptionalBoolean value);
297  public:
298 
299  // .operations_research.OptionalBoolean use_cross_exchange = 6;
303  private:
304  ::operations_research::OptionalBoolean _internal_use_cross_exchange() const;
305  void _internal_set_use_cross_exchange(::operations_research::OptionalBoolean value);
306  public:
307 
308  // .operations_research.OptionalBoolean use_two_opt = 7;
312  private:
313  ::operations_research::OptionalBoolean _internal_use_two_opt() const;
314  void _internal_set_use_two_opt(::operations_research::OptionalBoolean value);
315  public:
316 
317  // .operations_research.OptionalBoolean use_or_opt = 8;
321  private:
322  ::operations_research::OptionalBoolean _internal_use_or_opt() const;
323  void _internal_set_use_or_opt(::operations_research::OptionalBoolean value);
324  public:
325 
326  // .operations_research.OptionalBoolean use_lin_kernighan = 9;
330  private:
331  ::operations_research::OptionalBoolean _internal_use_lin_kernighan() const;
332  void _internal_set_use_lin_kernighan(::operations_research::OptionalBoolean value);
333  public:
334 
335  // .operations_research.OptionalBoolean use_tsp_opt = 10;
339  private:
340  ::operations_research::OptionalBoolean _internal_use_tsp_opt() const;
341  void _internal_set_use_tsp_opt(::operations_research::OptionalBoolean value);
342  public:
343 
344  // .operations_research.OptionalBoolean use_make_active = 11;
348  private:
349  ::operations_research::OptionalBoolean _internal_use_make_active() const;
350  void _internal_set_use_make_active(::operations_research::OptionalBoolean value);
351  public:
352 
353  // .operations_research.OptionalBoolean use_make_inactive = 12;
357  private:
358  ::operations_research::OptionalBoolean _internal_use_make_inactive() const;
359  void _internal_set_use_make_inactive(::operations_research::OptionalBoolean value);
360  public:
361 
362  // .operations_research.OptionalBoolean use_make_chain_inactive = 13;
366  private:
367  ::operations_research::OptionalBoolean _internal_use_make_chain_inactive() const;
368  void _internal_set_use_make_chain_inactive(::operations_research::OptionalBoolean value);
369  public:
370 
371  // .operations_research.OptionalBoolean use_swap_active = 14;
375  private:
376  ::operations_research::OptionalBoolean _internal_use_swap_active() const;
377  void _internal_set_use_swap_active(::operations_research::OptionalBoolean value);
378  public:
379 
380  // .operations_research.OptionalBoolean use_extended_swap_active = 15;
384  private:
385  ::operations_research::OptionalBoolean _internal_use_extended_swap_active() const;
386  void _internal_set_use_extended_swap_active(::operations_research::OptionalBoolean value);
387  public:
388 
389  // .operations_research.OptionalBoolean use_path_lns = 16;
393  private:
394  ::operations_research::OptionalBoolean _internal_use_path_lns() const;
395  void _internal_set_use_path_lns(::operations_research::OptionalBoolean value);
396  public:
397 
398  // .operations_research.OptionalBoolean use_full_path_lns = 17;
402  private:
403  ::operations_research::OptionalBoolean _internal_use_full_path_lns() const;
404  void _internal_set_use_full_path_lns(::operations_research::OptionalBoolean value);
405  public:
406 
407  // .operations_research.OptionalBoolean use_tsp_lns = 18;
411  private:
412  ::operations_research::OptionalBoolean _internal_use_tsp_lns() const;
413  void _internal_set_use_tsp_lns(::operations_research::OptionalBoolean value);
414  public:
415 
416  // .operations_research.OptionalBoolean use_inactive_lns = 19;
420  private:
421  ::operations_research::OptionalBoolean _internal_use_inactive_lns() const;
422  void _internal_set_use_inactive_lns(::operations_research::OptionalBoolean value);
423  public:
424 
425  // .operations_research.OptionalBoolean use_node_pair_swap_active = 20;
429  private:
430  ::operations_research::OptionalBoolean _internal_use_node_pair_swap_active() const;
431  void _internal_set_use_node_pair_swap_active(::operations_research::OptionalBoolean value);
432  public:
433 
434  // .operations_research.OptionalBoolean use_relocate_and_make_active = 21;
438  private:
439  ::operations_research::OptionalBoolean _internal_use_relocate_and_make_active() const;
440  void _internal_set_use_relocate_and_make_active(::operations_research::OptionalBoolean value);
441  public:
442 
443  // .operations_research.OptionalBoolean use_exchange_pair = 22;
447  private:
448  ::operations_research::OptionalBoolean _internal_use_exchange_pair() const;
449  void _internal_set_use_exchange_pair(::operations_research::OptionalBoolean value);
450  public:
451 
452  // .operations_research.OptionalBoolean use_relocate_expensive_chain = 23;
456  private:
457  ::operations_research::OptionalBoolean _internal_use_relocate_expensive_chain() const;
458  void _internal_set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value);
459  public:
460 
461  // .operations_research.OptionalBoolean use_light_relocate_pair = 24;
465  private:
466  ::operations_research::OptionalBoolean _internal_use_light_relocate_pair() const;
467  void _internal_set_use_light_relocate_pair(::operations_research::OptionalBoolean value);
468  public:
469 
470  // .operations_research.OptionalBoolean use_relocate_subtrip = 25;
474  private:
475  ::operations_research::OptionalBoolean _internal_use_relocate_subtrip() const;
476  void _internal_set_use_relocate_subtrip(::operations_research::OptionalBoolean value);
477  public:
478 
479  // .operations_research.OptionalBoolean use_exchange_subtrip = 26;
483  private:
484  ::operations_research::OptionalBoolean _internal_use_exchange_subtrip() const;
485  void _internal_set_use_exchange_subtrip(::operations_research::OptionalBoolean value);
486  public:
487 
488  // .operations_research.OptionalBoolean use_global_cheapest_insertion_path_lns = 27;
492  private:
493  ::operations_research::OptionalBoolean _internal_use_global_cheapest_insertion_path_lns() const;
494  void _internal_set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value);
495  public:
496 
497  // .operations_research.OptionalBoolean use_local_cheapest_insertion_path_lns = 28;
501  private:
502  ::operations_research::OptionalBoolean _internal_use_local_cheapest_insertion_path_lns() const;
503  void _internal_set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value);
504  public:
505 
506  // .operations_research.OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns = 29;
510  private:
511  ::operations_research::OptionalBoolean _internal_use_global_cheapest_insertion_expensive_chain_lns() const;
512  void _internal_set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value);
513  public:
514 
515  // .operations_research.OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns = 30;
519  private:
520  ::operations_research::OptionalBoolean _internal_use_local_cheapest_insertion_expensive_chain_lns() const;
521  void _internal_set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value);
522  public:
523 
524  // .operations_research.OptionalBoolean use_global_cheapest_insertion_close_nodes_lns = 31;
528  private:
529  ::operations_research::OptionalBoolean _internal_use_global_cheapest_insertion_close_nodes_lns() const;
530  void _internal_set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value);
531  public:
532 
533  // .operations_research.OptionalBoolean use_local_cheapest_insertion_close_nodes_lns = 32;
537  private:
538  ::operations_research::OptionalBoolean _internal_use_local_cheapest_insertion_close_nodes_lns() const;
539  void _internal_set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value);
540  public:
541 
542  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
543  private:
544  class _Internal;
545 
546  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
547  typedef void InternalArenaConstructable_;
548  typedef void DestructorSkippable_;
549  int use_relocate_;
550  int use_relocate_pair_;
551  int use_relocate_neighbors_;
552  int use_exchange_;
553  int use_cross_;
554  int use_cross_exchange_;
555  int use_two_opt_;
556  int use_or_opt_;
557  int use_lin_kernighan_;
558  int use_tsp_opt_;
559  int use_make_active_;
560  int use_make_inactive_;
561  int use_make_chain_inactive_;
562  int use_swap_active_;
563  int use_extended_swap_active_;
564  int use_path_lns_;
565  int use_full_path_lns_;
566  int use_tsp_lns_;
567  int use_inactive_lns_;
568  int use_node_pair_swap_active_;
569  int use_relocate_and_make_active_;
570  int use_exchange_pair_;
571  int use_relocate_expensive_chain_;
572  int use_light_relocate_pair_;
573  int use_relocate_subtrip_;
574  int use_exchange_subtrip_;
575  int use_global_cheapest_insertion_path_lns_;
576  int use_local_cheapest_insertion_path_lns_;
577  int use_global_cheapest_insertion_expensive_chain_lns_;
578  int use_local_cheapest_insertion_expensive_chain_lns_;
579  int use_global_cheapest_insertion_close_nodes_lns_;
580  int use_local_cheapest_insertion_close_nodes_lns_;
581  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
582  friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
583 };
584 // -------------------------------------------------------------------
585 
586 class RoutingSearchParameters PROTOBUF_FINAL :
587  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.RoutingSearchParameters) */ {
588  public:
589  inline RoutingSearchParameters() : RoutingSearchParameters(nullptr) {}
591 
592  RoutingSearchParameters(const RoutingSearchParameters& from);
593  RoutingSearchParameters(RoutingSearchParameters&& from) noexcept
594  : RoutingSearchParameters() {
595  *this = ::std::move(from);
596  }
597 
598  inline RoutingSearchParameters& operator=(const RoutingSearchParameters& from) {
599  CopyFrom(from);
600  return *this;
601  }
602  inline RoutingSearchParameters& operator=(RoutingSearchParameters&& from) noexcept {
603  if (GetArena() == from.GetArena()) {
604  if (this != &from) InternalSwap(&from);
605  } else {
606  CopyFrom(from);
607  }
608  return *this;
609  }
610 
611  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
612  return GetDescriptor();
613  }
614  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
615  return GetMetadataStatic().descriptor;
616  }
617  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
618  return GetMetadataStatic().reflection;
619  }
620  static const RoutingSearchParameters& default_instance();
621 
622  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
623  static inline const RoutingSearchParameters* internal_default_instance() {
624  return reinterpret_cast<const RoutingSearchParameters*>(
626  }
627  static constexpr int kIndexInFileMessages =
628  1;
629 
630  friend void swap(RoutingSearchParameters& a, RoutingSearchParameters& b) {
631  a.Swap(&b);
632  }
633  inline void Swap(RoutingSearchParameters* other) {
634  if (other == this) return;
635  if (GetArena() == other->GetArena()) {
636  InternalSwap(other);
637  } else {
638  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
639  }
640  }
641  void UnsafeArenaSwap(RoutingSearchParameters* other) {
642  if (other == this) return;
643  GOOGLE_DCHECK(GetArena() == other->GetArena());
644  InternalSwap(other);
645  }
646 
647  // implements Message ----------------------------------------------
648 
649  inline RoutingSearchParameters* New() const final {
650  return CreateMaybeMessage<RoutingSearchParameters>(nullptr);
651  }
652 
653  RoutingSearchParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
654  return CreateMaybeMessage<RoutingSearchParameters>(arena);
655  }
656  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
657  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
658  void CopyFrom(const RoutingSearchParameters& from);
659  void MergeFrom(const RoutingSearchParameters& from);
660  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
661  bool IsInitialized() const final;
662 
663  size_t ByteSizeLong() const final;
664  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
665  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
666  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
667  int GetCachedSize() const final { return _cached_size_.Get(); }
668 
669  private:
670  inline void SharedCtor();
671  inline void SharedDtor();
672  void SetCachedSize(int size) const final;
673  void InternalSwap(RoutingSearchParameters* other);
674  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
675  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
676  return "operations_research.RoutingSearchParameters";
677  }
678  protected:
679  explicit RoutingSearchParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
680  private:
681  static void ArenaDtor(void* object);
682  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
683  public:
684 
685  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
686  private:
687  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
688  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto);
690  }
691 
692  public:
693 
694  // nested types ----------------------------------------------------
695 
696  typedef RoutingSearchParameters_LocalSearchNeighborhoodOperators LocalSearchNeighborhoodOperators;
697 
699  static constexpr SchedulingSolver UNSET =
701  static constexpr SchedulingSolver GLOP =
703  static constexpr SchedulingSolver CP_SAT =
705  static inline bool SchedulingSolver_IsValid(int value) {
707  }
708  static constexpr SchedulingSolver SchedulingSolver_MIN =
710  static constexpr SchedulingSolver SchedulingSolver_MAX =
712  static constexpr int SchedulingSolver_ARRAYSIZE =
714  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
717  }
718  template<typename T>
719  static inline const std::string& SchedulingSolver_Name(T enum_t_value) {
722  "Incorrect type passed to function SchedulingSolver_Name.");
724  }
725  static inline bool SchedulingSolver_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
728  }
729 
730  // accessors -------------------------------------------------------
731 
732  enum : int {
733  kLogTagFieldNumber = 36,
734  kLocalSearchOperatorsFieldNumber = 3,
735  kTimeLimitFieldNumber = 9,
736  kLnsTimeLimitFieldNumber = 10,
737  kFirstSolutionStrategyFieldNumber = 1,
738  kLocalSearchMetaheuristicFieldNumber = 4,
739  kGuidedLocalSearchLambdaCoefficientFieldNumber = 5,
740  kOptimizationStepFieldNumber = 7,
741  kSolutionLimitFieldNumber = 8,
742  kUseDepthFirstSearchFieldNumber = 6,
743  kUseFullPropagationFieldNumber = 11,
744  kLogSearchFieldNumber = 13,
745  kUseUnfilteredFirstSolutionStrategyFieldNumber = 2,
746  kSavingsAddReverseArcsFieldNumber = 15,
747  kSavingsParallelRoutesFieldNumber = 19,
748  kChristofidesUseMinimumMatchingFieldNumber = 30,
749  kSavingsNeighborsRatioFieldNumber = 14,
750  kCheapestInsertionFarthestSeedsRatioFieldNumber = 16,
751  kSavingsArcCoefficientFieldNumber = 18,
752  kNumberOfSolutionsToCollectFieldNumber = 17,
753  kRelocateExpensiveChainNumArcsToConsiderFieldNumber = 20,
754  kCheapestInsertionFirstSolutionNeighborsRatioFieldNumber = 21,
755  kLogCostScalingFactorFieldNumber = 22,
756  kSavingsMaxMemoryUsageBytesFieldNumber = 23,
757  kUseCpSatFieldNumber = 27,
758  kUseCpFieldNumber = 28,
759  kLogCostOffsetFieldNumber = 29,
760  kCheapestInsertionLsOperatorNeighborsRatioFieldNumber = 31,
761  kHeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber = 32,
762  kContinuousSchedulingSolverFieldNumber = 33,
763  kMixedIntegerSchedulingSolverFieldNumber = 34,
764  kHeuristicCloseNodesLnsNumNodesFieldNumber = 35,
765  };
766  // string log_tag = 36;
768  const std::string& log_tag() const;
769  void set_log_tag(const std::string& value);
770  void set_log_tag(std::string&& value);
771  void set_log_tag(const char* value);
772  void set_log_tag(const char* value, size_t size);
773  std::string* mutable_log_tag();
774  std::string* release_log_tag();
775  void set_allocated_log_tag(std::string* log_tag);
776  private:
777  const std::string& _internal_log_tag() const;
778  void _internal_set_log_tag(const std::string& value);
779  std::string* _internal_mutable_log_tag();
780  public:
781 
782  // .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
784  private:
785  bool _internal_has_local_search_operators() const;
786  public:
788  const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& local_search_operators() const;
789  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* release_local_search_operators();
790  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* mutable_local_search_operators();
792  private:
793  const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& _internal_local_search_operators() const;
794  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* _internal_mutable_local_search_operators();
795  public:
798  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* unsafe_arena_release_local_search_operators();
799 
800  // .google.protobuf.Duration time_limit = 9;
801  bool has_time_limit() const;
802  private:
803  bool _internal_has_time_limit() const;
804  public:
806  const PROTOBUF_NAMESPACE_ID::Duration& time_limit() const;
807  PROTOBUF_NAMESPACE_ID::Duration* release_time_limit();
808  PROTOBUF_NAMESPACE_ID::Duration* mutable_time_limit();
809  void set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration* time_limit);
810  private:
811  const PROTOBUF_NAMESPACE_ID::Duration& _internal_time_limit() const;
812  PROTOBUF_NAMESPACE_ID::Duration* _internal_mutable_time_limit();
813  public:
815  PROTOBUF_NAMESPACE_ID::Duration* time_limit);
816  PROTOBUF_NAMESPACE_ID::Duration* unsafe_arena_release_time_limit();
817 
818  // .google.protobuf.Duration lns_time_limit = 10;
819  bool has_lns_time_limit() const;
820  private:
821  bool _internal_has_lns_time_limit() const;
822  public:
824  const PROTOBUF_NAMESPACE_ID::Duration& lns_time_limit() const;
825  PROTOBUF_NAMESPACE_ID::Duration* release_lns_time_limit();
826  PROTOBUF_NAMESPACE_ID::Duration* mutable_lns_time_limit();
827  void set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit);
828  private:
829  const PROTOBUF_NAMESPACE_ID::Duration& _internal_lns_time_limit() const;
830  PROTOBUF_NAMESPACE_ID::Duration* _internal_mutable_lns_time_limit();
831  public:
833  PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit);
834  PROTOBUF_NAMESPACE_ID::Duration* unsafe_arena_release_lns_time_limit();
835 
836  // .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
840  private:
841  ::operations_research::FirstSolutionStrategy_Value _internal_first_solution_strategy() const;
842  void _internal_set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value);
843  public:
844 
845  // .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
849  private:
850  ::operations_research::LocalSearchMetaheuristic_Value _internal_local_search_metaheuristic() const;
851  void _internal_set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value);
852  public:
853 
854  // double guided_local_search_lambda_coefficient = 5;
858  private:
859  double _internal_guided_local_search_lambda_coefficient() const;
860  void _internal_set_guided_local_search_lambda_coefficient(double value);
861  public:
862 
863  // double optimization_step = 7;
865  double optimization_step() const;
867  private:
868  double _internal_optimization_step() const;
869  void _internal_set_optimization_step(double value);
870  public:
871 
872  // int64 solution_limit = 8;
876  private:
877  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution_limit() const;
878  void _internal_set_solution_limit(::PROTOBUF_NAMESPACE_ID::int64 value);
879  public:
880 
881  // bool use_depth_first_search = 6;
885  private:
886  bool _internal_use_depth_first_search() const;
887  void _internal_set_use_depth_first_search(bool value);
888  public:
889 
890  // bool use_full_propagation = 11;
892  bool use_full_propagation() const;
894  private:
895  bool _internal_use_full_propagation() const;
896  void _internal_set_use_full_propagation(bool value);
897  public:
898 
899  // bool log_search = 13;
901  bool log_search() const;
902  void set_log_search(bool value);
903  private:
904  bool _internal_log_search() const;
905  void _internal_set_log_search(bool value);
906  public:
907 
908  // bool use_unfiltered_first_solution_strategy = 2;
912  private:
913  bool _internal_use_unfiltered_first_solution_strategy() const;
914  void _internal_set_use_unfiltered_first_solution_strategy(bool value);
915  public:
916 
917  // bool savings_add_reverse_arcs = 15;
921  private:
922  bool _internal_savings_add_reverse_arcs() const;
923  void _internal_set_savings_add_reverse_arcs(bool value);
924  public:
925 
926  // bool savings_parallel_routes = 19;
930  private:
931  bool _internal_savings_parallel_routes() const;
932  void _internal_set_savings_parallel_routes(bool value);
933  public:
934 
935  // bool christofides_use_minimum_matching = 30;
939  private:
940  bool _internal_christofides_use_minimum_matching() const;
941  void _internal_set_christofides_use_minimum_matching(bool value);
942  public:
943 
944  // double savings_neighbors_ratio = 14;
946  double savings_neighbors_ratio() const;
948  private:
949  double _internal_savings_neighbors_ratio() const;
950  void _internal_set_savings_neighbors_ratio(double value);
951  public:
952 
953  // double cheapest_insertion_farthest_seeds_ratio = 16;
957  private:
958  double _internal_cheapest_insertion_farthest_seeds_ratio() const;
959  void _internal_set_cheapest_insertion_farthest_seeds_ratio(double value);
960  public:
961 
962  // double savings_arc_coefficient = 18;
964  double savings_arc_coefficient() const;
966  private:
967  double _internal_savings_arc_coefficient() const;
968  void _internal_set_savings_arc_coefficient(double value);
969  public:
970 
971  // int32 number_of_solutions_to_collect = 17;
975  private:
976  ::PROTOBUF_NAMESPACE_ID::int32 _internal_number_of_solutions_to_collect() const;
977  void _internal_set_number_of_solutions_to_collect(::PROTOBUF_NAMESPACE_ID::int32 value);
978  public:
979 
980  // int32 relocate_expensive_chain_num_arcs_to_consider = 20;
984  private:
985  ::PROTOBUF_NAMESPACE_ID::int32 _internal_relocate_expensive_chain_num_arcs_to_consider() const;
986  void _internal_set_relocate_expensive_chain_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value);
987  public:
988 
989  // double cheapest_insertion_first_solution_neighbors_ratio = 21;
993  private:
994  double _internal_cheapest_insertion_first_solution_neighbors_ratio() const;
995  void _internal_set_cheapest_insertion_first_solution_neighbors_ratio(double value);
996  public:
997 
998  // double log_cost_scaling_factor = 22;
1000  double log_cost_scaling_factor() const;
1002  private:
1003  double _internal_log_cost_scaling_factor() const;
1004  void _internal_set_log_cost_scaling_factor(double value);
1005  public:
1006 
1007  // double savings_max_memory_usage_bytes = 23;
1011  private:
1012  double _internal_savings_max_memory_usage_bytes() const;
1013  void _internal_set_savings_max_memory_usage_bytes(double value);
1014  public:
1015 
1016  // .operations_research.OptionalBoolean use_cp_sat = 27;
1020  private:
1021  ::operations_research::OptionalBoolean _internal_use_cp_sat() const;
1022  void _internal_set_use_cp_sat(::operations_research::OptionalBoolean value);
1023  public:
1024 
1025  // .operations_research.OptionalBoolean use_cp = 28;
1029  private:
1030  ::operations_research::OptionalBoolean _internal_use_cp() const;
1031  void _internal_set_use_cp(::operations_research::OptionalBoolean value);
1032  public:
1033 
1034  // double log_cost_offset = 29;
1036  double log_cost_offset() const;
1038  private:
1039  double _internal_log_cost_offset() const;
1040  void _internal_set_log_cost_offset(double value);
1041  public:
1042 
1043  // double cheapest_insertion_ls_operator_neighbors_ratio = 31;
1047  private:
1048  double _internal_cheapest_insertion_ls_operator_neighbors_ratio() const;
1049  void _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(double value);
1050  public:
1051 
1052  // int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
1056  private:
1057  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heuristic_expensive_chain_lns_num_arcs_to_consider() const;
1058  void _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value);
1059  public:
1060 
1061  // .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
1065  private:
1066  ::operations_research::RoutingSearchParameters_SchedulingSolver _internal_continuous_scheduling_solver() const;
1067  void _internal_set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value);
1068  public:
1069 
1070  // .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
1074  private:
1075  ::operations_research::RoutingSearchParameters_SchedulingSolver _internal_mixed_integer_scheduling_solver() const;
1076  void _internal_set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value);
1077  public:
1078 
1079  // int32 heuristic_close_nodes_lns_num_nodes = 35;
1083  private:
1084  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heuristic_close_nodes_lns_num_nodes() const;
1085  void _internal_set_heuristic_close_nodes_lns_num_nodes(::PROTOBUF_NAMESPACE_ID::int32 value);
1086  public:
1087 
1088  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters)
1089  private:
1090  class _Internal;
1091 
1092  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1093  typedef void InternalArenaConstructable_;
1094  typedef void DestructorSkippable_;
1095  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_tag_;
1096  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators_;
1097  PROTOBUF_NAMESPACE_ID::Duration* time_limit_;
1098  PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit_;
1099  int first_solution_strategy_;
1100  int local_search_metaheuristic_;
1101  double guided_local_search_lambda_coefficient_;
1102  double optimization_step_;
1103  ::PROTOBUF_NAMESPACE_ID::int64 solution_limit_;
1104  bool use_depth_first_search_;
1105  bool use_full_propagation_;
1106  bool log_search_;
1107  bool use_unfiltered_first_solution_strategy_;
1108  bool savings_add_reverse_arcs_;
1109  bool savings_parallel_routes_;
1110  bool christofides_use_minimum_matching_;
1111  double savings_neighbors_ratio_;
1112  double cheapest_insertion_farthest_seeds_ratio_;
1113  double savings_arc_coefficient_;
1114  ::PROTOBUF_NAMESPACE_ID::int32 number_of_solutions_to_collect_;
1115  ::PROTOBUF_NAMESPACE_ID::int32 relocate_expensive_chain_num_arcs_to_consider_;
1116  double cheapest_insertion_first_solution_neighbors_ratio_;
1117  double log_cost_scaling_factor_;
1118  double savings_max_memory_usage_bytes_;
1119  int use_cp_sat_;
1120  int use_cp_;
1121  double log_cost_offset_;
1122  double cheapest_insertion_ls_operator_neighbors_ratio_;
1123  ::PROTOBUF_NAMESPACE_ID::int32 heuristic_expensive_chain_lns_num_arcs_to_consider_;
1124  int continuous_scheduling_solver_;
1125  int mixed_integer_scheduling_solver_;
1126  ::PROTOBUF_NAMESPACE_ID::int32 heuristic_close_nodes_lns_num_nodes_;
1127  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1128  friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1129 };
1130 // -------------------------------------------------------------------
1131 
1132 class RoutingModelParameters PROTOBUF_FINAL :
1133  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.RoutingModelParameters) */ {
1134  public:
1135  inline RoutingModelParameters() : RoutingModelParameters(nullptr) {}
1137 
1138  RoutingModelParameters(const RoutingModelParameters& from);
1139  RoutingModelParameters(RoutingModelParameters&& from) noexcept
1140  : RoutingModelParameters() {
1141  *this = ::std::move(from);
1142  }
1143 
1144  inline RoutingModelParameters& operator=(const RoutingModelParameters& from) {
1145  CopyFrom(from);
1146  return *this;
1147  }
1148  inline RoutingModelParameters& operator=(RoutingModelParameters&& from) noexcept {
1149  if (GetArena() == from.GetArena()) {
1150  if (this != &from) InternalSwap(&from);
1151  } else {
1152  CopyFrom(from);
1153  }
1154  return *this;
1155  }
1156 
1157  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1158  return GetDescriptor();
1159  }
1160  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1161  return GetMetadataStatic().descriptor;
1162  }
1163  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1164  return GetMetadataStatic().reflection;
1165  }
1166  static const RoutingModelParameters& default_instance();
1167 
1168  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1169  static inline const RoutingModelParameters* internal_default_instance() {
1170  return reinterpret_cast<const RoutingModelParameters*>(
1172  }
1173  static constexpr int kIndexInFileMessages =
1174  2;
1175 
1176  friend void swap(RoutingModelParameters& a, RoutingModelParameters& b) {
1177  a.Swap(&b);
1178  }
1179  inline void Swap(RoutingModelParameters* other) {
1180  if (other == this) return;
1181  if (GetArena() == other->GetArena()) {
1182  InternalSwap(other);
1183  } else {
1184  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1185  }
1186  }
1187  void UnsafeArenaSwap(RoutingModelParameters* other) {
1188  if (other == this) return;
1189  GOOGLE_DCHECK(GetArena() == other->GetArena());
1190  InternalSwap(other);
1191  }
1192 
1193  // implements Message ----------------------------------------------
1194 
1195  inline RoutingModelParameters* New() const final {
1196  return CreateMaybeMessage<RoutingModelParameters>(nullptr);
1197  }
1198 
1199  RoutingModelParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1200  return CreateMaybeMessage<RoutingModelParameters>(arena);
1201  }
1202  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1203  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1204  void CopyFrom(const RoutingModelParameters& from);
1205  void MergeFrom(const RoutingModelParameters& from);
1206  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1207  bool IsInitialized() const final;
1208 
1209  size_t ByteSizeLong() const final;
1210  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1211  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1212  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1213  int GetCachedSize() const final { return _cached_size_.Get(); }
1214 
1215  private:
1216  inline void SharedCtor();
1217  inline void SharedDtor();
1218  void SetCachedSize(int size) const final;
1219  void InternalSwap(RoutingModelParameters* other);
1220  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1221  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1222  return "operations_research.RoutingModelParameters";
1223  }
1224  protected:
1225  explicit RoutingModelParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1226  private:
1227  static void ArenaDtor(void* object);
1228  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1229  public:
1230 
1231  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1232  private:
1233  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1234  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto);
1236  }
1237 
1238  public:
1239 
1240  // nested types ----------------------------------------------------
1241 
1242  // accessors -------------------------------------------------------
1243 
1244  enum : int {
1245  kSolverParametersFieldNumber = 1,
1246  kReduceVehicleCostModelFieldNumber = 2,
1247  kMaxCallbackCacheSizeFieldNumber = 3,
1248  };
1249  // .operations_research.ConstraintSolverParameters solver_parameters = 1;
1251  private:
1252  bool _internal_has_solver_parameters() const;
1253  public:
1255  const ::operations_research::ConstraintSolverParameters& solver_parameters() const;
1256  ::operations_research::ConstraintSolverParameters* release_solver_parameters();
1257  ::operations_research::ConstraintSolverParameters* mutable_solver_parameters();
1259  private:
1260  const ::operations_research::ConstraintSolverParameters& _internal_solver_parameters() const;
1261  ::operations_research::ConstraintSolverParameters* _internal_mutable_solver_parameters();
1262  public:
1265  ::operations_research::ConstraintSolverParameters* unsafe_arena_release_solver_parameters();
1266 
1267  // bool reduce_vehicle_cost_model = 2;
1271  private:
1272  bool _internal_reduce_vehicle_cost_model() const;
1273  void _internal_set_reduce_vehicle_cost_model(bool value);
1274  public:
1275 
1276  // int32 max_callback_cache_size = 3;
1280  private:
1281  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_callback_cache_size() const;
1282  void _internal_set_max_callback_cache_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1283  public:
1284 
1285  // @@protoc_insertion_point(class_scope:operations_research.RoutingModelParameters)
1286  private:
1287  class _Internal;
1288 
1289  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1290  typedef void InternalArenaConstructable_;
1291  typedef void DestructorSkippable_;
1292  ::operations_research::ConstraintSolverParameters* solver_parameters_;
1293  bool reduce_vehicle_cost_model_;
1294  ::PROTOBUF_NAMESPACE_ID::int32 max_callback_cache_size_;
1295  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1296  friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1297 };
1298 // ===================================================================
1299 
1300 
1301 // ===================================================================
1302 
1303 #ifdef __GNUC__
1304  #pragma GCC diagnostic push
1305  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1306 #endif // __GNUC__
1307 // RoutingSearchParameters_LocalSearchNeighborhoodOperators
1308 
1309 // .operations_research.OptionalBoolean use_relocate = 1;
1310 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate() {
1311  use_relocate_ = 0;
1312 }
1313 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate() const {
1314  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_);
1315 }
1316 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate() const {
1317  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate)
1318  return _internal_use_relocate();
1319 }
1320 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate(::operations_research::OptionalBoolean value) {
1321 
1322  use_relocate_ = value;
1323 }
1324 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate(::operations_research::OptionalBoolean value) {
1325  _internal_set_use_relocate(value);
1326  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate)
1327 }
1328 
1329 // .operations_research.OptionalBoolean use_relocate_pair = 2;
1330 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_pair() {
1331  use_relocate_pair_ = 0;
1332 }
1333 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_pair() const {
1334  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_pair_);
1335 }
1336 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_pair() const {
1337  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_pair)
1338  return _internal_use_relocate_pair();
1339 }
1340 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_pair(::operations_research::OptionalBoolean value) {
1341 
1342  use_relocate_pair_ = value;
1343 }
1344 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate_pair(::operations_research::OptionalBoolean value) {
1345  _internal_set_use_relocate_pair(value);
1346  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_pair)
1347 }
1348 
1349 // .operations_research.OptionalBoolean use_light_relocate_pair = 24;
1350 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_light_relocate_pair() {
1351  use_light_relocate_pair_ = 0;
1352 }
1353 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_light_relocate_pair() const {
1354  return static_cast< ::operations_research::OptionalBoolean >(use_light_relocate_pair_);
1355 }
1356 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_light_relocate_pair() const {
1357  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_light_relocate_pair)
1358  return _internal_use_light_relocate_pair();
1359 }
1360 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_light_relocate_pair(::operations_research::OptionalBoolean value) {
1361 
1362  use_light_relocate_pair_ = value;
1363 }
1364 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_light_relocate_pair(::operations_research::OptionalBoolean value) {
1365  _internal_set_use_light_relocate_pair(value);
1366  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_light_relocate_pair)
1367 }
1368 
1369 // .operations_research.OptionalBoolean use_relocate_neighbors = 3;
1370 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_neighbors() {
1371  use_relocate_neighbors_ = 0;
1372 }
1373 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_neighbors() const {
1374  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_neighbors_);
1375 }
1376 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_neighbors() const {
1377  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_neighbors)
1378  return _internal_use_relocate_neighbors();
1379 }
1380 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_neighbors(::operations_research::OptionalBoolean value) {
1381 
1382  use_relocate_neighbors_ = value;
1383 }
1384 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate_neighbors(::operations_research::OptionalBoolean value) {
1385  _internal_set_use_relocate_neighbors(value);
1386  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_neighbors)
1387 }
1388 
1389 // .operations_research.OptionalBoolean use_relocate_subtrip = 25;
1390 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_subtrip() {
1391  use_relocate_subtrip_ = 0;
1392 }
1393 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_subtrip() const {
1394  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_subtrip_);
1395 }
1396 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_subtrip() const {
1397  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_subtrip)
1398  return _internal_use_relocate_subtrip();
1399 }
1400 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_subtrip(::operations_research::OptionalBoolean value) {
1401 
1402  use_relocate_subtrip_ = value;
1403 }
1404 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate_subtrip(::operations_research::OptionalBoolean value) {
1405  _internal_set_use_relocate_subtrip(value);
1406  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_subtrip)
1407 }
1408 
1409 // .operations_research.OptionalBoolean use_exchange = 4;
1410 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange() {
1411  use_exchange_ = 0;
1412 }
1413 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange() const {
1414  return static_cast< ::operations_research::OptionalBoolean >(use_exchange_);
1415 }
1416 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_exchange() const {
1417  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange)
1418  return _internal_use_exchange();
1419 }
1420 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_exchange(::operations_research::OptionalBoolean value) {
1421 
1422  use_exchange_ = value;
1423 }
1424 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_exchange(::operations_research::OptionalBoolean value) {
1425  _internal_set_use_exchange(value);
1426  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange)
1427 }
1428 
1429 // .operations_research.OptionalBoolean use_exchange_pair = 22;
1430 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange_pair() {
1431  use_exchange_pair_ = 0;
1432 }
1433 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_pair() const {
1434  return static_cast< ::operations_research::OptionalBoolean >(use_exchange_pair_);
1435 }
1436 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_exchange_pair() const {
1437  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange_pair)
1438  return _internal_use_exchange_pair();
1439 }
1440 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_exchange_pair(::operations_research::OptionalBoolean value) {
1441 
1442  use_exchange_pair_ = value;
1443 }
1444 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_exchange_pair(::operations_research::OptionalBoolean value) {
1445  _internal_set_use_exchange_pair(value);
1446  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange_pair)
1447 }
1448 
1449 // .operations_research.OptionalBoolean use_exchange_subtrip = 26;
1450 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange_subtrip() {
1451  use_exchange_subtrip_ = 0;
1452 }
1453 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_subtrip() const {
1454  return static_cast< ::operations_research::OptionalBoolean >(use_exchange_subtrip_);
1455 }
1456 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_exchange_subtrip() const {
1457  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange_subtrip)
1458  return _internal_use_exchange_subtrip();
1459 }
1460 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_exchange_subtrip(::operations_research::OptionalBoolean value) {
1461 
1462  use_exchange_subtrip_ = value;
1463 }
1464 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_exchange_subtrip(::operations_research::OptionalBoolean value) {
1465  _internal_set_use_exchange_subtrip(value);
1466  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_exchange_subtrip)
1467 }
1468 
1469 // .operations_research.OptionalBoolean use_cross = 5;
1470 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_cross() {
1471  use_cross_ = 0;
1472 }
1473 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_cross() const {
1474  return static_cast< ::operations_research::OptionalBoolean >(use_cross_);
1475 }
1476 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_cross() const {
1477  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_cross)
1478  return _internal_use_cross();
1479 }
1480 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_cross(::operations_research::OptionalBoolean value) {
1481 
1482  use_cross_ = value;
1483 }
1484 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_cross(::operations_research::OptionalBoolean value) {
1485  _internal_set_use_cross(value);
1486  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_cross)
1487 }
1488 
1489 // .operations_research.OptionalBoolean use_cross_exchange = 6;
1490 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_cross_exchange() {
1491  use_cross_exchange_ = 0;
1492 }
1493 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_cross_exchange() const {
1494  return static_cast< ::operations_research::OptionalBoolean >(use_cross_exchange_);
1495 }
1496 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_cross_exchange() const {
1497  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_cross_exchange)
1498  return _internal_use_cross_exchange();
1499 }
1500 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_cross_exchange(::operations_research::OptionalBoolean value) {
1501 
1502  use_cross_exchange_ = value;
1503 }
1504 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_cross_exchange(::operations_research::OptionalBoolean value) {
1505  _internal_set_use_cross_exchange(value);
1506  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_cross_exchange)
1507 }
1508 
1509 // .operations_research.OptionalBoolean use_relocate_expensive_chain = 23;
1510 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_expensive_chain() {
1511  use_relocate_expensive_chain_ = 0;
1512 }
1513 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_expensive_chain() const {
1514  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_expensive_chain_);
1515 }
1516 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_expensive_chain() const {
1517  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_expensive_chain)
1518  return _internal_use_relocate_expensive_chain();
1519 }
1520 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value) {
1521 
1522  use_relocate_expensive_chain_ = value;
1523 }
1524 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value) {
1525  _internal_set_use_relocate_expensive_chain(value);
1526  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_expensive_chain)
1527 }
1528 
1529 // .operations_research.OptionalBoolean use_two_opt = 7;
1530 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_two_opt() {
1531  use_two_opt_ = 0;
1532 }
1533 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_two_opt() const {
1534  return static_cast< ::operations_research::OptionalBoolean >(use_two_opt_);
1535 }
1536 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_two_opt() const {
1537  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_two_opt)
1538  return _internal_use_two_opt();
1539 }
1540 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_two_opt(::operations_research::OptionalBoolean value) {
1541 
1542  use_two_opt_ = value;
1543 }
1544 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_two_opt(::operations_research::OptionalBoolean value) {
1545  _internal_set_use_two_opt(value);
1546  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_two_opt)
1547 }
1548 
1549 // .operations_research.OptionalBoolean use_or_opt = 8;
1550 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_or_opt() {
1551  use_or_opt_ = 0;
1552 }
1553 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_or_opt() const {
1554  return static_cast< ::operations_research::OptionalBoolean >(use_or_opt_);
1555 }
1556 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_or_opt() const {
1557  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_or_opt)
1558  return _internal_use_or_opt();
1559 }
1560 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_or_opt(::operations_research::OptionalBoolean value) {
1561 
1562  use_or_opt_ = value;
1563 }
1564 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_or_opt(::operations_research::OptionalBoolean value) {
1565  _internal_set_use_or_opt(value);
1566  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_or_opt)
1567 }
1568 
1569 // .operations_research.OptionalBoolean use_lin_kernighan = 9;
1570 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_lin_kernighan() {
1571  use_lin_kernighan_ = 0;
1572 }
1573 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_lin_kernighan() const {
1574  return static_cast< ::operations_research::OptionalBoolean >(use_lin_kernighan_);
1575 }
1576 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_lin_kernighan() const {
1577  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_lin_kernighan)
1578  return _internal_use_lin_kernighan();
1579 }
1580 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_lin_kernighan(::operations_research::OptionalBoolean value) {
1581 
1582  use_lin_kernighan_ = value;
1583 }
1584 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_lin_kernighan(::operations_research::OptionalBoolean value) {
1585  _internal_set_use_lin_kernighan(value);
1586  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_lin_kernighan)
1587 }
1588 
1589 // .operations_research.OptionalBoolean use_tsp_opt = 10;
1590 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_tsp_opt() {
1591  use_tsp_opt_ = 0;
1592 }
1593 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_tsp_opt() const {
1594  return static_cast< ::operations_research::OptionalBoolean >(use_tsp_opt_);
1595 }
1596 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_tsp_opt() const {
1597  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_tsp_opt)
1598  return _internal_use_tsp_opt();
1599 }
1600 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_tsp_opt(::operations_research::OptionalBoolean value) {
1601 
1602  use_tsp_opt_ = value;
1603 }
1604 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_tsp_opt(::operations_research::OptionalBoolean value) {
1605  _internal_set_use_tsp_opt(value);
1606  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_tsp_opt)
1607 }
1608 
1609 // .operations_research.OptionalBoolean use_make_active = 11;
1610 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_active() {
1611  use_make_active_ = 0;
1612 }
1613 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_active() const {
1614  return static_cast< ::operations_research::OptionalBoolean >(use_make_active_);
1615 }
1616 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_make_active() const {
1617  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_active)
1618  return _internal_use_make_active();
1619 }
1620 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_make_active(::operations_research::OptionalBoolean value) {
1621 
1622  use_make_active_ = value;
1623 }
1624 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_make_active(::operations_research::OptionalBoolean value) {
1625  _internal_set_use_make_active(value);
1626  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_active)
1627 }
1628 
1629 // .operations_research.OptionalBoolean use_relocate_and_make_active = 21;
1630 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_and_make_active() {
1631  use_relocate_and_make_active_ = 0;
1632 }
1633 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_and_make_active() const {
1634  return static_cast< ::operations_research::OptionalBoolean >(use_relocate_and_make_active_);
1635 }
1636 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_relocate_and_make_active() const {
1637  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_and_make_active)
1638  return _internal_use_relocate_and_make_active();
1639 }
1640 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_and_make_active(::operations_research::OptionalBoolean value) {
1641 
1642  use_relocate_and_make_active_ = value;
1643 }
1644 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_relocate_and_make_active(::operations_research::OptionalBoolean value) {
1645  _internal_set_use_relocate_and_make_active(value);
1646  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_relocate_and_make_active)
1647 }
1648 
1649 // .operations_research.OptionalBoolean use_make_inactive = 12;
1650 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_inactive() {
1651  use_make_inactive_ = 0;
1652 }
1653 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_inactive() const {
1654  return static_cast< ::operations_research::OptionalBoolean >(use_make_inactive_);
1655 }
1656 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_make_inactive() const {
1657  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_inactive)
1658  return _internal_use_make_inactive();
1659 }
1660 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_make_inactive(::operations_research::OptionalBoolean value) {
1661 
1662  use_make_inactive_ = value;
1663 }
1664 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_make_inactive(::operations_research::OptionalBoolean value) {
1665  _internal_set_use_make_inactive(value);
1666  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_inactive)
1667 }
1668 
1669 // .operations_research.OptionalBoolean use_make_chain_inactive = 13;
1670 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_chain_inactive() {
1671  use_make_chain_inactive_ = 0;
1672 }
1673 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_chain_inactive() const {
1674  return static_cast< ::operations_research::OptionalBoolean >(use_make_chain_inactive_);
1675 }
1676 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_make_chain_inactive() const {
1677  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_chain_inactive)
1678  return _internal_use_make_chain_inactive();
1679 }
1680 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_make_chain_inactive(::operations_research::OptionalBoolean value) {
1681 
1682  use_make_chain_inactive_ = value;
1683 }
1684 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_make_chain_inactive(::operations_research::OptionalBoolean value) {
1685  _internal_set_use_make_chain_inactive(value);
1686  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_make_chain_inactive)
1687 }
1688 
1689 // .operations_research.OptionalBoolean use_swap_active = 14;
1690 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_swap_active() {
1691  use_swap_active_ = 0;
1692 }
1693 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_swap_active() const {
1694  return static_cast< ::operations_research::OptionalBoolean >(use_swap_active_);
1695 }
1696 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_swap_active() const {
1697  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_swap_active)
1698  return _internal_use_swap_active();
1699 }
1700 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_swap_active(::operations_research::OptionalBoolean value) {
1701 
1702  use_swap_active_ = value;
1703 }
1704 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_swap_active(::operations_research::OptionalBoolean value) {
1705  _internal_set_use_swap_active(value);
1706  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_swap_active)
1707 }
1708 
1709 // .operations_research.OptionalBoolean use_extended_swap_active = 15;
1710 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_extended_swap_active() {
1711  use_extended_swap_active_ = 0;
1712 }
1713 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_extended_swap_active() const {
1714  return static_cast< ::operations_research::OptionalBoolean >(use_extended_swap_active_);
1715 }
1716 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_extended_swap_active() const {
1717  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_extended_swap_active)
1718  return _internal_use_extended_swap_active();
1719 }
1720 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_extended_swap_active(::operations_research::OptionalBoolean value) {
1721 
1722  use_extended_swap_active_ = value;
1723 }
1724 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_extended_swap_active(::operations_research::OptionalBoolean value) {
1725  _internal_set_use_extended_swap_active(value);
1726  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_extended_swap_active)
1727 }
1728 
1729 // .operations_research.OptionalBoolean use_node_pair_swap_active = 20;
1730 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_node_pair_swap_active() {
1731  use_node_pair_swap_active_ = 0;
1732 }
1733 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_node_pair_swap_active() const {
1734  return static_cast< ::operations_research::OptionalBoolean >(use_node_pair_swap_active_);
1735 }
1736 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_node_pair_swap_active() const {
1737  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_node_pair_swap_active)
1738  return _internal_use_node_pair_swap_active();
1739 }
1740 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_node_pair_swap_active(::operations_research::OptionalBoolean value) {
1741 
1742  use_node_pair_swap_active_ = value;
1743 }
1744 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_node_pair_swap_active(::operations_research::OptionalBoolean value) {
1745  _internal_set_use_node_pair_swap_active(value);
1746  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_node_pair_swap_active)
1747 }
1748 
1749 // .operations_research.OptionalBoolean use_path_lns = 16;
1750 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_path_lns() {
1751  use_path_lns_ = 0;
1752 }
1753 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_path_lns() const {
1754  return static_cast< ::operations_research::OptionalBoolean >(use_path_lns_);
1755 }
1756 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_path_lns() const {
1757  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_path_lns)
1758  return _internal_use_path_lns();
1759 }
1760 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_path_lns(::operations_research::OptionalBoolean value) {
1761 
1762  use_path_lns_ = value;
1763 }
1764 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_path_lns(::operations_research::OptionalBoolean value) {
1765  _internal_set_use_path_lns(value);
1766  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_path_lns)
1767 }
1768 
1769 // .operations_research.OptionalBoolean use_full_path_lns = 17;
1770 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_full_path_lns() {
1771  use_full_path_lns_ = 0;
1772 }
1773 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_full_path_lns() const {
1774  return static_cast< ::operations_research::OptionalBoolean >(use_full_path_lns_);
1775 }
1776 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_full_path_lns() const {
1777  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_full_path_lns)
1778  return _internal_use_full_path_lns();
1779 }
1780 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_full_path_lns(::operations_research::OptionalBoolean value) {
1781 
1782  use_full_path_lns_ = value;
1783 }
1784 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_full_path_lns(::operations_research::OptionalBoolean value) {
1785  _internal_set_use_full_path_lns(value);
1786  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_full_path_lns)
1787 }
1788 
1789 // .operations_research.OptionalBoolean use_tsp_lns = 18;
1790 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_tsp_lns() {
1791  use_tsp_lns_ = 0;
1792 }
1793 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_tsp_lns() const {
1794  return static_cast< ::operations_research::OptionalBoolean >(use_tsp_lns_);
1795 }
1796 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_tsp_lns() const {
1797  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_tsp_lns)
1798  return _internal_use_tsp_lns();
1799 }
1800 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_tsp_lns(::operations_research::OptionalBoolean value) {
1801 
1802  use_tsp_lns_ = value;
1803 }
1804 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_tsp_lns(::operations_research::OptionalBoolean value) {
1805  _internal_set_use_tsp_lns(value);
1806  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_tsp_lns)
1807 }
1808 
1809 // .operations_research.OptionalBoolean use_inactive_lns = 19;
1810 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_inactive_lns() {
1811  use_inactive_lns_ = 0;
1812 }
1813 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_inactive_lns() const {
1814  return static_cast< ::operations_research::OptionalBoolean >(use_inactive_lns_);
1815 }
1816 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_inactive_lns() const {
1817  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_inactive_lns)
1818  return _internal_use_inactive_lns();
1819 }
1820 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_inactive_lns(::operations_research::OptionalBoolean value) {
1821 
1822  use_inactive_lns_ = value;
1823 }
1824 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_inactive_lns(::operations_research::OptionalBoolean value) {
1825  _internal_set_use_inactive_lns(value);
1826  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_inactive_lns)
1827 }
1828 
1829 // .operations_research.OptionalBoolean use_global_cheapest_insertion_path_lns = 27;
1830 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_path_lns() {
1831  use_global_cheapest_insertion_path_lns_ = 0;
1832 }
1833 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_path_lns() const {
1834  return static_cast< ::operations_research::OptionalBoolean >(use_global_cheapest_insertion_path_lns_);
1835 }
1836 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_global_cheapest_insertion_path_lns() const {
1837  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_path_lns)
1838  return _internal_use_global_cheapest_insertion_path_lns();
1839 }
1840 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value) {
1841 
1842  use_global_cheapest_insertion_path_lns_ = value;
1843 }
1844 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value) {
1845  _internal_set_use_global_cheapest_insertion_path_lns(value);
1846  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_path_lns)
1847 }
1848 
1849 // .operations_research.OptionalBoolean use_local_cheapest_insertion_path_lns = 28;
1850 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_path_lns() {
1851  use_local_cheapest_insertion_path_lns_ = 0;
1852 }
1853 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_path_lns() const {
1854  return static_cast< ::operations_research::OptionalBoolean >(use_local_cheapest_insertion_path_lns_);
1855 }
1856 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_local_cheapest_insertion_path_lns() const {
1857  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_path_lns)
1858  return _internal_use_local_cheapest_insertion_path_lns();
1859 }
1860 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value) {
1861 
1862  use_local_cheapest_insertion_path_lns_ = value;
1863 }
1864 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value) {
1865  _internal_set_use_local_cheapest_insertion_path_lns(value);
1866  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_path_lns)
1867 }
1868 
1869 // .operations_research.OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns = 29;
1870 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_expensive_chain_lns() {
1871  use_global_cheapest_insertion_expensive_chain_lns_ = 0;
1872 }
1873 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_expensive_chain_lns() const {
1874  return static_cast< ::operations_research::OptionalBoolean >(use_global_cheapest_insertion_expensive_chain_lns_);
1875 }
1876 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_global_cheapest_insertion_expensive_chain_lns() const {
1877  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_expensive_chain_lns)
1878  return _internal_use_global_cheapest_insertion_expensive_chain_lns();
1879 }
1880 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value) {
1881 
1882  use_global_cheapest_insertion_expensive_chain_lns_ = value;
1883 }
1884 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value) {
1885  _internal_set_use_global_cheapest_insertion_expensive_chain_lns(value);
1886  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_expensive_chain_lns)
1887 }
1888 
1889 // .operations_research.OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns = 30;
1890 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_expensive_chain_lns() {
1891  use_local_cheapest_insertion_expensive_chain_lns_ = 0;
1892 }
1893 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_expensive_chain_lns() const {
1894  return static_cast< ::operations_research::OptionalBoolean >(use_local_cheapest_insertion_expensive_chain_lns_);
1895 }
1896 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_local_cheapest_insertion_expensive_chain_lns() const {
1897  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_expensive_chain_lns)
1898  return _internal_use_local_cheapest_insertion_expensive_chain_lns();
1899 }
1900 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value) {
1901 
1902  use_local_cheapest_insertion_expensive_chain_lns_ = value;
1903 }
1904 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value) {
1905  _internal_set_use_local_cheapest_insertion_expensive_chain_lns(value);
1906  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_expensive_chain_lns)
1907 }
1908 
1909 // .operations_research.OptionalBoolean use_global_cheapest_insertion_close_nodes_lns = 31;
1910 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_close_nodes_lns() {
1911  use_global_cheapest_insertion_close_nodes_lns_ = 0;
1912 }
1913 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_close_nodes_lns() const {
1914  return static_cast< ::operations_research::OptionalBoolean >(use_global_cheapest_insertion_close_nodes_lns_);
1915 }
1916 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_global_cheapest_insertion_close_nodes_lns() const {
1917  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_close_nodes_lns)
1918  return _internal_use_global_cheapest_insertion_close_nodes_lns();
1919 }
1920 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value) {
1921 
1922  use_global_cheapest_insertion_close_nodes_lns_ = value;
1923 }
1924 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value) {
1925  _internal_set_use_global_cheapest_insertion_close_nodes_lns(value);
1926  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_global_cheapest_insertion_close_nodes_lns)
1927 }
1928 
1929 // .operations_research.OptionalBoolean use_local_cheapest_insertion_close_nodes_lns = 32;
1930 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_close_nodes_lns() {
1931  use_local_cheapest_insertion_close_nodes_lns_ = 0;
1932 }
1933 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_close_nodes_lns() const {
1934  return static_cast< ::operations_research::OptionalBoolean >(use_local_cheapest_insertion_close_nodes_lns_);
1935 }
1936 inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::use_local_cheapest_insertion_close_nodes_lns() const {
1937  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_close_nodes_lns)
1938  return _internal_use_local_cheapest_insertion_close_nodes_lns();
1939 }
1940 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value) {
1941 
1942  use_local_cheapest_insertion_close_nodes_lns_ = value;
1943 }
1944 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value) {
1945  _internal_set_use_local_cheapest_insertion_close_nodes_lns(value);
1946  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators.use_local_cheapest_insertion_close_nodes_lns)
1947 }
1948 
1949 // -------------------------------------------------------------------
1950 
1951 // RoutingSearchParameters
1952 
1953 // .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
1954 inline void RoutingSearchParameters::clear_first_solution_strategy() {
1955  first_solution_strategy_ = 0;
1956 }
1957 inline ::operations_research::FirstSolutionStrategy_Value RoutingSearchParameters::_internal_first_solution_strategy() const {
1958  return static_cast< ::operations_research::FirstSolutionStrategy_Value >(first_solution_strategy_);
1959 }
1960 inline ::operations_research::FirstSolutionStrategy_Value RoutingSearchParameters::first_solution_strategy() const {
1961  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.first_solution_strategy)
1962  return _internal_first_solution_strategy();
1963 }
1964 inline void RoutingSearchParameters::_internal_set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value) {
1965 
1966  first_solution_strategy_ = value;
1967 }
1968 inline void RoutingSearchParameters::set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value) {
1969  _internal_set_first_solution_strategy(value);
1970  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.first_solution_strategy)
1971 }
1972 
1973 // bool use_unfiltered_first_solution_strategy = 2;
1974 inline void RoutingSearchParameters::clear_use_unfiltered_first_solution_strategy() {
1975  use_unfiltered_first_solution_strategy_ = false;
1976 }
1977 inline bool RoutingSearchParameters::_internal_use_unfiltered_first_solution_strategy() const {
1978  return use_unfiltered_first_solution_strategy_;
1979 }
1980 inline bool RoutingSearchParameters::use_unfiltered_first_solution_strategy() const {
1981  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.use_unfiltered_first_solution_strategy)
1982  return _internal_use_unfiltered_first_solution_strategy();
1983 }
1984 inline void RoutingSearchParameters::_internal_set_use_unfiltered_first_solution_strategy(bool value) {
1985 
1986  use_unfiltered_first_solution_strategy_ = value;
1987 }
1988 inline void RoutingSearchParameters::set_use_unfiltered_first_solution_strategy(bool value) {
1989  _internal_set_use_unfiltered_first_solution_strategy(value);
1990  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.use_unfiltered_first_solution_strategy)
1991 }
1992 
1993 // double savings_neighbors_ratio = 14;
1994 inline void RoutingSearchParameters::clear_savings_neighbors_ratio() {
1995  savings_neighbors_ratio_ = 0;
1996 }
1997 inline double RoutingSearchParameters::_internal_savings_neighbors_ratio() const {
1998  return savings_neighbors_ratio_;
1999 }
2000 inline double RoutingSearchParameters::savings_neighbors_ratio() const {
2001  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.savings_neighbors_ratio)
2002  return _internal_savings_neighbors_ratio();
2003 }
2004 inline void RoutingSearchParameters::_internal_set_savings_neighbors_ratio(double value) {
2005 
2006  savings_neighbors_ratio_ = value;
2007 }
2008 inline void RoutingSearchParameters::set_savings_neighbors_ratio(double value) {
2009  _internal_set_savings_neighbors_ratio(value);
2010  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.savings_neighbors_ratio)
2011 }
2012 
2013 // double savings_max_memory_usage_bytes = 23;
2014 inline void RoutingSearchParameters::clear_savings_max_memory_usage_bytes() {
2015  savings_max_memory_usage_bytes_ = 0;
2016 }
2017 inline double RoutingSearchParameters::_internal_savings_max_memory_usage_bytes() const {
2018  return savings_max_memory_usage_bytes_;
2019 }
2020 inline double RoutingSearchParameters::savings_max_memory_usage_bytes() const {
2021  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.savings_max_memory_usage_bytes)
2022  return _internal_savings_max_memory_usage_bytes();
2023 }
2024 inline void RoutingSearchParameters::_internal_set_savings_max_memory_usage_bytes(double value) {
2025 
2026  savings_max_memory_usage_bytes_ = value;
2027 }
2028 inline void RoutingSearchParameters::set_savings_max_memory_usage_bytes(double value) {
2029  _internal_set_savings_max_memory_usage_bytes(value);
2030  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.savings_max_memory_usage_bytes)
2031 }
2032 
2033 // bool savings_add_reverse_arcs = 15;
2034 inline void RoutingSearchParameters::clear_savings_add_reverse_arcs() {
2035  savings_add_reverse_arcs_ = false;
2036 }
2037 inline bool RoutingSearchParameters::_internal_savings_add_reverse_arcs() const {
2038  return savings_add_reverse_arcs_;
2039 }
2040 inline bool RoutingSearchParameters::savings_add_reverse_arcs() const {
2041  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.savings_add_reverse_arcs)
2042  return _internal_savings_add_reverse_arcs();
2043 }
2044 inline void RoutingSearchParameters::_internal_set_savings_add_reverse_arcs(bool value) {
2045 
2046  savings_add_reverse_arcs_ = value;
2047 }
2048 inline void RoutingSearchParameters::set_savings_add_reverse_arcs(bool value) {
2049  _internal_set_savings_add_reverse_arcs(value);
2050  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.savings_add_reverse_arcs)
2051 }
2052 
2053 // double savings_arc_coefficient = 18;
2054 inline void RoutingSearchParameters::clear_savings_arc_coefficient() {
2055  savings_arc_coefficient_ = 0;
2056 }
2057 inline double RoutingSearchParameters::_internal_savings_arc_coefficient() const {
2058  return savings_arc_coefficient_;
2059 }
2060 inline double RoutingSearchParameters::savings_arc_coefficient() const {
2061  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.savings_arc_coefficient)
2062  return _internal_savings_arc_coefficient();
2063 }
2064 inline void RoutingSearchParameters::_internal_set_savings_arc_coefficient(double value) {
2065 
2066  savings_arc_coefficient_ = value;
2067 }
2068 inline void RoutingSearchParameters::set_savings_arc_coefficient(double value) {
2069  _internal_set_savings_arc_coefficient(value);
2070  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.savings_arc_coefficient)
2071 }
2072 
2073 // bool savings_parallel_routes = 19;
2074 inline void RoutingSearchParameters::clear_savings_parallel_routes() {
2075  savings_parallel_routes_ = false;
2076 }
2077 inline bool RoutingSearchParameters::_internal_savings_parallel_routes() const {
2078  return savings_parallel_routes_;
2079 }
2080 inline bool RoutingSearchParameters::savings_parallel_routes() const {
2081  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.savings_parallel_routes)
2082  return _internal_savings_parallel_routes();
2083 }
2084 inline void RoutingSearchParameters::_internal_set_savings_parallel_routes(bool value) {
2085 
2086  savings_parallel_routes_ = value;
2087 }
2088 inline void RoutingSearchParameters::set_savings_parallel_routes(bool value) {
2089  _internal_set_savings_parallel_routes(value);
2090  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.savings_parallel_routes)
2091 }
2092 
2093 // double cheapest_insertion_farthest_seeds_ratio = 16;
2094 inline void RoutingSearchParameters::clear_cheapest_insertion_farthest_seeds_ratio() {
2095  cheapest_insertion_farthest_seeds_ratio_ = 0;
2096 }
2097 inline double RoutingSearchParameters::_internal_cheapest_insertion_farthest_seeds_ratio() const {
2098  return cheapest_insertion_farthest_seeds_ratio_;
2099 }
2100 inline double RoutingSearchParameters::cheapest_insertion_farthest_seeds_ratio() const {
2101  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.cheapest_insertion_farthest_seeds_ratio)
2102  return _internal_cheapest_insertion_farthest_seeds_ratio();
2103 }
2104 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_farthest_seeds_ratio(double value) {
2105 
2106  cheapest_insertion_farthest_seeds_ratio_ = value;
2107 }
2108 inline void RoutingSearchParameters::set_cheapest_insertion_farthest_seeds_ratio(double value) {
2109  _internal_set_cheapest_insertion_farthest_seeds_ratio(value);
2110  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.cheapest_insertion_farthest_seeds_ratio)
2111 }
2112 
2113 // double cheapest_insertion_first_solution_neighbors_ratio = 21;
2114 inline void RoutingSearchParameters::clear_cheapest_insertion_first_solution_neighbors_ratio() {
2115  cheapest_insertion_first_solution_neighbors_ratio_ = 0;
2116 }
2117 inline double RoutingSearchParameters::_internal_cheapest_insertion_first_solution_neighbors_ratio() const {
2118  return cheapest_insertion_first_solution_neighbors_ratio_;
2119 }
2120 inline double RoutingSearchParameters::cheapest_insertion_first_solution_neighbors_ratio() const {
2121  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.cheapest_insertion_first_solution_neighbors_ratio)
2122  return _internal_cheapest_insertion_first_solution_neighbors_ratio();
2123 }
2124 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_first_solution_neighbors_ratio(double value) {
2125 
2126  cheapest_insertion_first_solution_neighbors_ratio_ = value;
2127 }
2128 inline void RoutingSearchParameters::set_cheapest_insertion_first_solution_neighbors_ratio(double value) {
2129  _internal_set_cheapest_insertion_first_solution_neighbors_ratio(value);
2130  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.cheapest_insertion_first_solution_neighbors_ratio)
2131 }
2132 
2133 // double cheapest_insertion_ls_operator_neighbors_ratio = 31;
2134 inline void RoutingSearchParameters::clear_cheapest_insertion_ls_operator_neighbors_ratio() {
2135  cheapest_insertion_ls_operator_neighbors_ratio_ = 0;
2136 }
2137 inline double RoutingSearchParameters::_internal_cheapest_insertion_ls_operator_neighbors_ratio() const {
2138  return cheapest_insertion_ls_operator_neighbors_ratio_;
2139 }
2140 inline double RoutingSearchParameters::cheapest_insertion_ls_operator_neighbors_ratio() const {
2141  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.cheapest_insertion_ls_operator_neighbors_ratio)
2142  return _internal_cheapest_insertion_ls_operator_neighbors_ratio();
2143 }
2144 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_ls_operator_neighbors_ratio(double value) {
2145 
2146  cheapest_insertion_ls_operator_neighbors_ratio_ = value;
2147 }
2148 inline void RoutingSearchParameters::set_cheapest_insertion_ls_operator_neighbors_ratio(double value) {
2149  _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(value);
2150  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.cheapest_insertion_ls_operator_neighbors_ratio)
2151 }
2152 
2153 // bool christofides_use_minimum_matching = 30;
2154 inline void RoutingSearchParameters::clear_christofides_use_minimum_matching() {
2155  christofides_use_minimum_matching_ = false;
2156 }
2157 inline bool RoutingSearchParameters::_internal_christofides_use_minimum_matching() const {
2158  return christofides_use_minimum_matching_;
2159 }
2160 inline bool RoutingSearchParameters::christofides_use_minimum_matching() const {
2161  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.christofides_use_minimum_matching)
2162  return _internal_christofides_use_minimum_matching();
2163 }
2164 inline void RoutingSearchParameters::_internal_set_christofides_use_minimum_matching(bool value) {
2165 
2166  christofides_use_minimum_matching_ = value;
2167 }
2168 inline void RoutingSearchParameters::set_christofides_use_minimum_matching(bool value) {
2169  _internal_set_christofides_use_minimum_matching(value);
2170  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.christofides_use_minimum_matching)
2171 }
2172 
2173 // .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
2174 inline bool RoutingSearchParameters::_internal_has_local_search_operators() const {
2175  return this != internal_default_instance() && local_search_operators_ != nullptr;
2176 }
2177 inline bool RoutingSearchParameters::has_local_search_operators() const {
2178  return _internal_has_local_search_operators();
2179 }
2180 inline void RoutingSearchParameters::clear_local_search_operators() {
2181  if (GetArena() == nullptr && local_search_operators_ != nullptr) {
2182  delete local_search_operators_;
2183  }
2184  local_search_operators_ = nullptr;
2185 }
2186 inline const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters::_internal_local_search_operators() const {
2187  const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* p = local_search_operators_;
2188  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators*>(
2190 }
2191 inline const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters::local_search_operators() const {
2192  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.local_search_operators)
2193  return _internal_local_search_operators();
2194 }
2195 inline void RoutingSearchParameters::unsafe_arena_set_allocated_local_search_operators(
2197  if (GetArena() == nullptr) {
2198  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(local_search_operators_);
2199  }
2200  local_search_operators_ = local_search_operators;
2201  if (local_search_operators) {
2202 
2203  } else {
2204 
2205  }
2206  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RoutingSearchParameters.local_search_operators)
2207 }
2208 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::release_local_search_operators() {
2209 
2210  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* temp = local_search_operators_;
2211  local_search_operators_ = nullptr;
2212  if (GetArena() != nullptr) {
2213  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2214  }
2215  return temp;
2216 }
2217 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::unsafe_arena_release_local_search_operators() {
2218  // @@protoc_insertion_point(field_release:operations_research.RoutingSearchParameters.local_search_operators)
2219 
2220  ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* temp = local_search_operators_;
2221  local_search_operators_ = nullptr;
2222  return temp;
2223 }
2224 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::_internal_mutable_local_search_operators() {
2225 
2226  if (local_search_operators_ == nullptr) {
2227  auto* p = CreateMaybeMessage<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators>(GetArena());
2228  local_search_operators_ = p;
2229  }
2230  return local_search_operators_;
2231 }
2232 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::mutable_local_search_operators() {
2233  // @@protoc_insertion_point(field_mutable:operations_research.RoutingSearchParameters.local_search_operators)
2234  return _internal_mutable_local_search_operators();
2235 }
2236 inline void RoutingSearchParameters::set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators) {
2237  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2238  if (message_arena == nullptr) {
2239  delete local_search_operators_;
2240  }
2241  if (local_search_operators) {
2242  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2243  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(local_search_operators);
2244  if (message_arena != submessage_arena) {
2245  local_search_operators = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2246  message_arena, local_search_operators, submessage_arena);
2247  }
2248 
2249  } else {
2250 
2251  }
2252  local_search_operators_ = local_search_operators;
2253  // @@protoc_insertion_point(field_set_allocated:operations_research.RoutingSearchParameters.local_search_operators)
2254 }
2255 
2256 // int32 relocate_expensive_chain_num_arcs_to_consider = 20;
2257 inline void RoutingSearchParameters::clear_relocate_expensive_chain_num_arcs_to_consider() {
2258  relocate_expensive_chain_num_arcs_to_consider_ = 0;
2259 }
2260 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::_internal_relocate_expensive_chain_num_arcs_to_consider() const {
2261  return relocate_expensive_chain_num_arcs_to_consider_;
2262 }
2263 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::relocate_expensive_chain_num_arcs_to_consider() const {
2264  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.relocate_expensive_chain_num_arcs_to_consider)
2265  return _internal_relocate_expensive_chain_num_arcs_to_consider();
2266 }
2267 inline void RoutingSearchParameters::_internal_set_relocate_expensive_chain_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value) {
2268 
2269  relocate_expensive_chain_num_arcs_to_consider_ = value;
2270 }
2271 inline void RoutingSearchParameters::set_relocate_expensive_chain_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value) {
2272  _internal_set_relocate_expensive_chain_num_arcs_to_consider(value);
2273  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.relocate_expensive_chain_num_arcs_to_consider)
2274 }
2275 
2276 // int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
2277 inline void RoutingSearchParameters::clear_heuristic_expensive_chain_lns_num_arcs_to_consider() {
2278  heuristic_expensive_chain_lns_num_arcs_to_consider_ = 0;
2279 }
2280 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::_internal_heuristic_expensive_chain_lns_num_arcs_to_consider() const {
2281  return heuristic_expensive_chain_lns_num_arcs_to_consider_;
2282 }
2283 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::heuristic_expensive_chain_lns_num_arcs_to_consider() const {
2284  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.heuristic_expensive_chain_lns_num_arcs_to_consider)
2285  return _internal_heuristic_expensive_chain_lns_num_arcs_to_consider();
2286 }
2287 inline void RoutingSearchParameters::_internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value) {
2288 
2289  heuristic_expensive_chain_lns_num_arcs_to_consider_ = value;
2290 }
2291 inline void RoutingSearchParameters::set_heuristic_expensive_chain_lns_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value) {
2292  _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(value);
2293  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.heuristic_expensive_chain_lns_num_arcs_to_consider)
2294 }
2295 
2296 // int32 heuristic_close_nodes_lns_num_nodes = 35;
2297 inline void RoutingSearchParameters::clear_heuristic_close_nodes_lns_num_nodes() {
2298  heuristic_close_nodes_lns_num_nodes_ = 0;
2299 }
2300 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::_internal_heuristic_close_nodes_lns_num_nodes() const {
2301  return heuristic_close_nodes_lns_num_nodes_;
2302 }
2303 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::heuristic_close_nodes_lns_num_nodes() const {
2304  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.heuristic_close_nodes_lns_num_nodes)
2305  return _internal_heuristic_close_nodes_lns_num_nodes();
2306 }
2307 inline void RoutingSearchParameters::_internal_set_heuristic_close_nodes_lns_num_nodes(::PROTOBUF_NAMESPACE_ID::int32 value) {
2308 
2309  heuristic_close_nodes_lns_num_nodes_ = value;
2310 }
2311 inline void RoutingSearchParameters::set_heuristic_close_nodes_lns_num_nodes(::PROTOBUF_NAMESPACE_ID::int32 value) {
2312  _internal_set_heuristic_close_nodes_lns_num_nodes(value);
2313  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.heuristic_close_nodes_lns_num_nodes)
2314 }
2315 
2316 // .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
2317 inline void RoutingSearchParameters::clear_local_search_metaheuristic() {
2318  local_search_metaheuristic_ = 0;
2319 }
2320 inline ::operations_research::LocalSearchMetaheuristic_Value RoutingSearchParameters::_internal_local_search_metaheuristic() const {
2321  return static_cast< ::operations_research::LocalSearchMetaheuristic_Value >(local_search_metaheuristic_);
2322 }
2323 inline ::operations_research::LocalSearchMetaheuristic_Value RoutingSearchParameters::local_search_metaheuristic() const {
2324  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.local_search_metaheuristic)
2325  return _internal_local_search_metaheuristic();
2326 }
2327 inline void RoutingSearchParameters::_internal_set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value) {
2328 
2329  local_search_metaheuristic_ = value;
2330 }
2331 inline void RoutingSearchParameters::set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value) {
2332  _internal_set_local_search_metaheuristic(value);
2333  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.local_search_metaheuristic)
2334 }
2335 
2336 // double guided_local_search_lambda_coefficient = 5;
2337 inline void RoutingSearchParameters::clear_guided_local_search_lambda_coefficient() {
2338  guided_local_search_lambda_coefficient_ = 0;
2339 }
2340 inline double RoutingSearchParameters::_internal_guided_local_search_lambda_coefficient() const {
2341  return guided_local_search_lambda_coefficient_;
2342 }
2343 inline double RoutingSearchParameters::guided_local_search_lambda_coefficient() const {
2344  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.guided_local_search_lambda_coefficient)
2345  return _internal_guided_local_search_lambda_coefficient();
2346 }
2347 inline void RoutingSearchParameters::_internal_set_guided_local_search_lambda_coefficient(double value) {
2348 
2349  guided_local_search_lambda_coefficient_ = value;
2350 }
2351 inline void RoutingSearchParameters::set_guided_local_search_lambda_coefficient(double value) {
2352  _internal_set_guided_local_search_lambda_coefficient(value);
2353  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.guided_local_search_lambda_coefficient)
2354 }
2355 
2356 // bool use_depth_first_search = 6;
2357 inline void RoutingSearchParameters::clear_use_depth_first_search() {
2358  use_depth_first_search_ = false;
2359 }
2360 inline bool RoutingSearchParameters::_internal_use_depth_first_search() const {
2361  return use_depth_first_search_;
2362 }
2363 inline bool RoutingSearchParameters::use_depth_first_search() const {
2364  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.use_depth_first_search)
2365  return _internal_use_depth_first_search();
2366 }
2367 inline void RoutingSearchParameters::_internal_set_use_depth_first_search(bool value) {
2368 
2369  use_depth_first_search_ = value;
2370 }
2371 inline void RoutingSearchParameters::set_use_depth_first_search(bool value) {
2372  _internal_set_use_depth_first_search(value);
2373  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.use_depth_first_search)
2374 }
2375 
2376 // .operations_research.OptionalBoolean use_cp = 28;
2377 inline void RoutingSearchParameters::clear_use_cp() {
2378  use_cp_ = 0;
2379 }
2380 inline ::operations_research::OptionalBoolean RoutingSearchParameters::_internal_use_cp() const {
2381  return static_cast< ::operations_research::OptionalBoolean >(use_cp_);
2382 }
2383 inline ::operations_research::OptionalBoolean RoutingSearchParameters::use_cp() const {
2384  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.use_cp)
2385  return _internal_use_cp();
2386 }
2387 inline void RoutingSearchParameters::_internal_set_use_cp(::operations_research::OptionalBoolean value) {
2388 
2389  use_cp_ = value;
2390 }
2391 inline void RoutingSearchParameters::set_use_cp(::operations_research::OptionalBoolean value) {
2392  _internal_set_use_cp(value);
2393  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.use_cp)
2394 }
2395 
2396 // .operations_research.OptionalBoolean use_cp_sat = 27;
2397 inline void RoutingSearchParameters::clear_use_cp_sat() {
2398  use_cp_sat_ = 0;
2399 }
2400 inline ::operations_research::OptionalBoolean RoutingSearchParameters::_internal_use_cp_sat() const {
2401  return static_cast< ::operations_research::OptionalBoolean >(use_cp_sat_);
2402 }
2403 inline ::operations_research::OptionalBoolean RoutingSearchParameters::use_cp_sat() const {
2404  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.use_cp_sat)
2405  return _internal_use_cp_sat();
2406 }
2407 inline void RoutingSearchParameters::_internal_set_use_cp_sat(::operations_research::OptionalBoolean value) {
2408 
2409  use_cp_sat_ = value;
2410 }
2411 inline void RoutingSearchParameters::set_use_cp_sat(::operations_research::OptionalBoolean value) {
2412  _internal_set_use_cp_sat(value);
2413  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.use_cp_sat)
2414 }
2415 
2416 // .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
2417 inline void RoutingSearchParameters::clear_continuous_scheduling_solver() {
2418  continuous_scheduling_solver_ = 0;
2419 }
2420 inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::_internal_continuous_scheduling_solver() const {
2421  return static_cast< ::operations_research::RoutingSearchParameters_SchedulingSolver >(continuous_scheduling_solver_);
2422 }
2423 inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::continuous_scheduling_solver() const {
2424  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.continuous_scheduling_solver)
2425  return _internal_continuous_scheduling_solver();
2426 }
2427 inline void RoutingSearchParameters::_internal_set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value) {
2428 
2429  continuous_scheduling_solver_ = value;
2430 }
2431 inline void RoutingSearchParameters::set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value) {
2432  _internal_set_continuous_scheduling_solver(value);
2433  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.continuous_scheduling_solver)
2434 }
2435 
2436 // .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
2437 inline void RoutingSearchParameters::clear_mixed_integer_scheduling_solver() {
2438  mixed_integer_scheduling_solver_ = 0;
2439 }
2440 inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::_internal_mixed_integer_scheduling_solver() const {
2441  return static_cast< ::operations_research::RoutingSearchParameters_SchedulingSolver >(mixed_integer_scheduling_solver_);
2442 }
2443 inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::mixed_integer_scheduling_solver() const {
2444  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.mixed_integer_scheduling_solver)
2445  return _internal_mixed_integer_scheduling_solver();
2446 }
2447 inline void RoutingSearchParameters::_internal_set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value) {
2448 
2449  mixed_integer_scheduling_solver_ = value;
2450 }
2451 inline void RoutingSearchParameters::set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value) {
2452  _internal_set_mixed_integer_scheduling_solver(value);
2453  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.mixed_integer_scheduling_solver)
2454 }
2455 
2456 // double optimization_step = 7;
2457 inline void RoutingSearchParameters::clear_optimization_step() {
2458  optimization_step_ = 0;
2459 }
2460 inline double RoutingSearchParameters::_internal_optimization_step() const {
2461  return optimization_step_;
2462 }
2463 inline double RoutingSearchParameters::optimization_step() const {
2464  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.optimization_step)
2465  return _internal_optimization_step();
2466 }
2467 inline void RoutingSearchParameters::_internal_set_optimization_step(double value) {
2468 
2469  optimization_step_ = value;
2470 }
2471 inline void RoutingSearchParameters::set_optimization_step(double value) {
2472  _internal_set_optimization_step(value);
2473  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.optimization_step)
2474 }
2475 
2476 // int32 number_of_solutions_to_collect = 17;
2477 inline void RoutingSearchParameters::clear_number_of_solutions_to_collect() {
2478  number_of_solutions_to_collect_ = 0;
2479 }
2480 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::_internal_number_of_solutions_to_collect() const {
2481  return number_of_solutions_to_collect_;
2482 }
2483 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingSearchParameters::number_of_solutions_to_collect() const {
2484  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.number_of_solutions_to_collect)
2485  return _internal_number_of_solutions_to_collect();
2486 }
2487 inline void RoutingSearchParameters::_internal_set_number_of_solutions_to_collect(::PROTOBUF_NAMESPACE_ID::int32 value) {
2488 
2489  number_of_solutions_to_collect_ = value;
2490 }
2491 inline void RoutingSearchParameters::set_number_of_solutions_to_collect(::PROTOBUF_NAMESPACE_ID::int32 value) {
2492  _internal_set_number_of_solutions_to_collect(value);
2493  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.number_of_solutions_to_collect)
2494 }
2495 
2496 // int64 solution_limit = 8;
2497 inline void RoutingSearchParameters::clear_solution_limit() {
2498  solution_limit_ = PROTOBUF_LONGLONG(0);
2499 }
2500 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutingSearchParameters::_internal_solution_limit() const {
2501  return solution_limit_;
2502 }
2503 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutingSearchParameters::solution_limit() const {
2504  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.solution_limit)
2505  return _internal_solution_limit();
2506 }
2507 inline void RoutingSearchParameters::_internal_set_solution_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
2508 
2509  solution_limit_ = value;
2510 }
2511 inline void RoutingSearchParameters::set_solution_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
2512  _internal_set_solution_limit(value);
2513  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.solution_limit)
2514 }
2515 
2516 // .google.protobuf.Duration time_limit = 9;
2517 inline bool RoutingSearchParameters::_internal_has_time_limit() const {
2518  return this != internal_default_instance() && time_limit_ != nullptr;
2519 }
2520 inline bool RoutingSearchParameters::has_time_limit() const {
2521  return _internal_has_time_limit();
2522 }
2523 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::_internal_time_limit() const {
2524  const PROTOBUF_NAMESPACE_ID::Duration* p = time_limit_;
2525  return p != nullptr ? *p : *reinterpret_cast<const PROTOBUF_NAMESPACE_ID::Duration*>(
2526  &PROTOBUF_NAMESPACE_ID::_Duration_default_instance_);
2527 }
2528 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::time_limit() const {
2529  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.time_limit)
2530  return _internal_time_limit();
2531 }
2532 inline void RoutingSearchParameters::unsafe_arena_set_allocated_time_limit(
2533  PROTOBUF_NAMESPACE_ID::Duration* time_limit) {
2534  if (GetArena() == nullptr) {
2535  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(time_limit_);
2536  }
2537  time_limit_ = time_limit;
2538  if (time_limit) {
2539 
2540  } else {
2541 
2542  }
2543  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RoutingSearchParameters.time_limit)
2544 }
2545 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::release_time_limit() {
2546 
2547  PROTOBUF_NAMESPACE_ID::Duration* temp = time_limit_;
2548  time_limit_ = nullptr;
2549  if (GetArena() != nullptr) {
2550  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2551  }
2552  return temp;
2553 }
2554 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::unsafe_arena_release_time_limit() {
2555  // @@protoc_insertion_point(field_release:operations_research.RoutingSearchParameters.time_limit)
2556 
2557  PROTOBUF_NAMESPACE_ID::Duration* temp = time_limit_;
2558  time_limit_ = nullptr;
2559  return temp;
2560 }
2561 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::_internal_mutable_time_limit() {
2562 
2563  if (time_limit_ == nullptr) {
2564  auto* p = CreateMaybeMessage<PROTOBUF_NAMESPACE_ID::Duration>(GetArena());
2565  time_limit_ = p;
2566  }
2567  return time_limit_;
2568 }
2569 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::mutable_time_limit() {
2570  // @@protoc_insertion_point(field_mutable:operations_research.RoutingSearchParameters.time_limit)
2571  return _internal_mutable_time_limit();
2572 }
2573 inline void RoutingSearchParameters::set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration* time_limit) {
2574  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2575  if (message_arena == nullptr) {
2576  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(time_limit_);
2577  }
2578  if (time_limit) {
2579  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2580  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(time_limit)->GetArena();
2581  if (message_arena != submessage_arena) {
2582  time_limit = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2583  message_arena, time_limit, submessage_arena);
2584  }
2585 
2586  } else {
2587 
2588  }
2589  time_limit_ = time_limit;
2590  // @@protoc_insertion_point(field_set_allocated:operations_research.RoutingSearchParameters.time_limit)
2591 }
2592 
2593 // .google.protobuf.Duration lns_time_limit = 10;
2594 inline bool RoutingSearchParameters::_internal_has_lns_time_limit() const {
2595  return this != internal_default_instance() && lns_time_limit_ != nullptr;
2596 }
2597 inline bool RoutingSearchParameters::has_lns_time_limit() const {
2598  return _internal_has_lns_time_limit();
2599 }
2600 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::_internal_lns_time_limit() const {
2601  const PROTOBUF_NAMESPACE_ID::Duration* p = lns_time_limit_;
2602  return p != nullptr ? *p : *reinterpret_cast<const PROTOBUF_NAMESPACE_ID::Duration*>(
2603  &PROTOBUF_NAMESPACE_ID::_Duration_default_instance_);
2604 }
2605 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::lns_time_limit() const {
2606  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.lns_time_limit)
2607  return _internal_lns_time_limit();
2608 }
2609 inline void RoutingSearchParameters::unsafe_arena_set_allocated_lns_time_limit(
2610  PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit) {
2611  if (GetArena() == nullptr) {
2612  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(lns_time_limit_);
2613  }
2614  lns_time_limit_ = lns_time_limit;
2615  if (lns_time_limit) {
2616 
2617  } else {
2618 
2619  }
2620  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RoutingSearchParameters.lns_time_limit)
2621 }
2622 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::release_lns_time_limit() {
2623 
2624  PROTOBUF_NAMESPACE_ID::Duration* temp = lns_time_limit_;
2625  lns_time_limit_ = nullptr;
2626  if (GetArena() != nullptr) {
2627  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2628  }
2629  return temp;
2630 }
2631 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::unsafe_arena_release_lns_time_limit() {
2632  // @@protoc_insertion_point(field_release:operations_research.RoutingSearchParameters.lns_time_limit)
2633 
2634  PROTOBUF_NAMESPACE_ID::Duration* temp = lns_time_limit_;
2635  lns_time_limit_ = nullptr;
2636  return temp;
2637 }
2638 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::_internal_mutable_lns_time_limit() {
2639 
2640  if (lns_time_limit_ == nullptr) {
2641  auto* p = CreateMaybeMessage<PROTOBUF_NAMESPACE_ID::Duration>(GetArena());
2642  lns_time_limit_ = p;
2643  }
2644  return lns_time_limit_;
2645 }
2646 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::mutable_lns_time_limit() {
2647  // @@protoc_insertion_point(field_mutable:operations_research.RoutingSearchParameters.lns_time_limit)
2648  return _internal_mutable_lns_time_limit();
2649 }
2650 inline void RoutingSearchParameters::set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit) {
2651  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2652  if (message_arena == nullptr) {
2653  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(lns_time_limit_);
2654  }
2655  if (lns_time_limit) {
2656  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2657  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(lns_time_limit)->GetArena();
2658  if (message_arena != submessage_arena) {
2659  lns_time_limit = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2660  message_arena, lns_time_limit, submessage_arena);
2661  }
2662 
2663  } else {
2664 
2665  }
2666  lns_time_limit_ = lns_time_limit;
2667  // @@protoc_insertion_point(field_set_allocated:operations_research.RoutingSearchParameters.lns_time_limit)
2668 }
2669 
2670 // bool use_full_propagation = 11;
2671 inline void RoutingSearchParameters::clear_use_full_propagation() {
2672  use_full_propagation_ = false;
2673 }
2674 inline bool RoutingSearchParameters::_internal_use_full_propagation() const {
2675  return use_full_propagation_;
2676 }
2677 inline bool RoutingSearchParameters::use_full_propagation() const {
2678  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.use_full_propagation)
2679  return _internal_use_full_propagation();
2680 }
2681 inline void RoutingSearchParameters::_internal_set_use_full_propagation(bool value) {
2682 
2683  use_full_propagation_ = value;
2684 }
2685 inline void RoutingSearchParameters::set_use_full_propagation(bool value) {
2686  _internal_set_use_full_propagation(value);
2687  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.use_full_propagation)
2688 }
2689 
2690 // bool log_search = 13;
2691 inline void RoutingSearchParameters::clear_log_search() {
2692  log_search_ = false;
2693 }
2694 inline bool RoutingSearchParameters::_internal_log_search() const {
2695  return log_search_;
2696 }
2697 inline bool RoutingSearchParameters::log_search() const {
2698  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.log_search)
2699  return _internal_log_search();
2700 }
2701 inline void RoutingSearchParameters::_internal_set_log_search(bool value) {
2702 
2703  log_search_ = value;
2704 }
2705 inline void RoutingSearchParameters::set_log_search(bool value) {
2706  _internal_set_log_search(value);
2707  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.log_search)
2708 }
2709 
2710 // double log_cost_scaling_factor = 22;
2711 inline void RoutingSearchParameters::clear_log_cost_scaling_factor() {
2712  log_cost_scaling_factor_ = 0;
2713 }
2714 inline double RoutingSearchParameters::_internal_log_cost_scaling_factor() const {
2715  return log_cost_scaling_factor_;
2716 }
2717 inline double RoutingSearchParameters::log_cost_scaling_factor() const {
2718  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.log_cost_scaling_factor)
2719  return _internal_log_cost_scaling_factor();
2720 }
2721 inline void RoutingSearchParameters::_internal_set_log_cost_scaling_factor(double value) {
2722 
2723  log_cost_scaling_factor_ = value;
2724 }
2725 inline void RoutingSearchParameters::set_log_cost_scaling_factor(double value) {
2726  _internal_set_log_cost_scaling_factor(value);
2727  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.log_cost_scaling_factor)
2728 }
2729 
2730 // double log_cost_offset = 29;
2731 inline void RoutingSearchParameters::clear_log_cost_offset() {
2732  log_cost_offset_ = 0;
2733 }
2734 inline double RoutingSearchParameters::_internal_log_cost_offset() const {
2735  return log_cost_offset_;
2736 }
2737 inline double RoutingSearchParameters::log_cost_offset() const {
2738  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.log_cost_offset)
2739  return _internal_log_cost_offset();
2740 }
2741 inline void RoutingSearchParameters::_internal_set_log_cost_offset(double value) {
2742 
2743  log_cost_offset_ = value;
2744 }
2745 inline void RoutingSearchParameters::set_log_cost_offset(double value) {
2746  _internal_set_log_cost_offset(value);
2747  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.log_cost_offset)
2748 }
2749 
2750 // string log_tag = 36;
2751 inline void RoutingSearchParameters::clear_log_tag() {
2752  log_tag_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
2753 }
2754 inline const std::string& RoutingSearchParameters::log_tag() const {
2755  // @@protoc_insertion_point(field_get:operations_research.RoutingSearchParameters.log_tag)
2756  return _internal_log_tag();
2757 }
2758 inline void RoutingSearchParameters::set_log_tag(const std::string& value) {
2759  _internal_set_log_tag(value);
2760  // @@protoc_insertion_point(field_set:operations_research.RoutingSearchParameters.log_tag)
2761 }
2762 inline std::string* RoutingSearchParameters::mutable_log_tag() {
2763  // @@protoc_insertion_point(field_mutable:operations_research.RoutingSearchParameters.log_tag)
2764  return _internal_mutable_log_tag();
2765 }
2766 inline const std::string& RoutingSearchParameters::_internal_log_tag() const {
2767  return log_tag_.Get();
2768 }
2769 inline void RoutingSearchParameters::_internal_set_log_tag(const std::string& value) {
2770 
2771  log_tag_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
2772 }
2773 inline void RoutingSearchParameters::set_log_tag(std::string&& value) {
2774 
2775  log_tag_.Set(
2776  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
2777  // @@protoc_insertion_point(field_set_rvalue:operations_research.RoutingSearchParameters.log_tag)
2778 }
2779 inline void RoutingSearchParameters::set_log_tag(const char* value) {
2780  GOOGLE_DCHECK(value != nullptr);
2781 
2782  log_tag_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
2783  GetArena());
2784  // @@protoc_insertion_point(field_set_char:operations_research.RoutingSearchParameters.log_tag)
2785 }
2786 inline void RoutingSearchParameters::set_log_tag(const char* value,
2787  size_t size) {
2788 
2789  log_tag_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
2790  reinterpret_cast<const char*>(value), size), GetArena());
2791  // @@protoc_insertion_point(field_set_pointer:operations_research.RoutingSearchParameters.log_tag)
2792 }
2793 inline std::string* RoutingSearchParameters::_internal_mutable_log_tag() {
2794 
2795  return log_tag_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
2796 }
2797 inline std::string* RoutingSearchParameters::release_log_tag() {
2798  // @@protoc_insertion_point(field_release:operations_research.RoutingSearchParameters.log_tag)
2799  return log_tag_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
2800 }
2801 inline void RoutingSearchParameters::set_allocated_log_tag(std::string* log_tag) {
2802  if (log_tag != nullptr) {
2803 
2804  } else {
2805 
2806  }
2807  log_tag_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), log_tag,
2808  GetArena());
2809  // @@protoc_insertion_point(field_set_allocated:operations_research.RoutingSearchParameters.log_tag)
2810 }
2811 
2812 // -------------------------------------------------------------------
2813 
2814 // RoutingModelParameters
2815 
2816 // .operations_research.ConstraintSolverParameters solver_parameters = 1;
2817 inline bool RoutingModelParameters::_internal_has_solver_parameters() const {
2818  return this != internal_default_instance() && solver_parameters_ != nullptr;
2819 }
2820 inline bool RoutingModelParameters::has_solver_parameters() const {
2821  return _internal_has_solver_parameters();
2822 }
2823 inline const ::operations_research::ConstraintSolverParameters& RoutingModelParameters::_internal_solver_parameters() const {
2824  const ::operations_research::ConstraintSolverParameters* p = solver_parameters_;
2825  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::ConstraintSolverParameters*>(
2827 }
2828 inline const ::operations_research::ConstraintSolverParameters& RoutingModelParameters::solver_parameters() const {
2829  // @@protoc_insertion_point(field_get:operations_research.RoutingModelParameters.solver_parameters)
2830  return _internal_solver_parameters();
2831 }
2832 inline void RoutingModelParameters::unsafe_arena_set_allocated_solver_parameters(
2833  ::operations_research::ConstraintSolverParameters* solver_parameters) {
2834  if (GetArena() == nullptr) {
2835  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(solver_parameters_);
2836  }
2837  solver_parameters_ = solver_parameters;
2838  if (solver_parameters) {
2839 
2840  } else {
2841 
2842  }
2843  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RoutingModelParameters.solver_parameters)
2844 }
2845 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::release_solver_parameters() {
2846 
2847  ::operations_research::ConstraintSolverParameters* temp = solver_parameters_;
2848  solver_parameters_ = nullptr;
2849  if (GetArena() != nullptr) {
2850  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2851  }
2852  return temp;
2853 }
2854 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::unsafe_arena_release_solver_parameters() {
2855  // @@protoc_insertion_point(field_release:operations_research.RoutingModelParameters.solver_parameters)
2856 
2857  ::operations_research::ConstraintSolverParameters* temp = solver_parameters_;
2858  solver_parameters_ = nullptr;
2859  return temp;
2860 }
2861 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::_internal_mutable_solver_parameters() {
2862 
2863  if (solver_parameters_ == nullptr) {
2864  auto* p = CreateMaybeMessage<::operations_research::ConstraintSolverParameters>(GetArena());
2865  solver_parameters_ = p;
2866  }
2867  return solver_parameters_;
2868 }
2869 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::mutable_solver_parameters() {
2870  // @@protoc_insertion_point(field_mutable:operations_research.RoutingModelParameters.solver_parameters)
2871  return _internal_mutable_solver_parameters();
2872 }
2873 inline void RoutingModelParameters::set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters* solver_parameters) {
2874  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2875  if (message_arena == nullptr) {
2876  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(solver_parameters_);
2877  }
2878  if (solver_parameters) {
2879  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2880  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(solver_parameters)->GetArena();
2881  if (message_arena != submessage_arena) {
2882  solver_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2883  message_arena, solver_parameters, submessage_arena);
2884  }
2885 
2886  } else {
2887 
2888  }
2889  solver_parameters_ = solver_parameters;
2890  // @@protoc_insertion_point(field_set_allocated:operations_research.RoutingModelParameters.solver_parameters)
2891 }
2892 
2893 // bool reduce_vehicle_cost_model = 2;
2894 inline void RoutingModelParameters::clear_reduce_vehicle_cost_model() {
2895  reduce_vehicle_cost_model_ = false;
2896 }
2897 inline bool RoutingModelParameters::_internal_reduce_vehicle_cost_model() const {
2898  return reduce_vehicle_cost_model_;
2899 }
2900 inline bool RoutingModelParameters::reduce_vehicle_cost_model() const {
2901  // @@protoc_insertion_point(field_get:operations_research.RoutingModelParameters.reduce_vehicle_cost_model)
2902  return _internal_reduce_vehicle_cost_model();
2903 }
2904 inline void RoutingModelParameters::_internal_set_reduce_vehicle_cost_model(bool value) {
2905 
2906  reduce_vehicle_cost_model_ = value;
2907 }
2908 inline void RoutingModelParameters::set_reduce_vehicle_cost_model(bool value) {
2909  _internal_set_reduce_vehicle_cost_model(value);
2910  // @@protoc_insertion_point(field_set:operations_research.RoutingModelParameters.reduce_vehicle_cost_model)
2911 }
2912 
2913 // int32 max_callback_cache_size = 3;
2914 inline void RoutingModelParameters::clear_max_callback_cache_size() {
2915  max_callback_cache_size_ = 0;
2916 }
2917 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingModelParameters::_internal_max_callback_cache_size() const {
2918  return max_callback_cache_size_;
2919 }
2920 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutingModelParameters::max_callback_cache_size() const {
2921  // @@protoc_insertion_point(field_get:operations_research.RoutingModelParameters.max_callback_cache_size)
2922  return _internal_max_callback_cache_size();
2923 }
2924 inline void RoutingModelParameters::_internal_set_max_callback_cache_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
2925 
2926  max_callback_cache_size_ = value;
2927 }
2928 inline void RoutingModelParameters::set_max_callback_cache_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
2929  _internal_set_max_callback_cache_size(value);
2930  // @@protoc_insertion_point(field_set:operations_research.RoutingModelParameters.max_callback_cache_size)
2931 }
2932 
2933 #ifdef __GNUC__
2934  #pragma GCC diagnostic pop
2935 #endif // __GNUC__
2936 // -------------------------------------------------------------------
2937 
2938 // -------------------------------------------------------------------
2939 
2940 
2941 // @@protoc_insertion_point(namespace_scope)
2942 
2943 } // namespace operations_research
2944 
2945 PROTOBUF_NAMESPACE_OPEN
2946 
2947 template <> struct is_proto_enum< ::operations_research::RoutingSearchParameters_SchedulingSolver> : ::std::true_type {};
2948 template <>
2949 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::RoutingSearchParameters_SchedulingSolver>() {
2951 }
2952 
2953 PROTOBUF_NAMESPACE_CLOSE
2954 
2955 // @@protoc_insertion_point(global_scope)
2956 
2957 #include <google/protobuf/port_undef.inc>
2958 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
operations_research::PROTOBUF_FINAL::solver_parameters
const ::operations_research::ConstraintSolverParameters & solver_parameters() const
operations_research::PROTOBUF_FINAL::set_log_search
void set_log_search(bool value)
operations_research::PROTOBUF_FINAL::use_or_opt
::operations_research::OptionalBoolean use_or_opt() const
operations_research::PROTOBUF_FINAL::clear_max_callback_cache_size
void clear_max_callback_cache_size()
descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
Definition: routing_parameters.pb.cc:305
operations_research::RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MIN
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MIN
Definition: routing_parameters.pb.h:88
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::field_metadata
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: routing_parameters.pb.h:57
operations_research::PROTOBUF_FINAL::internal_default_instance
static const RoutingSearchParameters * internal_default_instance()
Definition: routing_parameters.pb.h:623
operations_research::PROTOBUF_FINAL::has_local_search_operators
bool has_local_search_operators() const
operations_research::PROTOBUF_FINAL::clear_use_two_opt
void clear_use_two_opt()
operations_research::PROTOBUF_FINAL::release_local_search_operators
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * release_local_search_operators()
operations_research::PROTOBUF_FINAL::set_log_tag
void set_log_tag(std::string &&value)
operations_research::PROTOBUF_FINAL::MergeFrom
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
operations_research::PROTOBUF_FINAL::use_cross
::operations_research::OptionalBoolean use_cross() const
min
int64 min
Definition: alldiff_cst.cc:138
operations_research::PROTOBUF_FINAL::use_tsp_opt
::operations_research::OptionalBoolean use_tsp_opt() const
operations_research::PROTOBUF_FINAL::clear_solution_limit
void clear_solution_limit()
operations_research::PROTOBUF_FINAL::christofides_use_minimum_matching
bool christofides_use_minimum_matching() const
operations_research::_RoutingSearchParameters_LocalSearchNeighborhoodOperators_default_instance_
class operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperatorsDefaultTypeInternal _RoutingSearchParameters_LocalSearchNeighborhoodOperators_default_instance_
Definition: routing_parameters.pb.h:70
operations_research::RoutingModelParametersDefaultTypeInternal
Definition: routing_parameters.pb.cc:29
operations_research::PROTOBUF_FINAL::set_use_swap_active
void set_use_swap_active(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::~RoutingModelParameters
virtual ~RoutingModelParameters()
operations_research::PROTOBUF_FINAL::set_allocated_local_search_operators
void set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *local_search_operators)
max
int64 max
Definition: alldiff_cst.cc:139
operations_research::PROTOBUF_FINAL::guided_local_search_lambda_coefficient
double guided_local_search_lambda_coefficient() const
operations_research::PROTOBUF_FINAL::set_savings_neighbors_ratio
void set_savings_neighbors_ratio(double value)
operations_research::PROTOBUF_FINAL::set_allocated_time_limit
void set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration *time_limit)
operations_research::PROTOBUF_FINAL::set_savings_arc_coefficient
void set_savings_arc_coefficient(double value)
operations_research::PROTOBUF_FINAL::MergeFrom
void MergeFrom(const RoutingModelParameters &from)
operations_research::PROTOBUF_FINAL::Swap
void Swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators *other)
Definition: routing_parameters.pb.h:155
operations_research::PROTOBUF_FINAL::set_use_local_cheapest_insertion_close_nodes_lns
void set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_make_chain_inactive
void clear_use_make_chain_inactive()
operations_research::PROTOBUF_FINAL::continuous_scheduling_solver
::operations_research::RoutingSearchParameters_SchedulingSolver continuous_scheduling_solver() const
operations_research::PROTOBUF_FINAL::use_global_cheapest_insertion_expensive_chain_lns
::operations_research::OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns() const
operations_research::PROTOBUF_FINAL::heuristic_expensive_chain_lns_num_arcs_to_consider
::PROTOBUF_NAMESPACE_ID::int32 heuristic_expensive_chain_lns_num_arcs_to_consider() const
operations_research::PROTOBUF_FINAL::set_number_of_solutions_to_collect
void set_number_of_solutions_to_collect(::PROTOBUF_NAMESPACE_ID::int32 value)
operations_research::RoutingSearchParameters_SchedulingSolver_Parse
bool RoutingSearchParameters_SchedulingSolver_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RoutingSearchParameters_SchedulingSolver *value)
Definition: routing_parameters.pb.h:101
operations_research::PROTOBUF_FINAL::has_solver_parameters
bool has_solver_parameters() const
operations_research::PROTOBUF_FINAL::use_cross_exchange
::operations_research::OptionalBoolean use_cross_exchange() const
operations_research::PROTOBUF_FINAL::use_two_opt
::operations_research::OptionalBoolean use_two_opt() const
operations_research::PROTOBUF_FINAL::cheapest_insertion_farthest_seeds_ratio
double cheapest_insertion_farthest_seeds_ratio() const
operations_research::PROTOBUF_FINAL::clear_savings_add_reverse_arcs
void clear_savings_add_reverse_arcs()
operations_research::PROTOBUF_FINAL::set_log_tag
void set_log_tag(const char *value, size_t size)
operations_research::PROTOBUF_FINAL::clear_log_tag
void clear_log_tag()
operations_research::PROTOBUF_FINAL::clear_use_cp_sat
void clear_use_cp_sat()
operations_research::PROTOBUF_FINAL::use_make_active
::operations_research::OptionalBoolean use_make_active() const
operations_research::PROTOBUF_FINAL::cheapest_insertion_first_solution_neighbors_ratio
double cheapest_insertion_first_solution_neighbors_ratio() const
operations_research::PROTOBUF_FINAL::lns_time_limit
const PROTOBUF_NAMESPACE_ID::Duration & lns_time_limit() const
operations_research::PROTOBUF_FINAL::set_first_solution_strategy
void set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value)
operations_research::RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MIN_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MIN_SENTINEL_DO_NOT_USE_
Definition: routing_parameters.pb.h:84
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::PROTOBUF_SECTION_VARIABLE
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
operations_research::PROTOBUF_FINAL::Clear
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
operations_research::PROTOBUF_FINAL::clear_savings_arc_coefficient
void clear_savings_arc_coefficient()
operations_research::PROTOBUF_FINAL::MergeFrom
void MergeFrom(const RoutingSearchParameters &from)
operations_research::PROTOBUF_FINAL::clear_mixed_integer_scheduling_solver
void clear_mixed_integer_scheduling_solver()
operations_research::PROTOBUF_FINAL::New
RoutingModelParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: routing_parameters.pb.h:1199
operations_research::PROTOBUF_FINAL::use_local_cheapest_insertion_close_nodes_lns
::operations_research::OptionalBoolean use_local_cheapest_insertion_close_nodes_lns() const
operations_research::PROTOBUF_FINAL::use_path_lns
::operations_research::OptionalBoolean use_path_lns() const
operations_research::PROTOBUF_FINAL::clear_log_cost_scaling_factor
void clear_log_cost_scaling_factor()
operations_research::PROTOBUF_FINAL::~RoutingSearchParameters
virtual ~RoutingSearchParameters()
operations_research::PROTOBUF_FINAL::SchedulingSolver_descriptor
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SchedulingSolver_descriptor()
Definition: routing_parameters.pb.h:715
operations_research::PROTOBUF_FINAL::set_use_inactive_lns
void set_use_inactive_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::RoutingSearchParameters
RoutingSearchParameters(const RoutingSearchParameters &from)
operations_research::PROTOBUF_FINAL::set_use_extended_swap_active
void set_use_extended_swap_active(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_savings_parallel_routes
void clear_savings_parallel_routes()
value
int64 value
Definition: demon_profiler.cc:43
operations_research::PROTOBUF_FINAL::unsafe_arena_set_allocated_lns_time_limit
void unsafe_arena_set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration *lns_time_limit)
operations_research::PROTOBUF_FINAL::SchedulingSolver_Parse
static bool SchedulingSolver_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SchedulingSolver *value)
Definition: routing_parameters.pb.h:725
operations_research::PROTOBUF_FINAL::New
RoutingSearchParameters_LocalSearchNeighborhoodOperators * New() const final
Definition: routing_parameters.pb.h:171
operations_research::PROTOBUF_FINAL::set_heuristic_close_nodes_lns_num_nodes
void set_heuristic_close_nodes_lns_num_nodes(::PROTOBUF_NAMESPACE_ID::int32 value)
operations_research::PROTOBUF_FINAL::use_cp
::operations_research::OptionalBoolean use_cp() const
operations_research::PROTOBUF_FINAL::time_limit
const PROTOBUF_NAMESPACE_ID::Duration & time_limit() const
operations_research::PROTOBUF_FINAL::clear_use_depth_first_search
void clear_use_depth_first_search()
operations_research::PROTOBUF_FINAL::set_use_node_pair_swap_active
void set_use_node_pair_swap_active(::operations_research::OptionalBoolean value)
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
Definition: routing_parameters.pb.h:50
operations_research::PROTOBUF_FINAL::set_use_relocate_subtrip
void set_use_relocate_subtrip(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_path_lns
void clear_use_path_lns()
operations_research
The vehicle routing library lets one model and solve generic vehicle routing problems ranging from th...
Definition: dense_doubly_linked_list.h:21
operations_research::PROTOBUF_FINAL::max_callback_cache_size
::PROTOBUF_NAMESPACE_ID::int32 max_callback_cache_size() const
operations_research::PROTOBUF_FINAL::set_use_local_cheapest_insertion_expensive_chain_lns
void set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_global_cheapest_insertion_expensive_chain_lns
void clear_use_global_cheapest_insertion_expensive_chain_lns()
operations_research::PROTOBUF_FINAL::use_make_chain_inactive
::operations_research::OptionalBoolean use_make_chain_inactive() const
operations_research::PROTOBUF_FINAL::clear_savings_neighbors_ratio
void clear_savings_neighbors_ratio()
operations_research::PROTOBUF_FINAL::unsafe_arena_set_allocated_solver_parameters
void unsafe_arena_set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *solver_parameters)
operations_research::PROTOBUF_FINAL::clear_use_full_propagation
void clear_use_full_propagation()
operations_research::PROTOBUF_FINAL::clear_heuristic_close_nodes_lns_num_nodes
void clear_heuristic_close_nodes_lns_num_nodes()
operations_research::PROTOBUF_FINAL::set_max_callback_cache_size
void set_max_callback_cache_size(::PROTOBUF_NAMESPACE_ID::int32 value)
operations_research::PROTOBUF_FINAL::log_search
bool log_search() const
operations_research::PROTOBUF_FINAL::LocalSearchNeighborhoodOperators
RoutingSearchParameters_LocalSearchNeighborhoodOperators LocalSearchNeighborhoodOperators
Definition: routing_parameters.pb.h:696
operations_research::PROTOBUF_FINAL::clear_use_global_cheapest_insertion_close_nodes_lns
void clear_use_global_cheapest_insertion_close_nodes_lns()
operations_research::PROTOBUF_FINAL::set_use_global_cheapest_insertion_close_nodes_lns
void set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::set_use_or_opt
void set_use_or_opt(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_local_cheapest_insertion_expensive_chain_lns
void clear_use_local_cheapest_insertion_expensive_chain_lns()
operations_research::PROTOBUF_FINAL::RoutingModelParameters
RoutingModelParameters(RoutingModelParameters &&from) noexcept
Definition: routing_parameters.pb.h:1139
operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators
operations_research::PROTOBUF_FINAL::unsafe_arena_release_lns_time_limit
PROTOBUF_NAMESPACE_ID::Duration * unsafe_arena_release_lns_time_limit()
operations_research::PROTOBUF_FINAL::clear_use_unfiltered_first_solution_strategy
void clear_use_unfiltered_first_solution_strategy()
operations_research::PROTOBUF_FINAL::set_use_tsp_opt
void set_use_tsp_opt(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::~RoutingSearchParameters_LocalSearchNeighborhoodOperators
virtual ~RoutingSearchParameters_LocalSearchNeighborhoodOperators()
operations_research::RoutingSearchParameters_SchedulingSolver_IsValid
bool RoutingSearchParameters_SchedulingSolver_IsValid(int value)
Definition: routing_parameters.pb.cc:319
operations_research::PROTOBUF_FINAL::RoutingSearchParameters
RoutingSearchParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
operations_research::PROTOBUF_FINAL::use_depth_first_search
bool use_depth_first_search() const
operations_research::PROTOBUF_FINAL::savings_neighbors_ratio
double savings_neighbors_ratio() const
operations_research::PROTOBUF_FINAL::set_use_full_propagation
void set_use_full_propagation(bool value)
int64
int64_t int64
Definition: integral_types.h:34
routing_enums.pb.h
operations_research::PROTOBUF_FINAL::set_use_tsp_lns
void set_use_tsp_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::internal_default_instance
static const RoutingSearchParameters_LocalSearchNeighborhoodOperators * internal_default_instance()
Definition: routing_parameters.pb.h:145
operations_research::PROTOBUF_FINAL::use_lin_kernighan
::operations_research::OptionalBoolean use_lin_kernighan() const
operations_research::_RoutingModelParameters_default_instance_
class operations_research::RoutingModelParametersDefaultTypeInternal _RoutingModelParameters_default_instance_
Definition: routing_parameters.pb.h:64
operations_research::PROTOBUF_FINAL::SchedulingSolver_IsValid
static bool SchedulingSolver_IsValid(int value)
Definition: routing_parameters.pb.h:705
operations_research::PROTOBUF_FINAL::set_use_global_cheapest_insertion_expensive_chain_lns
void set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::RoutingSearchParameters_LocalSearchNeighborhoodOperators
RoutingSearchParameters_LocalSearchNeighborhoodOperators(RoutingSearchParameters_LocalSearchNeighborhoodOperators &&from) noexcept
Definition: routing_parameters.pb.h:115
operations_research::RoutingSearchParameters_SchedulingSolver_Name
const std::string & RoutingSearchParameters_SchedulingSolver_Name(T enum_t_value)
Definition: routing_parameters.pb.h:94
int32
int int32
Definition: integral_types.h:33
operations_research::PROTOBUF_FINAL::savings_arc_coefficient
double savings_arc_coefficient() const
operations_research::PROTOBUF_FINAL::savings_add_reverse_arcs
bool savings_add_reverse_arcs() const
operations_research::PROTOBUF_FINAL::mutable_log_tag
std::string * mutable_log_tag()
operations_research::PROTOBUF_FINAL::descriptor
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: routing_parameters.pb.h:133
operations_research::PROTOBUF_FINAL::default_instance
static const RoutingSearchParameters & default_instance()
operations_research::PROTOBUF_FINAL::clear_cheapest_insertion_first_solution_neighbors_ratio
void clear_cheapest_insertion_first_solution_neighbors_ratio()
operations_research::PROTOBUF_FINAL::clear_savings_max_memory_usage_bytes
void clear_savings_max_memory_usage_bytes()
operations_research::PROTOBUF_FINAL::UnsafeArenaSwap
void UnsafeArenaSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators *other)
Definition: routing_parameters.pb.h:163
operations_research::PROTOBUF_FINAL::UnsafeArenaSwap
void UnsafeArenaSwap(RoutingModelParameters *other)
Definition: routing_parameters.pb.h:1187
operations_research::PROTOBUF_FINAL::set_log_cost_offset
void set_log_cost_offset(double value)
a
int64 a
Definition: constraint_solver/table.cc:42
operations_research::PROTOBUF_FINAL::set_use_path_lns
void set_use_path_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_exchange_pair
void clear_use_exchange_pair()
operations_research::PROTOBUF_FINAL::cheapest_insertion_ls_operator_neighbors_ratio
double cheapest_insertion_ls_operator_neighbors_ratio() const
operations_research::PROTOBUF_FINAL::clear_use_local_cheapest_insertion_path_lns
void clear_use_local_cheapest_insertion_path_lns()
operations_research::PROTOBUF_FINAL::savings_parallel_routes
bool savings_parallel_routes() const
operations_research::PROTOBUF_FINAL::mixed_integer_scheduling_solver
::operations_research::RoutingSearchParameters_SchedulingSolver mixed_integer_scheduling_solver() const
operations_research::_RoutingSearchParameters_default_instance_
class operations_research::RoutingSearchParametersDefaultTypeInternal _RoutingSearchParameters_default_instance_
Definition: routing_parameters.pb.h:67
operations_research::PROTOBUF_FINAL::use_relocate_neighbors
::operations_research::OptionalBoolean use_relocate_neighbors() const
operations_research::PROTOBUF_FINAL::heuristic_close_nodes_lns_num_nodes
::PROTOBUF_NAMESPACE_ID::int32 heuristic_close_nodes_lns_num_nodes() const
operations_research::PROTOBUF_FINAL::default_instance
static const RoutingSearchParameters_LocalSearchNeighborhoodOperators & default_instance()
operations_research::PROTOBUF_FINAL::New
RoutingModelParameters * New() const final
Definition: routing_parameters.pb.h:1195
operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperatorsDefaultTypeInternal
Definition: routing_parameters.pb.cc:21
operations_research::PROTOBUF_FINAL::mutable_solver_parameters
::operations_research::ConstraintSolverParameters * mutable_solver_parameters()
operations_research::PROTOBUF_FINAL::set_use_light_relocate_pair
void set_use_light_relocate_pair(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::internal_default_instance
static const RoutingModelParameters * internal_default_instance()
Definition: routing_parameters.pb.h:1169
operations_research::PROTOBUF_FINAL::set_optimization_step
void set_optimization_step(double value)
time_limit
SharedTimeLimit * time_limit
Definition: cp_model_solver.cc:2025
operations_research::PROTOBUF_FINAL::set_use_make_chain_inactive
void set_use_make_chain_inactive(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::set_heuristic_expensive_chain_lns_num_arcs_to_consider
void set_heuristic_expensive_chain_lns_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value)
operations_research::RoutingSearchParameters_SchedulingSolver_GLOP
@ RoutingSearchParameters_SchedulingSolver_GLOP
Definition: routing_parameters.pb.h:82
operations_research::PROTOBUF_FINAL::clear_use_relocate_expensive_chain
void clear_use_relocate_expensive_chain()
operations_research::RoutingSearchParameters_SchedulingSolver_CP_SAT
@ RoutingSearchParameters_SchedulingSolver_CP_SAT
Definition: routing_parameters.pb.h:83
operations_research::PROTOBUF_FINAL::swap
friend void swap(RoutingSearchParameters &a, RoutingSearchParameters &b)
Definition: routing_parameters.pb.h:630
operations_research::PROTOBUF_FINAL::release_log_tag
std::string * release_log_tag()
operations_research::PROTOBUF_FINAL::clear_use_full_path_lns
void clear_use_full_path_lns()
uint32
unsigned int uint32
Definition: integral_types.h:38
operations_research::PROTOBUF_FINAL::UnsafeArenaSwap
void UnsafeArenaSwap(RoutingSearchParameters *other)
Definition: routing_parameters.pb.h:641
operations_research::PROTOBUF_FINAL::use_relocate_subtrip
::operations_research::OptionalBoolean use_relocate_subtrip() const
operations_research::PROTOBUF_FINAL::clear_guided_local_search_lambda_coefficient
void clear_guided_local_search_lambda_coefficient()
operations_research::PROTOBUF_FINAL::set_log_tag
void set_log_tag(const std::string &value)
operations_research::PROTOBUF_FINAL::release_solver_parameters
::operations_research::ConstraintSolverParameters * release_solver_parameters()
operations_research::PROTOBUF_FINAL::operator=
RoutingModelParameters & operator=(RoutingModelParameters &&from) noexcept
Definition: routing_parameters.pb.h:1148
operations_research::PROTOBUF_FINAL::set_use_exchange_subtrip
void set_use_exchange_subtrip(::operations_research::OptionalBoolean value)
operations_research::LocalSearchMetaheuristic_Value
LocalSearchMetaheuristic_Value
Definition: routing_enums.pb.h:111
operations_research::PROTOBUF_FINAL::New
RoutingSearchParameters * New() const final
Definition: routing_parameters.pb.h:649
operations_research::PROTOBUF_FINAL::set_use_global_cheapest_insertion_path_lns
void set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::CopyFrom
void CopyFrom(const RoutingSearchParameters &from)
operations_research::PROTOBUF_FINAL::set_guided_local_search_lambda_coefficient
void set_guided_local_search_lambda_coefficient(double value)
operations_research::PROTOBUF_FINAL::use_make_inactive
::operations_research::OptionalBoolean use_make_inactive() const
operations_research::PROTOBUF_FINAL::set_use_cross_exchange
void set_use_cross_exchange(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_local_search_metaheuristic
void clear_local_search_metaheuristic()
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::PROTOBUF_SECTION_VARIABLE
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
operations_research::PROTOBUF_FINAL::set_allocated_solver_parameters
void set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *solver_parameters)
operations_research::PROTOBUF_FINAL::use_node_pair_swap_active
::operations_research::OptionalBoolean use_node_pair_swap_active() const
operations_research::PROTOBUF_FINAL::set_continuous_scheduling_solver
void set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
operations_research::PROTOBUF_FINAL::swap
friend void swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators &a, RoutingSearchParameters_LocalSearchNeighborhoodOperators &b)
Definition: routing_parameters.pb.h:152
operations_research::PROTOBUF_FINAL::local_search_metaheuristic
::operations_research::LocalSearchMetaheuristic_Value local_search_metaheuristic() const
operations_research::PROTOBUF_FINAL::clear_use_swap_active
void clear_use_swap_active()
operations_research::PROTOBUF_FINAL::clear_lns_time_limit
void clear_lns_time_limit()
operations_research::PROTOBUF_FINAL::Swap
void Swap(RoutingModelParameters *other)
Definition: routing_parameters.pb.h:1179
operations_research::PROTOBUF_FINAL::clear_use_cross
void clear_use_cross()
operations_research::PROTOBUF_FINAL::log_cost_offset
double log_cost_offset() const
operations_research::PROTOBUF_FINAL::clear_use_light_relocate_pair
void clear_use_light_relocate_pair()
operations_research::PROTOBUF_FINAL::set_savings_add_reverse_arcs
void set_savings_add_reverse_arcs(bool value)
operations_research::PROTOBUF_FINAL::set_christofides_use_minimum_matching
void set_christofides_use_minimum_matching(bool value)
operations_research::PROTOBUF_FINAL::operator=
RoutingSearchParameters & operator=(RoutingSearchParameters &&from) noexcept
Definition: routing_parameters.pb.h:602
operations_research::PROTOBUF_FINAL::set_use_exchange
void set_use_exchange(::operations_research::OptionalBoolean value)
operations_research::ConstraintSolverParameters
operations_research::PROTOBUF_FINAL::clear_use_relocate_pair
void clear_use_relocate_pair()
operations_research::RoutingSearchParameters_SchedulingSolver_UNSET
@ RoutingSearchParameters_SchedulingSolver_UNSET
Definition: routing_parameters.pb.h:81
operations_research::PROTOBUF_FINAL::SchedulingSolver
RoutingSearchParameters_SchedulingSolver SchedulingSolver
Definition: routing_parameters.pb.h:698
operations_research::PROTOBUF_FINAL::set_cheapest_insertion_farthest_seeds_ratio
void set_cheapest_insertion_farthest_seeds_ratio(double value)
operations_research::RoutingSearchParametersDefaultTypeInternal
Definition: routing_parameters.pb.cc:25
operations_research::PROTOBUF_FINAL::clear_continuous_scheduling_solver
void clear_continuous_scheduling_solver()
operations_research::PROTOBUF_FINAL::clear_heuristic_expensive_chain_lns_num_arcs_to_consider
void clear_heuristic_expensive_chain_lns_num_arcs_to_consider()
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::serialization_table
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: routing_parameters.pb.h:58
operations_research::PROTOBUF_FINAL::set_cheapest_insertion_first_solution_neighbors_ratio
void set_cheapest_insertion_first_solution_neighbors_ratio(double value)
operations_research::PROTOBUF_FINAL::use_relocate_pair
::operations_research::OptionalBoolean use_relocate_pair() const
operations_research::PROTOBUF_FINAL::clear_use_exchange
void clear_use_exchange()
operations_research::PROTOBUF_FINAL::RoutingSearchParameters
RoutingSearchParameters(RoutingSearchParameters &&from) noexcept
Definition: routing_parameters.pb.h:593
operations_research::PROTOBUF_FINAL::New
RoutingSearchParameters_LocalSearchNeighborhoodOperators * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: routing_parameters.pb.h:175
operations_research::PROTOBUF_FINAL::set_use_unfiltered_first_solution_strategy
void set_use_unfiltered_first_solution_strategy(bool value)
operations_research::PROTOBUF_FINAL::use_extended_swap_active
::operations_research::OptionalBoolean use_extended_swap_active() const
operations_research::PROTOBUF_FINAL::operator=
RoutingModelParameters & operator=(const RoutingModelParameters &from)
Definition: routing_parameters.pb.h:1144
operations_research::PROTOBUF_FINAL::set_reduce_vehicle_cost_model
void set_reduce_vehicle_cost_model(bool value)
operations_research::_ConstraintSolverParameters_default_instance_
class operations_research::ConstraintSolverParametersDefaultTypeInternal _ConstraintSolverParameters_default_instance_
Definition: solver_parameters.pb.h:60
operations_research::PROTOBUF_FINAL::use_cp_sat
::operations_research::OptionalBoolean use_cp_sat() const
operations_research::PROTOBUF_FINAL::clear_cheapest_insertion_farthest_seeds_ratio
void clear_cheapest_insertion_farthest_seeds_ratio()
operations_research::PROTOBUF_FINAL::clear_use_tsp_lns
void clear_use_tsp_lns()
operations_research::PROTOBUF_FINAL::set_use_local_cheapest_insertion_path_lns
void set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::optimization_step
double optimization_step() const
operations_research::PROTOBUF_FINAL::GetMetadata
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
operations_research::PROTOBUF_FINAL::RoutingSearchParameters
RoutingSearchParameters()
Definition: routing_parameters.pb.h:589
operations_research::RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MAX_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MAX_SENTINEL_DO_NOT_USE_
Definition: routing_parameters.pb.h:85
operations_research::PROTOBUF_FINAL::clear_reduce_vehicle_cost_model
void clear_reduce_vehicle_cost_model()
operations_research::PROTOBUF_FINAL::set_cheapest_insertion_ls_operator_neighbors_ratio
void set_cheapest_insertion_ls_operator_neighbors_ratio(double value)
operations_research::PROTOBUF_FINAL
Definition: assignment.pb.h:86
operations_research::PROTOBUF_FINAL::set_use_relocate_and_make_active
void set_use_relocate_and_make_active(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::set_use_make_inactive
void set_use_make_inactive(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::solution_limit
::PROTOBUF_NAMESPACE_ID::int64 solution_limit() const
operations_research::PROTOBUF_FINAL::set_use_cp_sat
void set_use_cp_sat(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_use_cross_exchange
void clear_use_cross_exchange()
operations_research::PROTOBUF_FINAL::use_global_cheapest_insertion_path_lns
::operations_research::OptionalBoolean use_global_cheapest_insertion_path_lns() const
operations_research::PROTOBUF_FINAL::clear_use_relocate
void clear_use_relocate()
operations_research::PROTOBUF_FINAL::set_savings_max_memory_usage_bytes
void set_savings_max_memory_usage_bytes(double value)
operations_research::PROTOBUF_FINAL::clear_use_tsp_opt
void clear_use_tsp_opt()
operations_research::PROTOBUF_FINAL::use_local_cheapest_insertion_path_lns
::operations_research::OptionalBoolean use_local_cheapest_insertion_path_lns() const
operations_research::PROTOBUF_FINAL::unsafe_arena_release_local_search_operators
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * unsafe_arena_release_local_search_operators()
operations_research::PROTOBUF_FINAL::set_use_lin_kernighan
void set_use_lin_kernighan(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::mutable_lns_time_limit
PROTOBUF_NAMESPACE_ID::Duration * mutable_lns_time_limit()
operations_research::PROTOBUF_FINAL::set_use_relocate_expensive_chain
void set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::set_use_relocate_neighbors
void set_use_relocate_neighbors(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::operator=
RoutingSearchParameters_LocalSearchNeighborhoodOperators & operator=(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
Definition: routing_parameters.pb.h:120
operations_research::PROTOBUF_FINAL::use_relocate
::operations_research::OptionalBoolean use_relocate() const
operations_research::PROTOBUF_FINAL::use_global_cheapest_insertion_close_nodes_lns
::operations_research::OptionalBoolean use_global_cheapest_insertion_close_nodes_lns() const
operations_research::PROTOBUF_FINAL::set_use_exchange_pair
void set_use_exchange_pair(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::clear_time_limit
void clear_time_limit()
operations_research::PROTOBUF_FINAL::CopyFrom
void CopyFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
operations_research::PROTOBUF_FINAL::CopyFrom
void CopyFrom(const RoutingModelParameters &from)
operations_research::PROTOBUF_FINAL::set_use_full_path_lns
void set_use_full_path_lns(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::reduce_vehicle_cost_model
bool reduce_vehicle_cost_model() const
operations_research::PROTOBUF_FINAL::clear_first_solution_strategy
void clear_first_solution_strategy()
operations_research::PROTOBUF_FINAL::use_full_propagation
bool use_full_propagation() const
operations_research::PROTOBUF_FINAL::use_inactive_lns
::operations_research::OptionalBoolean use_inactive_lns() const
operations_research::PROTOBUF_FINAL::has_lns_time_limit
bool has_lns_time_limit() const
operations_research::PROTOBUF_FINAL::RoutingSearchParameters_LocalSearchNeighborhoodOperators
RoutingSearchParameters_LocalSearchNeighborhoodOperators(::PROTOBUF_NAMESPACE_ID::Arena *arena)
operations_research::PROTOBUF_FINAL::unsafe_arena_set_allocated_time_limit
void unsafe_arena_set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration *time_limit)
operations_research::PROTOBUF_FINAL::New
RoutingSearchParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: routing_parameters.pb.h:653
operations_research::PROTOBUF_FINAL::set_savings_parallel_routes
void set_savings_parallel_routes(bool value)
operations_research::PROTOBUF_FINAL::set_use_cp
void set_use_cp(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::use_light_relocate_pair
::operations_research::OptionalBoolean use_light_relocate_pair() const
operations_research::PROTOBUF_FINAL::GetDescriptor
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: routing_parameters.pb.h:136
operations_research::PROTOBUF_FINAL::swap
friend void swap(RoutingModelParameters &a, RoutingModelParameters &b)
Definition: routing_parameters.pb.h:1176
operations_research::PROTOBUF_FINAL::set_log_tag
void set_log_tag(const char *value)
operations_research::PROTOBUF_FINAL::set_local_search_metaheuristic
void set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value)
operations_research::PROTOBUF_FINAL::Swap
void Swap(RoutingSearchParameters *other)
Definition: routing_parameters.pb.h:633
uint8
unsigned char uint8
Definition: integral_types.h:36
operations_research::PROTOBUF_FINAL::first_solution_strategy
::operations_research::FirstSolutionStrategy_Value first_solution_strategy() const
operations_research::PROTOBUF_FINAL::release_lns_time_limit
PROTOBUF_NAMESPACE_ID::Duration * release_lns_time_limit()
operations_research::PROTOBUF_FINAL::clear_number_of_solutions_to_collect
void clear_number_of_solutions_to_collect()
optional_boolean.pb.h
operations_research::PROTOBUF_FINAL::RoutingModelParameters
RoutingModelParameters(const RoutingModelParameters &from)
operations_research::PROTOBUF_FINAL::clear_use_extended_swap_active
void clear_use_extended_swap_active()
operations_research::PROTOBUF_FINAL::use_exchange_pair
::operations_research::OptionalBoolean use_exchange_pair() const
operations_research::PROTOBUF_FINAL::GetReflection
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: routing_parameters.pb.h:139
operations_research::PROTOBUF_FINAL::set_use_two_opt
void set_use_two_opt(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::number_of_solutions_to_collect
::PROTOBUF_NAMESPACE_ID::int32 number_of_solutions_to_collect() const
operations_research::PROTOBUF_FINAL::clear_solver_parameters
void clear_solver_parameters()
operations_research::PROTOBUF_FINAL::log_cost_scaling_factor
double log_cost_scaling_factor() const
operations_research::RoutingSearchParameters_SchedulingSolver_descriptor
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * RoutingSearchParameters_SchedulingSolver_descriptor()
Definition: routing_parameters.pb.cc:315
operations_research::PROTOBUF_FINAL::clear_use_make_active
void clear_use_make_active()
operations_research::PROTOBUF_FINAL::RoutingSearchParameters_LocalSearchNeighborhoodOperators
RoutingSearchParameters_LocalSearchNeighborhoodOperators(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
operations_research::PROTOBUF_FINAL::InitAsDefaultInstance
static void InitAsDefaultInstance()
b
int64 b
Definition: constraint_solver/table.cc:43
operations_research::PROTOBUF_FINAL::mutable_time_limit
PROTOBUF_NAMESPACE_ID::Duration * mutable_time_limit()
operations_research::PROTOBUF_FINAL::log_tag
const std::string & log_tag() const
operations_research::PROTOBUF_FINAL::set_allocated_lns_time_limit
void set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration *lns_time_limit)
operations_research::RoutingSearchParameters_SchedulingSolver
RoutingSearchParameters_SchedulingSolver
Definition: routing_parameters.pb.h:80
operations_research::PROTOBUF_FINAL::clear_log_search
void clear_log_search()
operations_research::PROTOBUF_FINAL::clear_local_search_operators
void clear_local_search_operators()
operations_research::PROTOBUF_FINAL::set_solution_limit
void set_solution_limit(::PROTOBUF_NAMESPACE_ID::int64 value)
operations_research::PROTOBUF_FINAL::clear_use_cp
void clear_use_cp()
internal
Definition: bop_parameters.pb.h:40
operations_research::PROTOBUF_FINAL::clear_use_exchange_subtrip
void clear_use_exchange_subtrip()
operations_research::PROTOBUF_FINAL::use_local_cheapest_insertion_expensive_chain_lns
::operations_research::OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns() const
operations_research::PROTOBUF_FINAL::clear_relocate_expensive_chain_num_arcs_to_consider
void clear_relocate_expensive_chain_num_arcs_to_consider()
operations_research::PROTOBUF_FINAL::clear_use_inactive_lns
void clear_use_inactive_lns()
operations_research::PROTOBUF_FINAL::clear_optimization_step
void clear_optimization_step()
operations_research::PROTOBUF_FINAL::CopyFrom
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
operations_research::PROTOBUF_FINAL::operator=
RoutingSearchParameters & operator=(const RoutingSearchParameters &from)
Definition: routing_parameters.pb.h:598
operations_research::PROTOBUF_FINAL::unsafe_arena_release_time_limit
PROTOBUF_NAMESPACE_ID::Duration * unsafe_arena_release_time_limit()
operations_research::PROTOBUF_FINAL::clear_use_or_opt
void clear_use_or_opt()
operations_research::PROTOBUF_FINAL::relocate_expensive_chain_num_arcs_to_consider
::PROTOBUF_NAMESPACE_ID::int32 relocate_expensive_chain_num_arcs_to_consider() const
operations_research::RoutingSearchParameters_SchedulingSolver_SchedulingSolver_ARRAYSIZE
constexpr int RoutingSearchParameters_SchedulingSolver_SchedulingSolver_ARRAYSIZE
Definition: routing_parameters.pb.h:90
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::offsets
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: routing_parameters.pb.h:59
operations_research::PROTOBUF_FINAL::clear_cheapest_insertion_ls_operator_neighbors_ratio
void clear_cheapest_insertion_ls_operator_neighbors_ratio()
operations_research::PROTOBUF_FINAL::MergeFrom
void MergeFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
operations_research::PROTOBUF_FINAL::set_use_relocate
void set_use_relocate(::operations_research::OptionalBoolean value)
operations_research::FirstSolutionStrategy_Value
FirstSolutionStrategy_Value
Definition: routing_enums.pb.h:72
operations_research::RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MAX
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MAX
Definition: routing_parameters.pb.h:89
operations_research::PROTOBUF_FINAL::clear_log_cost_offset
void clear_log_cost_offset()
operations_research::PROTOBUF_FINAL::has_time_limit
bool has_time_limit() const
operations_research::PROTOBUF_FINAL::set_use_cross
void set_use_cross(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::use_exchange
::operations_research::OptionalBoolean use_exchange() const
operations_research::PROTOBUF_FINAL::use_unfiltered_first_solution_strategy
bool use_unfiltered_first_solution_strategy() const
operations_research::PROTOBUF_FINAL::set_mixed_integer_scheduling_solver
void set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
operations_research::PROTOBUF_FINAL::use_relocate_and_make_active
::operations_research::OptionalBoolean use_relocate_and_make_active() const
operations_research::PROTOBUF_FINAL::clear_christofides_use_minimum_matching
void clear_christofides_use_minimum_matching()
operations_research::PROTOBUF_FINAL::use_swap_active
::operations_research::OptionalBoolean use_swap_active() const
operations_research::PROTOBUF_FINAL::unsafe_arena_release_solver_parameters
::operations_research::ConstraintSolverParameters * unsafe_arena_release_solver_parameters()
operations_research::PROTOBUF_FINAL::clear_use_relocate_and_make_active
void clear_use_relocate_and_make_active()
operations_research::PROTOBUF_FINAL::use_relocate_expensive_chain
::operations_research::OptionalBoolean use_relocate_expensive_chain() const
operations_research::PROTOBUF_FINAL::set_use_make_active
void set_use_make_active(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::use_tsp_lns
::operations_research::OptionalBoolean use_tsp_lns() const
operations_research::PROTOBUF_FINAL::set_allocated_log_tag
void set_allocated_log_tag(std::string *log_tag)
operations_research::PROTOBUF_FINAL::set_use_relocate_pair
void set_use_relocate_pair(::operations_research::OptionalBoolean value)
operations_research::PROTOBUF_FINAL::RoutingModelParameters
RoutingModelParameters()
Definition: routing_parameters.pb.h:1135
operations_research::PROTOBUF_FINAL::clear_use_node_pair_swap_active
void clear_use_node_pair_swap_active()
operations_research::PROTOBUF_FINAL::unsafe_arena_set_allocated_local_search_operators
void unsafe_arena_set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *local_search_operators)
name
const std::string name
Definition: default_search.cc:807
operations_research::OptionalBoolean
OptionalBoolean
Definition: optional_boolean.pb.h:60
operations_research::PROTOBUF_FINAL::local_search_operators
const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators & local_search_operators() const
operations_research::PROTOBUF_FINAL::savings_max_memory_usage_bytes
double savings_max_memory_usage_bytes() const
operations_research::PROTOBUF_FINAL::set_log_cost_scaling_factor
void set_log_cost_scaling_factor(double value)
operations_research::PROTOBUF_FINAL::use_full_path_lns
::operations_research::OptionalBoolean use_full_path_lns() const
operations_research::PROTOBUF_FINAL::clear_use_relocate_subtrip
void clear_use_relocate_subtrip()
operations_research::PROTOBUF_FINAL::SchedulingSolver_Name
static const std::string & SchedulingSolver_Name(T enum_t_value)
Definition: routing_parameters.pb.h:719
TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto::PROTOBUF_SECTION_VARIABLE
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
operations_research::PROTOBUF_FINAL::RoutingModelParameters
RoutingModelParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
operations_research::PROTOBUF_FINAL::default_instance
static const RoutingModelParameters & default_instance()
operations_research::PROTOBUF_FINAL::operator=
RoutingSearchParameters_LocalSearchNeighborhoodOperators & operator=(RoutingSearchParameters_LocalSearchNeighborhoodOperators &&from) noexcept
Definition: routing_parameters.pb.h:124
operations_research::PROTOBUF_FINAL::clear_use_make_inactive
void clear_use_make_inactive()
operations_research::PROTOBUF_FINAL::clear_use_lin_kernighan
void clear_use_lin_kernighan()
operations_research::PROTOBUF_FINAL::mutable_local_search_operators
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * mutable_local_search_operators()
operations_research::PROTOBUF_FINAL::clear_use_global_cheapest_insertion_path_lns
void clear_use_global_cheapest_insertion_path_lns()
operations_research::PROTOBUF_FINAL::clear_use_relocate_neighbors
void clear_use_relocate_neighbors()
operations_research::PROTOBUF_FINAL::release_time_limit
PROTOBUF_NAMESPACE_ID::Duration * release_time_limit()
operations_research::PROTOBUF_FINAL::clear_use_local_cheapest_insertion_close_nodes_lns
void clear_use_local_cheapest_insertion_close_nodes_lns()
operations_research::PROTOBUF_FINAL::RoutingSearchParameters_LocalSearchNeighborhoodOperators
RoutingSearchParameters_LocalSearchNeighborhoodOperators()
Definition: routing_parameters.pb.h:111
operations_research::PROTOBUF_FINAL::use_exchange_subtrip
::operations_research::OptionalBoolean use_exchange_subtrip() const
solver_parameters.pb.h
operations_research::PROTOBUF_FINAL::set_relocate_expensive_chain_num_arcs_to_consider
void set_relocate_expensive_chain_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value)
operations_research::PROTOBUF_FINAL::set_use_depth_first_search
void set_use_depth_first_search(bool value)