Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
routing_ils.pb.h
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// NO CHECKED-IN PROTOBUF GENCODE
3// source: ortools/constraint_solver/routing_ils.proto
4// Protobuf C++ Version: 6.31.1
5
6#ifndef ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto_2epb_2eh
7#define ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto_2epb_2eh
8
9#include <limits>
10#include <string>
11#include <type_traits>
12#include <utility>
13
14#include "google/protobuf/runtime_version.h"
15#if PROTOBUF_VERSION != 6031001
16#error "Protobuf C++ gencode is built with an incompatible version of"
17#error "Protobuf C++ headers/runtime. See"
18#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
19#endif
20#include "google/protobuf/io/coded_stream.h"
21#include "google/protobuf/arena.h"
22#include "google/protobuf/arenastring.h"
23#include "google/protobuf/generated_message_bases.h"
24#include "google/protobuf/generated_message_tctable_decl.h"
25#include "google/protobuf/generated_message_util.h"
26#include "google/protobuf/metadata_lite.h"
27#include "google/protobuf/generated_message_reflection.h"
28#include "google/protobuf/message.h"
29#include "google/protobuf/message_lite.h"
30#include "google/protobuf/repeated_field.h" // IWYU pragma: export
31#include "google/protobuf/extension_set.h" // IWYU pragma: export
32#include "google/protobuf/generated_enum_reflection.h"
33#include "google/protobuf/unknown_field_set.h"
35// @@protoc_insertion_point(includes)
36
37// Must be included last.
38#include "google/protobuf/port_def.inc"
39
40#define PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto OR_PROTO_DLL
41
42namespace google {
43namespace protobuf {
44namespace internal {
45template <typename T>
46::absl::string_view GetAnyMessageName();
47} // namespace internal
48} // namespace protobuf
49} // namespace google
50
51// Internal implementation detail -- do not use these members.
53 static const ::uint32_t offsets[];
54};
55extern "C" {
56OR_PROTO_DLL extern const ::google::protobuf::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
57} // extern "C"
58namespace operations_research {
60OR_PROTO_DLL extern const uint32_t AcceptanceStrategy_Value_internal_data_[];
62OR_PROTO_DLL extern const uint32_t CoolingScheduleStrategy_Value_internal_data_[];
64OR_PROTO_DLL extern const uint32_t PerturbationStrategy_Value_internal_data_[];
66OR_PROTO_DLL extern const uint32_t RuinCompositionStrategy_Value_internal_data_[];
70OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AcceptanceStrategy_class_data_;
74OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull CoolingScheduleStrategy_class_data_;
78OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull IteratedLocalSearchParameters_class_data_;
82OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PerturbationStrategy_class_data_;
86OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RandomWalkRuinStrategy_class_data_;
90OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinCompositionStrategy_class_data_;
94OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinRecreateParameters_class_data_;
95class RuinStrategy;
98OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinStrategy_class_data_;
102OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SISRRuinStrategy_class_data_;
106OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SimulatedAnnealingParameters_class_data_;
110OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SpatiallyCloseRoutesRuinStrategy_class_data_;
111} // namespace operations_research
112namespace google {
113namespace protobuf {
114template <>
115internal::EnumTraitsT<::operations_research::AcceptanceStrategy_Value_internal_data_>
116 internal::EnumTraitsImpl::value<::operations_research::AcceptanceStrategy_Value>;
117template <>
118internal::EnumTraitsT<::operations_research::CoolingScheduleStrategy_Value_internal_data_>
119 internal::EnumTraitsImpl::value<::operations_research::CoolingScheduleStrategy_Value>;
120template <>
121internal::EnumTraitsT<::operations_research::PerturbationStrategy_Value_internal_data_>
122 internal::EnumTraitsImpl::value<::operations_research::PerturbationStrategy_Value>;
123template <>
124internal::EnumTraitsT<::operations_research::RuinCompositionStrategy_Value_internal_data_>
125 internal::EnumTraitsImpl::value<::operations_research::RuinCompositionStrategy_Value>;
126} // namespace protobuf
127} // namespace google
128
129namespace operations_research {
140
141OR_PROTO_DLL extern const uint32_t RuinCompositionStrategy_Value_internal_data_[];
143 static_cast<RuinCompositionStrategy_Value>(0);
145 static_cast<RuinCompositionStrategy_Value>(3);
147 return 0 <= value && value <= 3;
148}
150OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL RuinCompositionStrategy_Value_descriptor();
151template <typename T>
152const ::std::string& RuinCompositionStrategy_Value_Name(T value) {
153 static_assert(::std::is_same<T, RuinCompositionStrategy_Value>::value ||
154 ::std::is_integral<T>::value,
155 "Incorrect type passed to Value_Name().");
157}
158template <>
160 return ::google::protobuf::internal::NameOfDenseEnum<RuinCompositionStrategy_Value_descriptor, 0, 3>(
161 static_cast<int>(value));
162}
164 ::absl::string_view name, RuinCompositionStrategy_Value* PROTOBUF_NONNULL value) {
165 return ::google::protobuf::internal::ParseNamedEnum<RuinCompositionStrategy_Value>(RuinCompositionStrategy_Value_descriptor(), name,
166 value);
167}
176
177OR_PROTO_DLL extern const uint32_t PerturbationStrategy_Value_internal_data_[];
179 static_cast<PerturbationStrategy_Value>(0);
181 static_cast<PerturbationStrategy_Value>(1);
183 return 0 <= value && value <= 1;
184}
186OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL PerturbationStrategy_Value_descriptor();
187template <typename T>
188const ::std::string& PerturbationStrategy_Value_Name(T value) {
189 static_assert(::std::is_same<T, PerturbationStrategy_Value>::value ||
190 ::std::is_integral<T>::value,
191 "Incorrect type passed to Value_Name().");
193}
194template <>
196 return ::google::protobuf::internal::NameOfDenseEnum<PerturbationStrategy_Value_descriptor, 0, 1>(
197 static_cast<int>(value));
198}
200 ::absl::string_view name, PerturbationStrategy_Value* PROTOBUF_NONNULL value) {
201 return ::google::protobuf::internal::ParseNamedEnum<PerturbationStrategy_Value>(PerturbationStrategy_Value_descriptor(), name,
202 value);
203}
213
214OR_PROTO_DLL extern const uint32_t CoolingScheduleStrategy_Value_internal_data_[];
216 static_cast<CoolingScheduleStrategy_Value>(0);
218 static_cast<CoolingScheduleStrategy_Value>(2);
220 return 0 <= value && value <= 2;
221}
223OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL CoolingScheduleStrategy_Value_descriptor();
224template <typename T>
225const ::std::string& CoolingScheduleStrategy_Value_Name(T value) {
226 static_assert(::std::is_same<T, CoolingScheduleStrategy_Value>::value ||
227 ::std::is_integral<T>::value,
228 "Incorrect type passed to Value_Name().");
230}
231template <>
233 return ::google::protobuf::internal::NameOfDenseEnum<CoolingScheduleStrategy_Value_descriptor, 0, 2>(
234 static_cast<int>(value));
235}
237 ::absl::string_view name, CoolingScheduleStrategy_Value* PROTOBUF_NONNULL value) {
238 return ::google::protobuf::internal::ParseNamedEnum<CoolingScheduleStrategy_Value>(CoolingScheduleStrategy_Value_descriptor(), name,
239 value);
240}
250
251OR_PROTO_DLL extern const uint32_t AcceptanceStrategy_Value_internal_data_[];
253 static_cast<AcceptanceStrategy_Value>(0);
255 static_cast<AcceptanceStrategy_Value>(2);
256inline bool AcceptanceStrategy_Value_IsValid(int value) {
257 return 0 <= value && value <= 2;
258}
259inline constexpr int AcceptanceStrategy_Value_Value_ARRAYSIZE = 2 + 1;
260OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL AcceptanceStrategy_Value_descriptor();
261template <typename T>
262const ::std::string& AcceptanceStrategy_Value_Name(T value) {
263 static_assert(::std::is_same<T, AcceptanceStrategy_Value>::value ||
264 ::std::is_integral<T>::value,
265 "Incorrect type passed to Value_Name().");
267}
268template <>
269inline const ::std::string& AcceptanceStrategy_Value_Name(AcceptanceStrategy_Value value) {
270 return ::google::protobuf::internal::NameOfDenseEnum<AcceptanceStrategy_Value_descriptor, 0, 2>(
271 static_cast<int>(value));
272}
274 ::absl::string_view name, AcceptanceStrategy_Value* PROTOBUF_NONNULL value) {
275 return ::google::protobuf::internal::ParseNamedEnum<AcceptanceStrategy_Value>(AcceptanceStrategy_Value_descriptor(), name,
276 value);
277}
278
279// ===================================================================
280
281
282// -------------------------------------------------------------------
283
284class OR_PROTO_DLL SpatiallyCloseRoutesRuinStrategy final : public ::google::protobuf::Message
285/* @@protoc_insertion_point(class_definition:operations_research.SpatiallyCloseRoutesRuinStrategy) */ {
286 public:
288 ~SpatiallyCloseRoutesRuinStrategy() PROTOBUF_FINAL;
290#if defined(PROTOBUF_CUSTOM_VTABLE)
291 void operator delete(SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
292 SharedDtor(*msg);
293 ::google::protobuf::internal::SizedDelete(msg, sizeof(SpatiallyCloseRoutesRuinStrategy));
294 }
295#endif
296
297 template <typename = void>
298 explicit PROTOBUF_CONSTEXPR SpatiallyCloseRoutesRuinStrategy(::google::protobuf::internal::ConstantInitialized);
299
302 : SpatiallyCloseRoutesRuinStrategy(nullptr, ::std::move(from)) {}
305 return *this;
306 }
307 inline SpatiallyCloseRoutesRuinStrategy& operator=(SpatiallyCloseRoutesRuinStrategy&& from) noexcept {
308 if (this == &from) return *this;
309 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
310 InternalSwap(&from);
311 } else {
312 CopyFrom(from);
313 }
314 return *this;
315 }
316
317 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
318 ABSL_ATTRIBUTE_LIFETIME_BOUND {
319 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
320 }
321 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
322 ABSL_ATTRIBUTE_LIFETIME_BOUND {
323 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
324 }
325
326 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
327 return GetDescriptor();
329 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
330 return default_instance().GetMetadata().descriptor;
332 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
333 return default_instance().GetMetadata().reflection;
335 static const SpatiallyCloseRoutesRuinStrategy& default_instance() {
336 return *reinterpret_cast<const SpatiallyCloseRoutesRuinStrategy*>(
338 }
339 static constexpr int kIndexInFileMessages = 0;
341 inline void Swap(SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL other) {
342 if (other == this) return;
343 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
344 InternalSwap(other);
345 } else {
346 ::google::protobuf::internal::GenericSwap(this, other);
347 }
348 }
349 void UnsafeArenaSwap(SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL other) {
350 if (other == this) return;
351 ABSL_DCHECK(GetArena() == other->GetArena());
352 InternalSwap(other);
353 }
354
355 // implements Message ----------------------------------------------
356
357 SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
358 return ::google::protobuf::Message::DefaultConstruct<SpatiallyCloseRoutesRuinStrategy>(arena);
360 using ::google::protobuf::Message::CopyFrom;
361 void CopyFrom(const SpatiallyCloseRoutesRuinStrategy& from);
362 using ::google::protobuf::Message::MergeFrom;
363 void MergeFrom(const SpatiallyCloseRoutesRuinStrategy& from) { SpatiallyCloseRoutesRuinStrategy::MergeImpl(*this, from); }
364
365 private:
366 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
367 const ::google::protobuf::MessageLite& from_msg);
368
369 public:
370 bool IsInitialized() const {
371 return true;
373 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
374 #if defined(PROTOBUF_CUSTOM_VTABLE)
375 private:
376 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
377 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
378 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
379 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
380
381 public:
382 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
383 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
384 ::uint8_t* PROTOBUF_NONNULL target,
385 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
386 return _InternalSerialize(*this, target, stream);
387 }
388 #else // PROTOBUF_CUSTOM_VTABLE
389 ::size_t ByteSizeLong() const final;
390 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
391 ::uint8_t* PROTOBUF_NONNULL target,
392 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
393 #endif // PROTOBUF_CUSTOM_VTABLE
394 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
395
396 private:
397 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
398 static void SharedDtor(MessageLite& self);
399 void InternalSwap(SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL other);
400 private:
401 template <typename T>
402 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
403 static ::absl::string_view FullMessageName() { return "operations_research.SpatiallyCloseRoutesRuinStrategy"; }
404
405 protected:
406 explicit SpatiallyCloseRoutesRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
407 SpatiallyCloseRoutesRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SpatiallyCloseRoutesRuinStrategy& from);
409 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SpatiallyCloseRoutesRuinStrategy&& from) noexcept
411 *this = ::std::move(from);
412 }
413 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
414 static void* PROTOBUF_NONNULL PlacementNew_(
415 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
416 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
417 static constexpr auto InternalNewImpl_();
418
419 public:
420 static constexpr auto InternalGenerateClassData_();
421
422 ::google::protobuf::Metadata GetMetadata() const;
423 // nested types ----------------------------------------------------
424
425 // accessors -------------------------------------------------------
426 enum : int {
427 kNumRuinedRoutesFieldNumber = 3,
428 };
429 // optional uint32 num_ruined_routes = 3;
430 bool has_num_ruined_routes() const;
432 ::uint32_t num_ruined_routes() const;
433 void set_num_ruined_routes(::uint32_t value);
434
435 private:
436 ::uint32_t _internal_num_ruined_routes() const;
437 void _internal_set_num_ruined_routes(::uint32_t value);
438
439 public:
440 // @@protoc_insertion_point(class_scope:operations_research.SpatiallyCloseRoutesRuinStrategy)
441 private:
442 class _Internal;
443 friend class ::google::protobuf::internal::TcParser;
444 static const ::google::protobuf::internal::TcParseTable<0, 1,
445 0, 0,
446 2>
447 _table_;
448
449 friend class ::google::protobuf::MessageLite;
450 friend class ::google::protobuf::Arena;
451 template <typename T>
452 friend class ::google::protobuf::Arena::InternalHelper;
453 using InternalArenaConstructable_ = void;
454 using DestructorSkippable_ = void;
455 struct Impl_ {
456 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
457 inline explicit Impl_(
458 ::google::protobuf::internal::InternalVisibility visibility,
459 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
460 inline explicit Impl_(
461 ::google::protobuf::internal::InternalVisibility visibility,
462 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
463 const SpatiallyCloseRoutesRuinStrategy& from_msg);
464 ::google::protobuf::internal::HasBits<1> _has_bits_;
465 ::google::protobuf::internal::CachedSize _cached_size_;
466 ::uint32_t num_ruined_routes_;
467 PROTOBUF_TSAN_DECLARE_MEMBER
468 };
469 union { Impl_ _impl_; };
470 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
473OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SpatiallyCloseRoutesRuinStrategy_class_data_;
474// -------------------------------------------------------------------
475
476class OR_PROTO_DLL SimulatedAnnealingParameters final : public ::google::protobuf::Message
477/* @@protoc_insertion_point(class_definition:operations_research.SimulatedAnnealingParameters) */ {
478 public:
480 ~SimulatedAnnealingParameters() PROTOBUF_FINAL;
481
482#if defined(PROTOBUF_CUSTOM_VTABLE)
483 void operator delete(SimulatedAnnealingParameters* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
484 SharedDtor(*msg);
485 ::google::protobuf::internal::SizedDelete(msg, sizeof(SimulatedAnnealingParameters));
486 }
487#endif
488
489 template <typename = void>
490 explicit PROTOBUF_CONSTEXPR SimulatedAnnealingParameters(::google::protobuf::internal::ConstantInitialized);
491
494 : SimulatedAnnealingParameters(nullptr, ::std::move(from)) {}
496 CopyFrom(from);
497 return *this;
499 inline SimulatedAnnealingParameters& operator=(SimulatedAnnealingParameters&& from) noexcept {
500 if (this == &from) return *this;
501 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
502 InternalSwap(&from);
503 } else {
504 CopyFrom(from);
505 }
506 return *this;
507 }
508
509 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
510 ABSL_ATTRIBUTE_LIFETIME_BOUND {
511 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
513 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
514 ABSL_ATTRIBUTE_LIFETIME_BOUND {
515 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
517
518 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
519 return GetDescriptor();
520 }
521 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
522 return default_instance().GetMetadata().descriptor;
523 }
524 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
525 return default_instance().GetMetadata().reflection;
526 }
531 static constexpr int kIndexInFileMessages = 8;
532 friend void swap(SimulatedAnnealingParameters& a, SimulatedAnnealingParameters& b) { a.Swap(&b); }
533 inline void Swap(SimulatedAnnealingParameters* PROTOBUF_NONNULL other) {
534 if (other == this) return;
535 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
536 InternalSwap(other);
537 } else {
538 ::google::protobuf::internal::GenericSwap(this, other);
539 }
540 }
541 void UnsafeArenaSwap(SimulatedAnnealingParameters* PROTOBUF_NONNULL other) {
542 if (other == this) return;
543 ABSL_DCHECK(GetArena() == other->GetArena());
544 InternalSwap(other);
545 }
546
547 // implements Message ----------------------------------------------
548
549 SimulatedAnnealingParameters* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
550 return ::google::protobuf::Message::DefaultConstruct<SimulatedAnnealingParameters>(arena);
551 }
552 using ::google::protobuf::Message::CopyFrom;
553 void CopyFrom(const SimulatedAnnealingParameters& from);
554 using ::google::protobuf::Message::MergeFrom;
555 void MergeFrom(const SimulatedAnnealingParameters& from) { SimulatedAnnealingParameters::MergeImpl(*this, from); }
556
557 private:
558 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
559 const ::google::protobuf::MessageLite& from_msg);
560
561 public:
562 bool IsInitialized() const {
563 return true;
564 }
565 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
566 #if defined(PROTOBUF_CUSTOM_VTABLE)
567 private:
568 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
569 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
570 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
571 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
572
573 public:
574 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
575 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
576 ::uint8_t* PROTOBUF_NONNULL target,
577 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
578 return _InternalSerialize(*this, target, stream);
579 }
580 #else // PROTOBUF_CUSTOM_VTABLE
581 ::size_t ByteSizeLong() const final;
582 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
583 ::uint8_t* PROTOBUF_NONNULL target,
584 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
585 #endif // PROTOBUF_CUSTOM_VTABLE
586 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
587
588 private:
589 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
590 static void SharedDtor(MessageLite& self);
591 void InternalSwap(SimulatedAnnealingParameters* PROTOBUF_NONNULL other);
592 private:
593 template <typename T>
594 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
595 static ::absl::string_view FullMessageName() { return "operations_research.SimulatedAnnealingParameters"; }
596
597 protected:
598 explicit SimulatedAnnealingParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
599 SimulatedAnnealingParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SimulatedAnnealingParameters& from);
601 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SimulatedAnnealingParameters&& from) noexcept
603 *this = ::std::move(from);
604 }
605 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
606 static void* PROTOBUF_NONNULL PlacementNew_(
607 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
608 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
609 static constexpr auto InternalNewImpl_();
610
611 public:
612 static constexpr auto InternalGenerateClassData_();
613
614 ::google::protobuf::Metadata GetMetadata() const;
615 // nested types ----------------------------------------------------
616
617 // accessors -------------------------------------------------------
618 enum : int {
619 kInitialTemperatureFieldNumber = 2,
620 kCoolingScheduleStrategyFieldNumber = 1,
621 kAutomaticTemperaturesFieldNumber = 4,
623 };
624 // optional double initial_temperature = 2;
627 double initial_temperature() const;
628 void set_initial_temperature(double value);
629
630 private:
631 double _internal_initial_temperature() const;
632 void _internal_set_initial_temperature(double value);
633
634 public:
635 // .operations_research.CoolingScheduleStrategy.Value cooling_schedule_strategy = 1;
639
640 private:
641 ::operations_research::CoolingScheduleStrategy_Value _internal_cooling_schedule_strategy() const;
642 void _internal_set_cooling_schedule_strategy(::operations_research::CoolingScheduleStrategy_Value value);
643
644 public:
645 // optional bool automatic_temperatures = 4;
646 bool has_automatic_temperatures() const;
648 bool automatic_temperatures() const;
649 void set_automatic_temperatures(bool value);
650
651 private:
652 bool _internal_automatic_temperatures() const;
653 void _internal_set_automatic_temperatures(bool value);
654
655 public:
656 // optional double final_temperature = 3;
657 bool has_final_temperature() const;
659 double final_temperature() const;
660 void set_final_temperature(double value);
661
662 private:
663 double _internal_final_temperature() const;
664 void _internal_set_final_temperature(double value);
665
666 public:
667 // @@protoc_insertion_point(class_scope:operations_research.SimulatedAnnealingParameters)
668 private:
669 class _Internal;
670 friend class ::google::protobuf::internal::TcParser;
671 static const ::google::protobuf::internal::TcParseTable<2, 4,
672 0, 0,
673 2>
674 _table_;
675
676 friend class ::google::protobuf::MessageLite;
677 friend class ::google::protobuf::Arena;
678 template <typename T>
679 friend class ::google::protobuf::Arena::InternalHelper;
680 using InternalArenaConstructable_ = void;
681 using DestructorSkippable_ = void;
682 struct Impl_ {
683 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
684 inline explicit Impl_(
685 ::google::protobuf::internal::InternalVisibility visibility,
686 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
687 inline explicit Impl_(
688 ::google::protobuf::internal::InternalVisibility visibility,
689 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
690 const SimulatedAnnealingParameters& from_msg);
691 ::google::protobuf::internal::HasBits<1> _has_bits_;
692 ::google::protobuf::internal::CachedSize _cached_size_;
693 double initial_temperature_;
694 int cooling_schedule_strategy_;
695 bool automatic_temperatures_;
696 double final_temperature_;
697 PROTOBUF_TSAN_DECLARE_MEMBER
698 };
699 union { Impl_ _impl_; };
700 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
701};
703OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SimulatedAnnealingParameters_class_data_;
704// -------------------------------------------------------------------
705
706class OR_PROTO_DLL SISRRuinStrategy final : public ::google::protobuf::Message
707/* @@protoc_insertion_point(class_definition:operations_research.SISRRuinStrategy) */ {
708 public:
709 inline SISRRuinStrategy() : SISRRuinStrategy(nullptr) {}
710 ~SISRRuinStrategy() PROTOBUF_FINAL;
711
712#if defined(PROTOBUF_CUSTOM_VTABLE)
713 void operator delete(SISRRuinStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
714 SharedDtor(*msg);
715 ::google::protobuf::internal::SizedDelete(msg, sizeof(SISRRuinStrategy));
716 }
717#endif
718
719 template <typename = void>
720 explicit PROTOBUF_CONSTEXPR SISRRuinStrategy(::google::protobuf::internal::ConstantInitialized);
721
722 inline SISRRuinStrategy(const SISRRuinStrategy& from) : SISRRuinStrategy(nullptr, from) {}
723 inline SISRRuinStrategy(SISRRuinStrategy&& from) noexcept
724 : SISRRuinStrategy(nullptr, ::std::move(from)) {}
725 inline SISRRuinStrategy& operator=(const SISRRuinStrategy& from) {
726 CopyFrom(from);
727 return *this;
728 }
729 inline SISRRuinStrategy& operator=(SISRRuinStrategy&& from) noexcept {
730 if (this == &from) return *this;
731 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
732 InternalSwap(&from);
733 } else {
734 CopyFrom(from);
735 }
736 return *this;
737 }
738
739 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
740 ABSL_ATTRIBUTE_LIFETIME_BOUND {
741 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
742 }
743 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
744 ABSL_ATTRIBUTE_LIFETIME_BOUND {
745 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
746 }
748 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
749 return GetDescriptor();
750 }
751 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
752 return default_instance().GetMetadata().descriptor;
753 }
754 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
755 return default_instance().GetMetadata().reflection;
756 }
757 static const SISRRuinStrategy& default_instance() {
758 return *reinterpret_cast<const SISRRuinStrategy*>(
760 }
761 static constexpr int kIndexInFileMessages = 2;
762 friend void swap(SISRRuinStrategy& a, SISRRuinStrategy& b) { a.Swap(&b); }
763 inline void Swap(SISRRuinStrategy* PROTOBUF_NONNULL other) {
764 if (other == this) return;
765 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
766 InternalSwap(other);
767 } else {
768 ::google::protobuf::internal::GenericSwap(this, other);
769 }
770 }
771 void UnsafeArenaSwap(SISRRuinStrategy* PROTOBUF_NONNULL other) {
772 if (other == this) return;
773 ABSL_DCHECK(GetArena() == other->GetArena());
774 InternalSwap(other);
776
777 // implements Message ----------------------------------------------
778
779 SISRRuinStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
780 return ::google::protobuf::Message::DefaultConstruct<SISRRuinStrategy>(arena);
781 }
782 using ::google::protobuf::Message::CopyFrom;
783 void CopyFrom(const SISRRuinStrategy& from);
784 using ::google::protobuf::Message::MergeFrom;
785 void MergeFrom(const SISRRuinStrategy& from) { SISRRuinStrategy::MergeImpl(*this, from); }
786
787 private:
788 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
789 const ::google::protobuf::MessageLite& from_msg);
790
791 public:
792 bool IsInitialized() const {
793 return true;
794 }
795 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
796 #if defined(PROTOBUF_CUSTOM_VTABLE)
797 private:
798 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
799 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
800 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
801 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
802
803 public:
804 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
805 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
806 ::uint8_t* PROTOBUF_NONNULL target,
807 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
808 return _InternalSerialize(*this, target, stream);
809 }
810 #else // PROTOBUF_CUSTOM_VTABLE
811 ::size_t ByteSizeLong() const final;
812 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
813 ::uint8_t* PROTOBUF_NONNULL target,
814 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
815 #endif // PROTOBUF_CUSTOM_VTABLE
816 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
817
818 private:
819 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
820 static void SharedDtor(MessageLite& self);
821 void InternalSwap(SISRRuinStrategy* PROTOBUF_NONNULL other);
822 private:
823 template <typename T>
824 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
825 static ::absl::string_view FullMessageName() { return "operations_research.SISRRuinStrategy"; }
826
827 protected:
828 explicit SISRRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
829 SISRRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SISRRuinStrategy& from);
831 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SISRRuinStrategy&& from) noexcept
832 : SISRRuinStrategy(arena) {
833 *this = ::std::move(from);
835 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
836 static void* PROTOBUF_NONNULL PlacementNew_(
837 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
838 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
839 static constexpr auto InternalNewImpl_();
840
841 public:
842 static constexpr auto InternalGenerateClassData_();
843
844 ::google::protobuf::Metadata GetMetadata() const;
845 // nested types ----------------------------------------------------
846
847 // accessors -------------------------------------------------------
848 enum : int {
849 kMaxRemovedSequenceSizeFieldNumber = 1,
850 kAvgNumRemovedVisitsFieldNumber = 2,
851 kBypassFactorFieldNumber = 3,
852 };
853 // optional uint32 max_removed_sequence_size = 1;
856 ::uint32_t max_removed_sequence_size() const;
857 void set_max_removed_sequence_size(::uint32_t value);
858
859 private:
860 ::uint32_t _internal_max_removed_sequence_size() const;
861 void _internal_set_max_removed_sequence_size(::uint32_t value);
862
863 public:
864 // optional uint32 avg_num_removed_visits = 2;
865 bool has_avg_num_removed_visits() const;
867 ::uint32_t avg_num_removed_visits() const;
868 void set_avg_num_removed_visits(::uint32_t value);
869
870 private:
871 ::uint32_t _internal_avg_num_removed_visits() const;
872 void _internal_set_avg_num_removed_visits(::uint32_t value);
873
874 public:
875 // optional double bypass_factor = 3;
876 bool has_bypass_factor() const;
877 void clear_bypass_factor() ;
878 double bypass_factor() const;
879 void set_bypass_factor(double value);
880
881 private:
882 double _internal_bypass_factor() const;
883 void _internal_set_bypass_factor(double value);
884
885 public:
886 // @@protoc_insertion_point(class_scope:operations_research.SISRRuinStrategy)
887 private:
888 class _Internal;
889 friend class ::google::protobuf::internal::TcParser;
890 static const ::google::protobuf::internal::TcParseTable<2, 3,
891 0, 0,
892 2>
893 _table_;
894
895 friend class ::google::protobuf::MessageLite;
896 friend class ::google::protobuf::Arena;
897 template <typename T>
898 friend class ::google::protobuf::Arena::InternalHelper;
899 using InternalArenaConstructable_ = void;
900 using DestructorSkippable_ = void;
901 struct Impl_ {
902 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
903 inline explicit Impl_(
904 ::google::protobuf::internal::InternalVisibility visibility,
905 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
906 inline explicit Impl_(
907 ::google::protobuf::internal::InternalVisibility visibility,
908 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
909 const SISRRuinStrategy& from_msg);
910 ::google::protobuf::internal::HasBits<1> _has_bits_;
911 ::google::protobuf::internal::CachedSize _cached_size_;
912 ::uint32_t max_removed_sequence_size_;
913 ::uint32_t avg_num_removed_visits_;
914 double bypass_factor_;
915 PROTOBUF_TSAN_DECLARE_MEMBER
916 };
917 union { Impl_ _impl_; };
918 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
919};
920
921OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SISRRuinStrategy_class_data_;
922// -------------------------------------------------------------------
923
924class OR_PROTO_DLL RuinCompositionStrategy final : public ::google::protobuf::internal::ZeroFieldsBase
925/* @@protoc_insertion_point(class_definition:operations_research.RuinCompositionStrategy) */ {
926 public:
928
929#if defined(PROTOBUF_CUSTOM_VTABLE)
930 void operator delete(RuinCompositionStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
931 SharedDtor(*msg);
932 ::google::protobuf::internal::SizedDelete(msg, sizeof(RuinCompositionStrategy));
933 }
934#endif
935
936 template <typename = void>
937 explicit PROTOBUF_CONSTEXPR RuinCompositionStrategy(::google::protobuf::internal::ConstantInitialized);
938
939 inline RuinCompositionStrategy(const RuinCompositionStrategy& from) : RuinCompositionStrategy(nullptr, from) {}
940 inline RuinCompositionStrategy(RuinCompositionStrategy&& from) noexcept
941 : RuinCompositionStrategy(nullptr, ::std::move(from)) {}
943 CopyFrom(from);
944 return *this;
946 inline RuinCompositionStrategy& operator=(RuinCompositionStrategy&& from) noexcept {
947 if (this == &from) return *this;
948 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
949 InternalSwap(&from);
950 } else {
951 CopyFrom(from);
952 }
953 return *this;
954 }
955
956 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
957 ABSL_ATTRIBUTE_LIFETIME_BOUND {
958 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
959 }
960 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
961 ABSL_ATTRIBUTE_LIFETIME_BOUND {
962 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
963 }
964
965 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
966 return GetDescriptor();
967 }
968 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
969 return default_instance().GetMetadata().descriptor;
971 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
972 return default_instance().GetMetadata().reflection;
974 static const RuinCompositionStrategy& default_instance() {
975 return *reinterpret_cast<const RuinCompositionStrategy*>(
977 }
978 static constexpr int kIndexInFileMessages = 4;
980 inline void Swap(RuinCompositionStrategy* PROTOBUF_NONNULL other) {
981 if (other == this) return;
982 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
983 InternalSwap(other);
984 } else {
985 ::google::protobuf::internal::GenericSwap(this, other);
986 }
987 }
988 void UnsafeArenaSwap(RuinCompositionStrategy* PROTOBUF_NONNULL other) {
989 if (other == this) return;
990 ABSL_DCHECK(GetArena() == other->GetArena());
991 InternalSwap(other);
992 }
994 // implements Message ----------------------------------------------
995
996 RuinCompositionStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
997 return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<RuinCompositionStrategy>(arena);
998 }
999 using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
1000 inline void CopyFrom(const RuinCompositionStrategy& from) {
1001 ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from);
1002 }
1003 using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
1004 void MergeFrom(const RuinCompositionStrategy& from) {
1005 ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from);
1006 }
1007
1008 public:
1009 bool IsInitialized() const {
1010 return true;
1011 }
1012 private:
1013 template <typename T>
1015 static ::absl::string_view FullMessageName() { return "operations_research.RuinCompositionStrategy"; }
1016
1017 protected:
1018 explicit RuinCompositionStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1019 RuinCompositionStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const RuinCompositionStrategy& from);
1021 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, RuinCompositionStrategy&& from) noexcept
1022 : RuinCompositionStrategy(arena) {
1023 *this = ::std::move(from);
1024 }
1025 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1026 static void* PROTOBUF_NONNULL PlacementNew_(
1027 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1028 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1029 static constexpr auto InternalNewImpl_();
1030
1031 public:
1032 static constexpr auto InternalGenerateClassData_();
1033
1034 ::google::protobuf::Metadata GetMetadata() const;
1035 // nested types ----------------------------------------------------
1041 static inline bool Value_IsValid(int value) {
1047 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Value_descriptor() {
1050 template <typename T>
1051 static inline const ::std::string& Value_Name(T value) {
1053 }
1054 static inline bool Value_Parse(
1055 ::absl::string_view name, Value* PROTOBUF_NONNULL value) {
1057 }
1058
1059 // accessors -------------------------------------------------------
1060 // @@protoc_insertion_point(class_scope:operations_research.RuinCompositionStrategy)
1061 private:
1062 class _Internal;
1063 friend class ::google::protobuf::internal::TcParser;
1064 static const ::google::protobuf::internal::TcParseTable<0, 0,
1065 0, 0,
1066 2>
1067 _table_;
1069 friend class ::google::protobuf::MessageLite;
1070 friend class ::google::protobuf::Arena;
1071 template <typename T>
1072 friend class ::google::protobuf::Arena::InternalHelper;
1073 using InternalArenaConstructable_ = void;
1074 using DestructorSkippable_ = void;
1075 struct Impl_ {
1076 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1077 inline explicit Impl_(
1078 ::google::protobuf::internal::InternalVisibility visibility,
1079 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1080 inline explicit Impl_(
1081 ::google::protobuf::internal::InternalVisibility visibility,
1082 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1083 const RuinCompositionStrategy& from_msg);
1084 PROTOBUF_TSAN_DECLARE_MEMBER
1085 };
1086 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
1087};
1088
1089OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinCompositionStrategy_class_data_;
1090// -------------------------------------------------------------------
1092class OR_PROTO_DLL RandomWalkRuinStrategy final : public ::google::protobuf::Message
1093/* @@protoc_insertion_point(class_definition:operations_research.RandomWalkRuinStrategy) */ {
1094 public:
1095 inline RandomWalkRuinStrategy() : RandomWalkRuinStrategy(nullptr) {}
1096 ~RandomWalkRuinStrategy() PROTOBUF_FINAL;
1097
1098#if defined(PROTOBUF_CUSTOM_VTABLE)
1099 void operator delete(RandomWalkRuinStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1100 SharedDtor(*msg);
1101 ::google::protobuf::internal::SizedDelete(msg, sizeof(RandomWalkRuinStrategy));
1102 }
1103#endif
1104
1105 template <typename = void>
1106 explicit PROTOBUF_CONSTEXPR RandomWalkRuinStrategy(::google::protobuf::internal::ConstantInitialized);
1107
1108 inline RandomWalkRuinStrategy(const RandomWalkRuinStrategy& from) : RandomWalkRuinStrategy(nullptr, from) {}
1109 inline RandomWalkRuinStrategy(RandomWalkRuinStrategy&& from) noexcept
1110 : RandomWalkRuinStrategy(nullptr, ::std::move(from)) {}
1111 inline RandomWalkRuinStrategy& operator=(const RandomWalkRuinStrategy& from) {
1113 return *this;
1116 if (this == &from) return *this;
1117 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1118 InternalSwap(&from);
1119 } else {
1120 CopyFrom(from);
1122 return *this;
1123 }
1124
1125 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1126 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1127 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1128 }
1129 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1130 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1131 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1132 }
1133
1134 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1136 }
1137 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1138 return default_instance().GetMetadata().descriptor;
1139 }
1140 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1141 return default_instance().GetMetadata().reflection;
1142 }
1147 static constexpr int kIndexInFileMessages = 1;
1148 friend void swap(RandomWalkRuinStrategy& a, RandomWalkRuinStrategy& b) { a.Swap(&b); }
1149 inline void Swap(RandomWalkRuinStrategy* PROTOBUF_NONNULL other) {
1150 if (other == this) return;
1151 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1152 InternalSwap(other);
1153 } else {
1154 ::google::protobuf::internal::GenericSwap(this, other);
1156 }
1157 void UnsafeArenaSwap(RandomWalkRuinStrategy* PROTOBUF_NONNULL other) {
1158 if (other == this) return;
1159 ABSL_DCHECK(GetArena() == other->GetArena());
1160 InternalSwap(other);
1161 }
1162
1163 // implements Message ----------------------------------------------
1164
1165 RandomWalkRuinStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1166 return ::google::protobuf::Message::DefaultConstruct<RandomWalkRuinStrategy>(arena);
1167 }
1168 using ::google::protobuf::Message::CopyFrom;
1169 void CopyFrom(const RandomWalkRuinStrategy& from);
1170 using ::google::protobuf::Message::MergeFrom;
1171 void MergeFrom(const RandomWalkRuinStrategy& from) { RandomWalkRuinStrategy::MergeImpl(*this, from); }
1172
1173 private:
1174 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1175 const ::google::protobuf::MessageLite& from_msg);
1176
1177 public:
1178 bool IsInitialized() const {
1179 return true;
1180 }
1181 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1182 #if defined(PROTOBUF_CUSTOM_VTABLE)
1183 private:
1184 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1185 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1186 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1187 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1188
1189 public:
1190 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1191 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1192 ::uint8_t* PROTOBUF_NONNULL target,
1193 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1194 return _InternalSerialize(*this, target, stream);
1195 }
1196 #else // PROTOBUF_CUSTOM_VTABLE
1197 ::size_t ByteSizeLong() const final;
1198 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1199 ::uint8_t* PROTOBUF_NONNULL target,
1200 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1201 #endif // PROTOBUF_CUSTOM_VTABLE
1202 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1203
1204 private:
1205 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1206 static void SharedDtor(MessageLite& self);
1207 void InternalSwap(RandomWalkRuinStrategy* PROTOBUF_NONNULL other);
1208 private:
1209 template <typename T>
1210 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1211 static ::absl::string_view FullMessageName() { return "operations_research.RandomWalkRuinStrategy"; }
1212
1213 protected:
1214 explicit RandomWalkRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1215 RandomWalkRuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const RandomWalkRuinStrategy& from);
1217 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, RandomWalkRuinStrategy&& from) noexcept
1218 : RandomWalkRuinStrategy(arena) {
1219 *this = ::std::move(from);
1220 }
1221 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1222 static void* PROTOBUF_NONNULL PlacementNew_(
1223 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1224 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1225 static constexpr auto InternalNewImpl_();
1226
1227 public:
1228 static constexpr auto InternalGenerateClassData_();
1229
1230 ::google::protobuf::Metadata GetMetadata() const;
1231 // nested types ----------------------------------------------------
1232
1233 // accessors -------------------------------------------------------
1234 enum : int {
1236 };
1237 // optional uint32 num_removed_visits = 7;
1238 bool has_num_removed_visits() const;
1239 void clear_num_removed_visits() ;
1240 ::uint32_t num_removed_visits() const;
1241 void set_num_removed_visits(::uint32_t value);
1242
1243 private:
1244 ::uint32_t _internal_num_removed_visits() const;
1245 void _internal_set_num_removed_visits(::uint32_t value);
1246
1247 public:
1248 // @@protoc_insertion_point(class_scope:operations_research.RandomWalkRuinStrategy)
1249 private:
1250 class _Internal;
1251 friend class ::google::protobuf::internal::TcParser;
1252 static const ::google::protobuf::internal::TcParseTable<0, 1,
1253 0, 0,
1254 2>
1255 _table_;
1256
1257 friend class ::google::protobuf::MessageLite;
1258 friend class ::google::protobuf::Arena;
1259 template <typename T>
1260 friend class ::google::protobuf::Arena::InternalHelper;
1261 using InternalArenaConstructable_ = void;
1262 using DestructorSkippable_ = void;
1263 struct Impl_ {
1264 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1265 inline explicit Impl_(
1266 ::google::protobuf::internal::InternalVisibility visibility,
1267 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1268 inline explicit Impl_(
1269 ::google::protobuf::internal::InternalVisibility visibility,
1270 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1271 const RandomWalkRuinStrategy& from_msg);
1272 ::google::protobuf::internal::HasBits<1> _has_bits_;
1273 ::google::protobuf::internal::CachedSize _cached_size_;
1274 ::uint32_t num_removed_visits_;
1275 PROTOBUF_TSAN_DECLARE_MEMBER
1276 };
1277 union { Impl_ _impl_; };
1278 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
1279};
1280
1281OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RandomWalkRuinStrategy_class_data_;
1282// -------------------------------------------------------------------
1284class OR_PROTO_DLL PerturbationStrategy final : public ::google::protobuf::internal::ZeroFieldsBase
1285/* @@protoc_insertion_point(class_definition:operations_research.PerturbationStrategy) */ {
1286 public:
1287 inline PerturbationStrategy() : PerturbationStrategy(nullptr) {}
1288
1289#if defined(PROTOBUF_CUSTOM_VTABLE)
1290 void operator delete(PerturbationStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1291 SharedDtor(*msg);
1292 ::google::protobuf::internal::SizedDelete(msg, sizeof(PerturbationStrategy));
1293 }
1294#endif
1295
1296 template <typename = void>
1297 explicit PROTOBUF_CONSTEXPR PerturbationStrategy(::google::protobuf::internal::ConstantInitialized);
1298
1299 inline PerturbationStrategy(const PerturbationStrategy& from) : PerturbationStrategy(nullptr, from) {}
1300 inline PerturbationStrategy(PerturbationStrategy&& from) noexcept
1301 : PerturbationStrategy(nullptr, ::std::move(from)) {}
1302 inline PerturbationStrategy& operator=(const PerturbationStrategy& from) {
1303 CopyFrom(from);
1304 return *this;
1305 }
1307 if (this == &from) return *this;
1308 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1309 InternalSwap(&from);
1310 } else {
1311 CopyFrom(from);
1312 }
1313 return *this;
1314 }
1315
1316 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1317 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1318 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1319 }
1320 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1321 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1322 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1324
1325 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1326 return GetDescriptor();
1328 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1329 return default_instance().GetMetadata().descriptor;
1330 }
1331 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1332 return default_instance().GetMetadata().reflection;
1333 }
1334 static const PerturbationStrategy& default_instance() {
1335 return *reinterpret_cast<const PerturbationStrategy*>(
1337 }
1338 static constexpr int kIndexInFileMessages = 6;
1339 friend void swap(PerturbationStrategy& a, PerturbationStrategy& b) { a.Swap(&b); }
1340 inline void Swap(PerturbationStrategy* PROTOBUF_NONNULL other) {
1341 if (other == this) return;
1342 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1343 InternalSwap(other);
1344 } else {
1345 ::google::protobuf::internal::GenericSwap(this, other);
1348 void UnsafeArenaSwap(PerturbationStrategy* PROTOBUF_NONNULL other) {
1349 if (other == this) return;
1350 ABSL_DCHECK(GetArena() == other->GetArena());
1351 InternalSwap(other);
1352 }
1353
1354 // implements Message ----------------------------------------------
1356 PerturbationStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1357 return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<PerturbationStrategy>(arena);
1358 }
1359 using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
1360 inline void CopyFrom(const PerturbationStrategy& from) {
1361 ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from);
1362 }
1363 using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
1364 void MergeFrom(const PerturbationStrategy& from) {
1365 ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from);
1366 }
1368 public:
1369 bool IsInitialized() const {
1370 return true;
1372 private:
1373 template <typename T>
1374 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1375 static ::absl::string_view FullMessageName() { return "operations_research.PerturbationStrategy"; }
1377 protected:
1378 explicit PerturbationStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1379 PerturbationStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PerturbationStrategy& from);
1381 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PerturbationStrategy&& from) noexcept
1382 : PerturbationStrategy(arena) {
1383 *this = ::std::move(from);
1384 }
1385 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1386 static void* PROTOBUF_NONNULL PlacementNew_(
1387 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1388 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1389 static constexpr auto InternalNewImpl_();
1390
1391 public:
1392 static constexpr auto InternalGenerateClassData_();
1393
1394 ::google::protobuf::Metadata GetMetadata() const;
1395 // nested types ----------------------------------------------------
1397 static constexpr Value UNSET = PerturbationStrategy_Value_UNSET;
1399 static inline bool Value_IsValid(int value) {
1401 }
1402 static constexpr Value Value_MIN = PerturbationStrategy_Value_Value_MIN;
1405 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Value_descriptor() {
1407 }
1408 template <typename T>
1409 static inline const ::std::string& Value_Name(T value) {
1412 static inline bool Value_Parse(
1413 ::absl::string_view name, Value* PROTOBUF_NONNULL value) {
1414 return PerturbationStrategy_Value_Parse(name, value);
1415 }
1417 // accessors -------------------------------------------------------
1418 // @@protoc_insertion_point(class_scope:operations_research.PerturbationStrategy)
1419 private:
1420 class _Internal;
1421 friend class ::google::protobuf::internal::TcParser;
1422 static const ::google::protobuf::internal::TcParseTable<0, 0,
1423 0, 0,
1424 2>
1425 _table_;
1426
1427 friend class ::google::protobuf::MessageLite;
1428 friend class ::google::protobuf::Arena;
1429 template <typename T>
1430 friend class ::google::protobuf::Arena::InternalHelper;
1431 using InternalArenaConstructable_ = void;
1432 using DestructorSkippable_ = void;
1433 struct Impl_ {
1434 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1435 inline explicit Impl_(
1436 ::google::protobuf::internal::InternalVisibility visibility,
1437 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1438 inline explicit Impl_(
1439 ::google::protobuf::internal::InternalVisibility visibility,
1440 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1441 const PerturbationStrategy& from_msg);
1442 PROTOBUF_TSAN_DECLARE_MEMBER
1443 };
1444 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
1445};
1446
1447OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PerturbationStrategy_class_data_;
1448// -------------------------------------------------------------------
1449
1450class OR_PROTO_DLL CoolingScheduleStrategy final : public ::google::protobuf::internal::ZeroFieldsBase
1451/* @@protoc_insertion_point(class_definition:operations_research.CoolingScheduleStrategy) */ {
1452 public:
1454
1455#if defined(PROTOBUF_CUSTOM_VTABLE)
1456 void operator delete(CoolingScheduleStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1457 SharedDtor(*msg);
1458 ::google::protobuf::internal::SizedDelete(msg, sizeof(CoolingScheduleStrategy));
1459 }
1460#endif
1462 template <typename = void>
1463 explicit PROTOBUF_CONSTEXPR CoolingScheduleStrategy(::google::protobuf::internal::ConstantInitialized);
1464
1465 inline CoolingScheduleStrategy(const CoolingScheduleStrategy& from) : CoolingScheduleStrategy(nullptr, from) {}
1466 inline CoolingScheduleStrategy(CoolingScheduleStrategy&& from) noexcept
1467 : CoolingScheduleStrategy(nullptr, ::std::move(from)) {}
1468 inline CoolingScheduleStrategy& operator=(const CoolingScheduleStrategy& from) {
1469 CopyFrom(from);
1470 return *this;
1472 inline CoolingScheduleStrategy& operator=(CoolingScheduleStrategy&& from) noexcept {
1473 if (this == &from) return *this;
1474 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1475 InternalSwap(&from);
1476 } else {
1477 CopyFrom(from);
1478 }
1479 return *this;
1481
1482 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1483 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1484 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1485 }
1486 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1487 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1488 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1489 }
1491 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1492 return GetDescriptor();
1493 }
1494 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1495 return default_instance().GetMetadata().descriptor;
1496 }
1497 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1498 return default_instance().GetMetadata().reflection;
1500 static const CoolingScheduleStrategy& default_instance() {
1501 return *reinterpret_cast<const CoolingScheduleStrategy*>(
1503 }
1504 static constexpr int kIndexInFileMessages = 7;
1506 inline void Swap(CoolingScheduleStrategy* PROTOBUF_NONNULL other) {
1507 if (other == this) return;
1508 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1509 InternalSwap(other);
1510 } else {
1511 ::google::protobuf::internal::GenericSwap(this, other);
1514 void UnsafeArenaSwap(CoolingScheduleStrategy* PROTOBUF_NONNULL other) {
1515 if (other == this) return;
1516 ABSL_DCHECK(GetArena() == other->GetArena());
1517 InternalSwap(other);
1518 }
1519
1520 // implements Message ----------------------------------------------
1521
1522 CoolingScheduleStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1523 return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<CoolingScheduleStrategy>(arena);
1524 }
1525 using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
1526 inline void CopyFrom(const CoolingScheduleStrategy& from) {
1527 ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from);
1528 }
1529 using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
1531 ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from);
1532 }
1533
1534 public:
1535 bool IsInitialized() const {
1536 return true;
1537 }
1538 private:
1539 template <typename T>
1540 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1541 static ::absl::string_view FullMessageName() { return "operations_research.CoolingScheduleStrategy"; }
1542
1543 protected:
1544 explicit CoolingScheduleStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1545 CoolingScheduleStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CoolingScheduleStrategy& from);
1547 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, CoolingScheduleStrategy&& from) noexcept
1548 : CoolingScheduleStrategy(arena) {
1549 *this = ::std::move(from);
1550 }
1551 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1552 static void* PROTOBUF_NONNULL PlacementNew_(
1553 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1554 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1555 static constexpr auto InternalNewImpl_();
1556
1557 public:
1558 static constexpr auto InternalGenerateClassData_();
1559
1560 ::google::protobuf::Metadata GetMetadata() const;
1561 // nested types ----------------------------------------------------
1566 static inline bool Value_IsValid(int value) {
1568 }
1569 static constexpr Value Value_MIN = CoolingScheduleStrategy_Value_Value_MIN;
1572 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Value_descriptor() {
1575 template <typename T>
1576 static inline const ::std::string& Value_Name(T value) {
1579 static inline bool Value_Parse(
1580 ::absl::string_view name, Value* PROTOBUF_NONNULL value) {
1581 return CoolingScheduleStrategy_Value_Parse(name, value);
1582 }
1583
1584 // accessors -------------------------------------------------------
1585 // @@protoc_insertion_point(class_scope:operations_research.CoolingScheduleStrategy)
1586 private:
1588 friend class ::google::protobuf::internal::TcParser;
1589 static const ::google::protobuf::internal::TcParseTable<0, 0,
1590 0, 0,
1591 2>
1592 _table_;
1593
1594 friend class ::google::protobuf::MessageLite;
1595 friend class ::google::protobuf::Arena;
1596 template <typename T>
1597 friend class ::google::protobuf::Arena::InternalHelper;
1598 using InternalArenaConstructable_ = void;
1599 using DestructorSkippable_ = void;
1600 struct Impl_ {
1601 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1602 inline explicit Impl_(
1603 ::google::protobuf::internal::InternalVisibility visibility,
1604 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1605 inline explicit Impl_(
1606 ::google::protobuf::internal::InternalVisibility visibility,
1607 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1608 const CoolingScheduleStrategy& from_msg);
1609 PROTOBUF_TSAN_DECLARE_MEMBER
1610 };
1611 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
1612};
1613
1614OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull CoolingScheduleStrategy_class_data_;
1615// -------------------------------------------------------------------
1616
1617class OR_PROTO_DLL AcceptanceStrategy final : public ::google::protobuf::internal::ZeroFieldsBase
1618/* @@protoc_insertion_point(class_definition:operations_research.AcceptanceStrategy) */ {
1619 public:
1620 inline AcceptanceStrategy() : AcceptanceStrategy(nullptr) {}
1621
1622#if defined(PROTOBUF_CUSTOM_VTABLE)
1623 void operator delete(AcceptanceStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1624 SharedDtor(*msg);
1625 ::google::protobuf::internal::SizedDelete(msg, sizeof(AcceptanceStrategy));
1627#endif
1628
1629 template <typename = void>
1630 explicit PROTOBUF_CONSTEXPR AcceptanceStrategy(::google::protobuf::internal::ConstantInitialized);
1631
1632 inline AcceptanceStrategy(const AcceptanceStrategy& from) : AcceptanceStrategy(nullptr, from) {}
1633 inline AcceptanceStrategy(AcceptanceStrategy&& from) noexcept
1634 : AcceptanceStrategy(nullptr, ::std::move(from)) {}
1635 inline AcceptanceStrategy& operator=(const AcceptanceStrategy& from) {
1636 CopyFrom(from);
1637 return *this;
1638 }
1640 if (this == &from) return *this;
1641 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1642 InternalSwap(&from);
1643 } else {
1645 }
1646 return *this;
1647 }
1649 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1650 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1651 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1652 }
1653 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1654 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1655 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1656 }
1657
1658 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1659 return GetDescriptor();
1660 }
1661 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1662 return default_instance().GetMetadata().descriptor;
1663 }
1664 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1665 return default_instance().GetMetadata().reflection;
1666 }
1668 return *reinterpret_cast<const AcceptanceStrategy*>(
1671 static constexpr int kIndexInFileMessages = 9;
1672 friend void swap(AcceptanceStrategy& a, AcceptanceStrategy& b) { a.Swap(&b); }
1673 inline void Swap(AcceptanceStrategy* PROTOBUF_NONNULL other) {
1674 if (other == this) return;
1675 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1676 InternalSwap(other);
1677 } else {
1678 ::google::protobuf::internal::GenericSwap(this, other);
1679 }
1681 void UnsafeArenaSwap(AcceptanceStrategy* PROTOBUF_NONNULL other) {
1682 if (other == this) return;
1683 ABSL_DCHECK(GetArena() == other->GetArena());
1684 InternalSwap(other);
1685 }
1686
1687 // implements Message ----------------------------------------------
1688
1689 AcceptanceStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1690 return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct<AcceptanceStrategy>(arena);
1691 }
1692 using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom;
1693 inline void CopyFrom(const AcceptanceStrategy& from) {
1694 ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from);
1695 }
1696 using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom;
1697 void MergeFrom(const AcceptanceStrategy& from) {
1698 ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from);
1699 }
1700
1701 public:
1702 bool IsInitialized() const {
1703 return true;
1704 }
1705 private:
1706 template <typename T>
1707 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1708 static ::absl::string_view FullMessageName() { return "operations_research.AcceptanceStrategy"; }
1709
1710 protected:
1711 explicit AcceptanceStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1712 AcceptanceStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const AcceptanceStrategy& from);
1714 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, AcceptanceStrategy&& from) noexcept
1715 : AcceptanceStrategy(arena) {
1716 *this = ::std::move(from);
1717 }
1718 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1719 static void* PROTOBUF_NONNULL PlacementNew_(
1720 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1721 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1722 static constexpr auto InternalNewImpl_();
1723
1724 public:
1725 static constexpr auto InternalGenerateClassData_();
1726
1727 ::google::protobuf::Metadata GetMetadata() const;
1728 // nested types ----------------------------------------------------
1730 static constexpr Value UNSET = AcceptanceStrategy_Value_UNSET;
1733 static inline bool Value_IsValid(int value) {
1735 }
1736 static constexpr Value Value_MIN = AcceptanceStrategy_Value_Value_MIN;
1737 static constexpr Value Value_MAX = AcceptanceStrategy_Value_Value_MAX;
1739 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Value_descriptor() {
1742 template <typename T>
1743 static inline const ::std::string& Value_Name(T value) {
1744 return AcceptanceStrategy_Value_Name(value);
1746 static inline bool Value_Parse(
1747 ::absl::string_view name, Value* PROTOBUF_NONNULL value) {
1749 }
1750
1751 // accessors -------------------------------------------------------
1752 // @@protoc_insertion_point(class_scope:operations_research.AcceptanceStrategy)
1753 private:
1754 class _Internal;
1755 friend class ::google::protobuf::internal::TcParser;
1756 static const ::google::protobuf::internal::TcParseTable<0, 0,
1757 0, 0,
1758 2>
1759 _table_;
1760
1761 friend class ::google::protobuf::MessageLite;
1762 friend class ::google::protobuf::Arena;
1763 template <typename T>
1764 friend class ::google::protobuf::Arena::InternalHelper;
1765 using InternalArenaConstructable_ = void;
1766 using DestructorSkippable_ = void;
1767 struct Impl_ {
1768 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1769 inline explicit Impl_(
1770 ::google::protobuf::internal::InternalVisibility visibility,
1771 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1772 inline explicit Impl_(
1773 ::google::protobuf::internal::InternalVisibility visibility,
1774 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1775 const AcceptanceStrategy& from_msg);
1776 PROTOBUF_TSAN_DECLARE_MEMBER
1777 };
1778 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
1779};
1780
1781OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AcceptanceStrategy_class_data_;
1782// -------------------------------------------------------------------
1783
1784class OR_PROTO_DLL RuinStrategy final : public ::google::protobuf::Message
1785/* @@protoc_insertion_point(class_definition:operations_research.RuinStrategy) */ {
1786 public:
1787 inline RuinStrategy() : RuinStrategy(nullptr) {}
1788 ~RuinStrategy() PROTOBUF_FINAL;
1789
1790#if defined(PROTOBUF_CUSTOM_VTABLE)
1791 void operator delete(RuinStrategy* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1792 SharedDtor(*msg);
1793 ::google::protobuf::internal::SizedDelete(msg, sizeof(RuinStrategy));
1795#endif
1796
1797 template <typename = void>
1798 explicit PROTOBUF_CONSTEXPR RuinStrategy(::google::protobuf::internal::ConstantInitialized);
1799
1800 inline RuinStrategy(const RuinStrategy& from) : RuinStrategy(nullptr, from) {}
1801 inline RuinStrategy(RuinStrategy&& from) noexcept
1802 : RuinStrategy(nullptr, ::std::move(from)) {}
1803 inline RuinStrategy& operator=(const RuinStrategy& from) {
1804 CopyFrom(from);
1805 return *this;
1806 }
1807 inline RuinStrategy& operator=(RuinStrategy&& from) noexcept {
1808 if (this == &from) return *this;
1809 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1810 InternalSwap(&from);
1811 } else {
1812 CopyFrom(from);
1814 return *this;
1815 }
1816
1817 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1818 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1819 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1820 }
1821 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1822 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1823 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1824 }
1825
1826 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1828 }
1829 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1830 return default_instance().GetMetadata().descriptor;
1832 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1833 return default_instance().GetMetadata().reflection;
1834 }
1835 static const RuinStrategy& default_instance() {
1836 return *reinterpret_cast<const RuinStrategy*>(
1838 }
1843 STRATEGY_NOT_SET = 0,
1844 };
1845 static constexpr int kIndexInFileMessages = 3;
1846 friend void swap(RuinStrategy& a, RuinStrategy& b) { a.Swap(&b); }
1847 inline void Swap(RuinStrategy* PROTOBUF_NONNULL other) {
1848 if (other == this) return;
1849 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1850 InternalSwap(other);
1851 } else {
1852 ::google::protobuf::internal::GenericSwap(this, other);
1854 }
1855 void UnsafeArenaSwap(RuinStrategy* PROTOBUF_NONNULL other) {
1856 if (other == this) return;
1857 ABSL_DCHECK(GetArena() == other->GetArena());
1858 InternalSwap(other);
1859 }
1860
1861 // implements Message ----------------------------------------------
1862
1863 RuinStrategy* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1864 return ::google::protobuf::Message::DefaultConstruct<RuinStrategy>(arena);
1866 using ::google::protobuf::Message::CopyFrom;
1867 void CopyFrom(const RuinStrategy& from);
1868 using ::google::protobuf::Message::MergeFrom;
1869 void MergeFrom(const RuinStrategy& from) { RuinStrategy::MergeImpl(*this, from); }
1870
1871 private:
1872 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1873 const ::google::protobuf::MessageLite& from_msg);
1874
1875 public:
1876 bool IsInitialized() const {
1877 return true;
1878 }
1879 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1880 #if defined(PROTOBUF_CUSTOM_VTABLE)
1881 private:
1882 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1883 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1884 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1885 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1887 public:
1888 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1889 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1890 ::uint8_t* PROTOBUF_NONNULL target,
1891 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1892 return _InternalSerialize(*this, target, stream);
1893 }
1894 #else // PROTOBUF_CUSTOM_VTABLE
1895 ::size_t ByteSizeLong() const final;
1896 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1897 ::uint8_t* PROTOBUF_NONNULL target,
1898 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1899 #endif // PROTOBUF_CUSTOM_VTABLE
1900 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1901
1902 private:
1903 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1904 static void SharedDtor(MessageLite& self);
1905 void InternalSwap(RuinStrategy* PROTOBUF_NONNULL other);
1906 private:
1907 template <typename T>
1908 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1909 static ::absl::string_view FullMessageName() { return "operations_research.RuinStrategy"; }
1911 protected:
1912 explicit RuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1913 RuinStrategy(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const RuinStrategy& from);
1915 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, RuinStrategy&& from) noexcept
1916 : RuinStrategy(arena) {
1917 *this = ::std::move(from);
1918 }
1919 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1920 static void* PROTOBUF_NONNULL PlacementNew_(
1921 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1922 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1923 static constexpr auto InternalNewImpl_();
1925 public:
1926 static constexpr auto InternalGenerateClassData_();
1927
1928 ::google::protobuf::Metadata GetMetadata() const;
1929 // nested types ----------------------------------------------------
1930
1931 // accessors -------------------------------------------------------
1932 enum : int {
1935 kSisrFieldNumber = 3,
1936 };
1937 // .operations_research.SpatiallyCloseRoutesRuinStrategy spatially_close_routes = 1;
1938 bool has_spatially_close_routes() const;
1939 private:
1940 bool _internal_has_spatially_close_routes() const;
1941
1942 public:
1944 const ::operations_research::SpatiallyCloseRoutesRuinStrategy& spatially_close_routes() const;
1950
1951 private:
1952 const ::operations_research::SpatiallyCloseRoutesRuinStrategy& _internal_spatially_close_routes() const;
1953 ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL _internal_mutable_spatially_close_routes();
1954
1955 public:
1956 // .operations_research.RandomWalkRuinStrategy random_walk = 2;
1957 bool has_random_walk() const;
1958 private:
1959 bool _internal_has_random_walk() const;
1960
1961 public:
1962 void clear_random_walk() ;
1963 const ::operations_research::RandomWalkRuinStrategy& random_walk() const;
1964 [[nodiscard]] ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NULLABLE release_random_walk();
1969
1970 private:
1971 const ::operations_research::RandomWalkRuinStrategy& _internal_random_walk() const;
1972 ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NONNULL _internal_mutable_random_walk();
1973
1974 public:
1975 // .operations_research.SISRRuinStrategy sisr = 3;
1976 bool has_sisr() const;
1977 private:
1978 bool _internal_has_sisr() const;
1979
1980 public:
1981 void clear_sisr() ;
1982 const ::operations_research::SISRRuinStrategy& sisr() const;
1983 [[nodiscard]] ::operations_research::SISRRuinStrategy* PROTOBUF_NULLABLE release_sisr();
1985 void set_allocated_sisr(::operations_research::SISRRuinStrategy* PROTOBUF_NULLABLE value);
1988
1989 private:
1990 const ::operations_research::SISRRuinStrategy& _internal_sisr() const;
1991 ::operations_research::SISRRuinStrategy* PROTOBUF_NONNULL _internal_mutable_sisr();
1992
1993 public:
1994 void clear_strategy();
1996 // @@protoc_insertion_point(class_scope:operations_research.RuinStrategy)
1997 private:
1998 class _Internal;
1999 void set_has_spatially_close_routes();
2000 void set_has_random_walk();
2001 void set_has_sisr();
2002 inline bool has_strategy() const;
2003 inline void clear_has_strategy();
2004 friend class ::google::protobuf::internal::TcParser;
2005 static const ::google::protobuf::internal::TcParseTable<0, 3,
2006 3, 0,
2007 2>
2008 _table_;
2009
2010 friend class ::google::protobuf::MessageLite;
2011 friend class ::google::protobuf::Arena;
2012 template <typename T>
2013 friend class ::google::protobuf::Arena::InternalHelper;
2014 using InternalArenaConstructable_ = void;
2015 using DestructorSkippable_ = void;
2016 struct Impl_ {
2017 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
2018 inline explicit Impl_(
2019 ::google::protobuf::internal::InternalVisibility visibility,
2020 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2021 inline explicit Impl_(
2022 ::google::protobuf::internal::InternalVisibility visibility,
2023 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2024 const RuinStrategy& from_msg);
2025 union StrategyUnion {
2026 constexpr StrategyUnion() : _constinit_{} {}
2027 ::google::protobuf::internal::ConstantInitialized _constinit_;
2028 ::google::protobuf::Message* PROTOBUF_NULLABLE spatially_close_routes_;
2029 ::google::protobuf::Message* PROTOBUF_NULLABLE random_walk_;
2030 ::google::protobuf::Message* PROTOBUF_NULLABLE sisr_;
2031 } strategy_;
2032 ::google::protobuf::internal::CachedSize _cached_size_;
2033 ::uint32_t _oneof_case_[1];
2034 PROTOBUF_TSAN_DECLARE_MEMBER
2036 union { Impl_ _impl_; };
2037 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
2040OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinStrategy_class_data_;
2041// -------------------------------------------------------------------
2042
2043class OR_PROTO_DLL RuinRecreateParameters final : public ::google::protobuf::Message
2044/* @@protoc_insertion_point(class_definition:operations_research.RuinRecreateParameters) */ {
2045 public:
2047 ~RuinRecreateParameters() PROTOBUF_FINAL;
2048
2049#if defined(PROTOBUF_CUSTOM_VTABLE)
2050 void operator delete(RuinRecreateParameters* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
2051 SharedDtor(*msg);
2052 ::google::protobuf::internal::SizedDelete(msg, sizeof(RuinRecreateParameters));
2053 }
2054#endif
2055
2056 template <typename = void>
2057 explicit PROTOBUF_CONSTEXPR RuinRecreateParameters(::google::protobuf::internal::ConstantInitialized);
2058
2059 inline RuinRecreateParameters(const RuinRecreateParameters& from) : RuinRecreateParameters(nullptr, from) {}
2060 inline RuinRecreateParameters(RuinRecreateParameters&& from) noexcept
2061 : RuinRecreateParameters(nullptr, ::std::move(from)) {}
2062 inline RuinRecreateParameters& operator=(const RuinRecreateParameters& from) {
2063 CopyFrom(from);
2064 return *this;
2065 }
2066 inline RuinRecreateParameters& operator=(RuinRecreateParameters&& from) noexcept {
2067 if (this == &from) return *this;
2068 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
2069 InternalSwap(&from);
2070 } else {
2072 }
2073 return *this;
2074 }
2075
2076 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
2077 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2078 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
2079 }
2080 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
2081 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2082 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
2083 }
2084
2085 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
2086 return GetDescriptor();
2088 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
2089 return default_instance().GetMetadata().descriptor;
2090 }
2091 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
2092 return default_instance().GetMetadata().reflection;
2093 }
2094 static const RuinRecreateParameters& default_instance() {
2095 return *reinterpret_cast<const RuinRecreateParameters*>(
2097 }
2098 static constexpr int kIndexInFileMessages = 5;
2100 inline void Swap(RuinRecreateParameters* PROTOBUF_NONNULL other) {
2101 if (other == this) return;
2102 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
2103 InternalSwap(other);
2104 } else {
2105 ::google::protobuf::internal::GenericSwap(this, other);
2106 }
2107 }
2108 void UnsafeArenaSwap(RuinRecreateParameters* PROTOBUF_NONNULL other) {
2109 if (other == this) return;
2110 ABSL_DCHECK(GetArena() == other->GetArena());
2111 InternalSwap(other);
2112 }
2113
2114 // implements Message ----------------------------------------------
2115
2116 RuinRecreateParameters* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
2117 return ::google::protobuf::Message::DefaultConstruct<RuinRecreateParameters>(arena);
2118 }
2119 using ::google::protobuf::Message::CopyFrom;
2120 void CopyFrom(const RuinRecreateParameters& from);
2121 using ::google::protobuf::Message::MergeFrom;
2122 void MergeFrom(const RuinRecreateParameters& from) { RuinRecreateParameters::MergeImpl(*this, from); }
2123
2124 private:
2125 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
2126 const ::google::protobuf::MessageLite& from_msg);
2128 public:
2129 bool IsInitialized() const {
2130 return true;
2131 }
2132 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
2133 #if defined(PROTOBUF_CUSTOM_VTABLE)
2134 private:
2135 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
2136 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2137 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
2138 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
2139
2140 public:
2141 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
2142 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2143 ::uint8_t* PROTOBUF_NONNULL target,
2144 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2145 return _InternalSerialize(*this, target, stream);
2146 }
2147 #else // PROTOBUF_CUSTOM_VTABLE
2148 ::size_t ByteSizeLong() const final;
2149 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2150 ::uint8_t* PROTOBUF_NONNULL target,
2151 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
2152 #endif // PROTOBUF_CUSTOM_VTABLE
2153 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
2154
2155 private:
2156 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2157 static void SharedDtor(MessageLite& self);
2158 void InternalSwap(RuinRecreateParameters* PROTOBUF_NONNULL other);
2159 private:
2160 template <typename T>
2161 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
2162 static ::absl::string_view FullMessageName() { return "operations_research.RuinRecreateParameters"; }
2163
2164 protected:
2165 explicit RuinRecreateParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2166 RuinRecreateParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const RuinRecreateParameters& from);
2168 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, RuinRecreateParameters&& from) noexcept
2169 : RuinRecreateParameters(arena) {
2170 *this = ::std::move(from);
2171 }
2172 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
2173 static void* PROTOBUF_NONNULL PlacementNew_(
2174 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2175 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2176 static constexpr auto InternalNewImpl_();
2177
2178 public:
2179 static constexpr auto InternalGenerateClassData_();
2180
2181 ::google::protobuf::Metadata GetMetadata() const;
2182 // nested types ----------------------------------------------------
2183
2184 // accessors -------------------------------------------------------
2185 enum : int {
2192 };
2193 // repeated .operations_research.RuinStrategy ruin_strategies = 1;
2194 int ruin_strategies_size() const;
2195 private:
2196 int _internal_ruin_strategies_size() const;
2198 public:
2201 ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>* PROTOBUF_NONNULL mutable_ruin_strategies();
2203 private:
2204 const ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>& _internal_ruin_strategies() const;
2205 ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>* PROTOBUF_NONNULL _internal_mutable_ruin_strategies();
2206 public:
2207 const ::operations_research::RuinStrategy& ruin_strategies(int index) const;
2209 const ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>& ruin_strategies() const;
2210 // .operations_research.RuinCompositionStrategy.Value ruin_composition_strategy = 2;
2214
2215 private:
2216 ::operations_research::RuinCompositionStrategy_Value _internal_ruin_composition_strategy() const;
2217 void _internal_set_ruin_composition_strategy(::operations_research::RuinCompositionStrategy_Value value);
2218
2219 public:
2220 // .operations_research.FirstSolutionStrategy.Value recreate_strategy = 3;
2224
2225 private:
2226 ::operations_research::FirstSolutionStrategy_Value _internal_recreate_strategy() const;
2227 void _internal_set_recreate_strategy(::operations_research::FirstSolutionStrategy_Value value);
2228
2229 public:
2230 // optional double route_selection_neighbors_ratio = 4;
2233 double route_selection_neighbors_ratio() const;
2234 void set_route_selection_neighbors_ratio(double value);
2235
2236 private:
2237 double _internal_route_selection_neighbors_ratio() const;
2238 void _internal_set_route_selection_neighbors_ratio(double value);
2239
2240 public:
2241 // optional uint32 route_selection_min_neighbors = 5;
2244 ::uint32_t route_selection_min_neighbors() const;
2245 void set_route_selection_min_neighbors(::uint32_t value);
2246
2247 private:
2248 ::uint32_t _internal_route_selection_min_neighbors() const;
2249 void _internal_set_route_selection_min_neighbors(::uint32_t value);
2250
2251 public:
2252 // optional uint32 route_selection_max_neighbors = 6;
2255 ::uint32_t route_selection_max_neighbors() const;
2256 void set_route_selection_max_neighbors(::uint32_t value);
2257
2258 private:
2259 ::uint32_t _internal_route_selection_max_neighbors() const;
2260 void _internal_set_route_selection_max_neighbors(::uint32_t value);
2261
2262 public:
2263 // @@protoc_insertion_point(class_scope:operations_research.RuinRecreateParameters)
2264 private:
2265 class _Internal;
2266 friend class ::google::protobuf::internal::TcParser;
2267 static const ::google::protobuf::internal::TcParseTable<3, 6,
2268 1, 0,
2269 2>
2270 _table_;
2271
2272 friend class ::google::protobuf::MessageLite;
2273 friend class ::google::protobuf::Arena;
2274 template <typename T>
2275 friend class ::google::protobuf::Arena::InternalHelper;
2276 using InternalArenaConstructable_ = void;
2277 using DestructorSkippable_ = void;
2278 struct Impl_ {
2279 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
2280 inline explicit Impl_(
2281 ::google::protobuf::internal::InternalVisibility visibility,
2282 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2283 inline explicit Impl_(
2284 ::google::protobuf::internal::InternalVisibility visibility,
2285 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2286 const RuinRecreateParameters& from_msg);
2287 ::google::protobuf::internal::HasBits<1> _has_bits_;
2288 ::google::protobuf::internal::CachedSize _cached_size_;
2289 ::google::protobuf::RepeatedPtrField< ::operations_research::RuinStrategy > ruin_strategies_;
2290 int ruin_composition_strategy_;
2291 int recreate_strategy_;
2292 double route_selection_neighbors_ratio_;
2293 ::uint32_t route_selection_min_neighbors_;
2294 ::uint32_t route_selection_max_neighbors_;
2295 PROTOBUF_TSAN_DECLARE_MEMBER
2296 };
2297 union { Impl_ _impl_; };
2298 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
2299};
2300
2301OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull RuinRecreateParameters_class_data_;
2302// -------------------------------------------------------------------
2303
2304class OR_PROTO_DLL IteratedLocalSearchParameters final : public ::google::protobuf::Message
2305/* @@protoc_insertion_point(class_definition:operations_research.IteratedLocalSearchParameters) */ {
2306 public:
2307 inline IteratedLocalSearchParameters() : IteratedLocalSearchParameters(nullptr) {}
2310#if defined(PROTOBUF_CUSTOM_VTABLE)
2311 void operator delete(IteratedLocalSearchParameters* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
2312 SharedDtor(*msg);
2313 ::google::protobuf::internal::SizedDelete(msg, sizeof(IteratedLocalSearchParameters));
2314 }
2315#endif
2317 template <typename = void>
2318 explicit PROTOBUF_CONSTEXPR IteratedLocalSearchParameters(::google::protobuf::internal::ConstantInitialized);
2322 : IteratedLocalSearchParameters(nullptr, ::std::move(from)) {}
2323 inline IteratedLocalSearchParameters& operator=(const IteratedLocalSearchParameters& from) {
2324 CopyFrom(from);
2325 return *this;
2326 }
2327 inline IteratedLocalSearchParameters& operator=(IteratedLocalSearchParameters&& from) noexcept {
2328 if (this == &from) return *this;
2329 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
2330 InternalSwap(&from);
2331 } else {
2334 return *this;
2336
2337 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
2338 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2339 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
2340 }
2341 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
2342 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2343 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
2344 }
2345
2346 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
2347 return GetDescriptor();
2348 }
2349 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
2350 return default_instance().GetMetadata().descriptor;
2351 }
2352 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
2353 return default_instance().GetMetadata().reflection;
2354 }
2355 static const IteratedLocalSearchParameters& default_instance() {
2356 return *reinterpret_cast<const IteratedLocalSearchParameters*>(
2359 static constexpr int kIndexInFileMessages = 10;
2360 friend void swap(IteratedLocalSearchParameters& a, IteratedLocalSearchParameters& b) { a.Swap(&b); }
2361 inline void Swap(IteratedLocalSearchParameters* PROTOBUF_NONNULL other) {
2362 if (other == this) return;
2363 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
2364 InternalSwap(other);
2365 } else {
2366 ::google::protobuf::internal::GenericSwap(this, other);
2368 }
2369 void UnsafeArenaSwap(IteratedLocalSearchParameters* PROTOBUF_NONNULL other) {
2370 if (other == this) return;
2371 ABSL_DCHECK(GetArena() == other->GetArena());
2372 InternalSwap(other);
2374
2375 // implements Message ----------------------------------------------
2376
2377 IteratedLocalSearchParameters* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
2378 return ::google::protobuf::Message::DefaultConstruct<IteratedLocalSearchParameters>(arena);
2379 }
2380 using ::google::protobuf::Message::CopyFrom;
2382 using ::google::protobuf::Message::MergeFrom;
2383 void MergeFrom(const IteratedLocalSearchParameters& from) { IteratedLocalSearchParameters::MergeImpl(*this, from); }
2384
2385 private:
2386 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
2387 const ::google::protobuf::MessageLite& from_msg);
2388
2389 public:
2390 bool IsInitialized() const {
2391 return true;
2392 }
2393 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
2394 #if defined(PROTOBUF_CUSTOM_VTABLE)
2395 private:
2396 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
2397 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2398 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
2399 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
2400
2401 public:
2402 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
2403 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2404 ::uint8_t* PROTOBUF_NONNULL target,
2405 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2406 return _InternalSerialize(*this, target, stream);
2407 }
2408 #else // PROTOBUF_CUSTOM_VTABLE
2409 ::size_t ByteSizeLong() const final;
2410 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2411 ::uint8_t* PROTOBUF_NONNULL target,
2412 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
2413 #endif // PROTOBUF_CUSTOM_VTABLE
2414 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
2415
2416 private:
2417 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2418 static void SharedDtor(MessageLite& self);
2419 void InternalSwap(IteratedLocalSearchParameters* PROTOBUF_NONNULL other);
2420 private:
2421 template <typename T>
2422 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
2423 static ::absl::string_view FullMessageName() { return "operations_research.IteratedLocalSearchParameters"; }
2424
2425 protected:
2426 explicit IteratedLocalSearchParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2427 IteratedLocalSearchParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const IteratedLocalSearchParameters& from);
2429 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, IteratedLocalSearchParameters&& from) noexcept
2431 *this = ::std::move(from);
2432 }
2433 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
2434 static void* PROTOBUF_NONNULL PlacementNew_(
2435 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2436 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2437 static constexpr auto InternalNewImpl_();
2438
2439 public:
2440 static constexpr auto InternalGenerateClassData_();
2441
2442 ::google::protobuf::Metadata GetMetadata() const;
2443 // nested types ----------------------------------------------------
2444
2445 // accessors -------------------------------------------------------
2446 enum : int {
2452 };
2453 // .operations_research.RuinRecreateParameters ruin_recreate_parameters = 2;
2454 bool has_ruin_recreate_parameters() const;
2455 void clear_ruin_recreate_parameters() ;
2456 const ::operations_research::RuinRecreateParameters& ruin_recreate_parameters() const;
2457 [[nodiscard]] ::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE release_ruin_recreate_parameters();
2458 ::operations_research::RuinRecreateParameters* PROTOBUF_NONNULL mutable_ruin_recreate_parameters();
2463 private:
2464 const ::operations_research::RuinRecreateParameters& _internal_ruin_recreate_parameters() const;
2465 ::operations_research::RuinRecreateParameters* PROTOBUF_NONNULL _internal_mutable_ruin_recreate_parameters();
2466
2467 public:
2468 // .operations_research.SimulatedAnnealingParameters simulated_annealing_parameters = 5;
2471 const ::operations_research::SimulatedAnnealingParameters& simulated_annealing_parameters() const;
2477
2478 private:
2479 const ::operations_research::SimulatedAnnealingParameters& _internal_simulated_annealing_parameters() const;
2480 ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NONNULL _internal_mutable_simulated_annealing_parameters();
2481
2482 public:
2483 // .operations_research.PerturbationStrategy.Value perturbation_strategy = 1;
2487
2488 private:
2489 ::operations_research::PerturbationStrategy_Value _internal_perturbation_strategy() const;
2490 void _internal_set_perturbation_strategy(::operations_research::PerturbationStrategy_Value value);
2491
2492 public:
2493 // optional bool improve_perturbed_solution = 3;
2494 bool has_improve_perturbed_solution() const;
2496 bool improve_perturbed_solution() const;
2497 void set_improve_perturbed_solution(bool value);
2498
2499 private:
2500 bool _internal_improve_perturbed_solution() const;
2501 void _internal_set_improve_perturbed_solution(bool value);
2502
2503 public:
2504 // .operations_research.AcceptanceStrategy.Value acceptance_strategy = 4;
2508
2509 private:
2510 ::operations_research::AcceptanceStrategy_Value _internal_acceptance_strategy() const;
2511 void _internal_set_acceptance_strategy(::operations_research::AcceptanceStrategy_Value value);
2512
2513 public:
2514 // @@protoc_insertion_point(class_scope:operations_research.IteratedLocalSearchParameters)
2515 private:
2516 class _Internal;
2517 friend class ::google::protobuf::internal::TcParser;
2518 static const ::google::protobuf::internal::TcParseTable<3, 5,
2519 2, 0,
2520 2>
2521 _table_;
2522
2523 friend class ::google::protobuf::MessageLite;
2524 friend class ::google::protobuf::Arena;
2525 template <typename T>
2526 friend class ::google::protobuf::Arena::InternalHelper;
2527 using InternalArenaConstructable_ = void;
2528 using DestructorSkippable_ = void;
2529 struct Impl_ {
2530 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
2531 inline explicit Impl_(
2532 ::google::protobuf::internal::InternalVisibility visibility,
2533 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2534 inline explicit Impl_(
2535 ::google::protobuf::internal::InternalVisibility visibility,
2536 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2537 const IteratedLocalSearchParameters& from_msg);
2538 ::google::protobuf::internal::HasBits<1> _has_bits_;
2539 ::google::protobuf::internal::CachedSize _cached_size_;
2540 ::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE ruin_recreate_parameters_;
2541 ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NULLABLE simulated_annealing_parameters_;
2542 int perturbation_strategy_;
2543 bool improve_perturbed_solution_;
2544 int acceptance_strategy_;
2545 PROTOBUF_TSAN_DECLARE_MEMBER
2546 };
2547 union { Impl_ _impl_; };
2548 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto;
2549};
2550
2551OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull IteratedLocalSearchParameters_class_data_;
2552
2553// ===================================================================
2554
2555
2556
2557
2558// ===================================================================
2561#ifdef __GNUC__
2562#pragma GCC diagnostic push
2563#pragma GCC diagnostic ignored "-Wstrict-aliasing"
2564#endif // __GNUC__
2565// -------------------------------------------------------------------
2566
2567// SpatiallyCloseRoutesRuinStrategy
2568
2569// optional uint32 num_ruined_routes = 3;
2571 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2572 return value;
2573}
2575 ::google::protobuf::internal::TSanWrite(&_impl_);
2576 _impl_.num_ruined_routes_ = 0u;
2577 _impl_._has_bits_[0] &= ~0x00000001u;
2578}
2580 // @@protoc_insertion_point(field_get:operations_research.SpatiallyCloseRoutesRuinStrategy.num_ruined_routes)
2581 return _internal_num_ruined_routes();
2582}
2583inline void SpatiallyCloseRoutesRuinStrategy::set_num_ruined_routes(::uint32_t value) {
2584 _internal_set_num_ruined_routes(value);
2585 _impl_._has_bits_[0] |= 0x00000001u;
2586 // @@protoc_insertion_point(field_set:operations_research.SpatiallyCloseRoutesRuinStrategy.num_ruined_routes)
2587}
2588inline ::uint32_t SpatiallyCloseRoutesRuinStrategy::_internal_num_ruined_routes() const {
2589 ::google::protobuf::internal::TSanRead(&_impl_);
2590 return _impl_.num_ruined_routes_;
2591}
2592inline void SpatiallyCloseRoutesRuinStrategy::_internal_set_num_ruined_routes(::uint32_t value) {
2593 ::google::protobuf::internal::TSanWrite(&_impl_);
2594 _impl_.num_ruined_routes_ = value;
2595}
2596
2597// -------------------------------------------------------------------
2599// RandomWalkRuinStrategy
2600
2601// optional uint32 num_removed_visits = 7;
2603 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2604 return value;
2605}
2607 ::google::protobuf::internal::TSanWrite(&_impl_);
2608 _impl_.num_removed_visits_ = 0u;
2609 _impl_._has_bits_[0] &= ~0x00000001u;
2610}
2611inline ::uint32_t RandomWalkRuinStrategy::num_removed_visits() const {
2612 // @@protoc_insertion_point(field_get:operations_research.RandomWalkRuinStrategy.num_removed_visits)
2613 return _internal_num_removed_visits();
2614}
2615inline void RandomWalkRuinStrategy::set_num_removed_visits(::uint32_t value) {
2616 _internal_set_num_removed_visits(value);
2617 _impl_._has_bits_[0] |= 0x00000001u;
2618 // @@protoc_insertion_point(field_set:operations_research.RandomWalkRuinStrategy.num_removed_visits)
2619}
2620inline ::uint32_t RandomWalkRuinStrategy::_internal_num_removed_visits() const {
2621 ::google::protobuf::internal::TSanRead(&_impl_);
2622 return _impl_.num_removed_visits_;
2623}
2624inline void RandomWalkRuinStrategy::_internal_set_num_removed_visits(::uint32_t value) {
2625 ::google::protobuf::internal::TSanWrite(&_impl_);
2626 _impl_.num_removed_visits_ = value;
2628
2629// -------------------------------------------------------------------
2630
2631// SISRRuinStrategy
2632
2633// optional uint32 max_removed_sequence_size = 1;
2635 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2636 return value;
2637}
2639 ::google::protobuf::internal::TSanWrite(&_impl_);
2640 _impl_.max_removed_sequence_size_ = 0u;
2641 _impl_._has_bits_[0] &= ~0x00000001u;
2642}
2643inline ::uint32_t SISRRuinStrategy::max_removed_sequence_size() const {
2644 // @@protoc_insertion_point(field_get:operations_research.SISRRuinStrategy.max_removed_sequence_size)
2645 return _internal_max_removed_sequence_size();
2646}
2647inline void SISRRuinStrategy::set_max_removed_sequence_size(::uint32_t value) {
2648 _internal_set_max_removed_sequence_size(value);
2649 _impl_._has_bits_[0] |= 0x00000001u;
2650 // @@protoc_insertion_point(field_set:operations_research.SISRRuinStrategy.max_removed_sequence_size)
2652inline ::uint32_t SISRRuinStrategy::_internal_max_removed_sequence_size() const {
2653 ::google::protobuf::internal::TSanRead(&_impl_);
2654 return _impl_.max_removed_sequence_size_;
2656inline void SISRRuinStrategy::_internal_set_max_removed_sequence_size(::uint32_t value) {
2657 ::google::protobuf::internal::TSanWrite(&_impl_);
2658 _impl_.max_removed_sequence_size_ = value;
2659}
2661// optional uint32 avg_num_removed_visits = 2;
2663 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2664 return value;
2665}
2667 ::google::protobuf::internal::TSanWrite(&_impl_);
2668 _impl_.avg_num_removed_visits_ = 0u;
2669 _impl_._has_bits_[0] &= ~0x00000002u;
2670}
2671inline ::uint32_t SISRRuinStrategy::avg_num_removed_visits() const {
2672 // @@protoc_insertion_point(field_get:operations_research.SISRRuinStrategy.avg_num_removed_visits)
2673 return _internal_avg_num_removed_visits();
2674}
2675inline void SISRRuinStrategy::set_avg_num_removed_visits(::uint32_t value) {
2676 _internal_set_avg_num_removed_visits(value);
2677 _impl_._has_bits_[0] |= 0x00000002u;
2678 // @@protoc_insertion_point(field_set:operations_research.SISRRuinStrategy.avg_num_removed_visits)
2680inline ::uint32_t SISRRuinStrategy::_internal_avg_num_removed_visits() const {
2681 ::google::protobuf::internal::TSanRead(&_impl_);
2682 return _impl_.avg_num_removed_visits_;
2684inline void SISRRuinStrategy::_internal_set_avg_num_removed_visits(::uint32_t value) {
2685 ::google::protobuf::internal::TSanWrite(&_impl_);
2686 _impl_.avg_num_removed_visits_ = value;
2687}
2689// optional double bypass_factor = 3;
2690inline bool SISRRuinStrategy::has_bypass_factor() const {
2691 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2692 return value;
2693}
2695 ::google::protobuf::internal::TSanWrite(&_impl_);
2696 _impl_.bypass_factor_ = 0;
2697 _impl_._has_bits_[0] &= ~0x00000004u;
2698}
2699inline double SISRRuinStrategy::bypass_factor() const {
2700 // @@protoc_insertion_point(field_get:operations_research.SISRRuinStrategy.bypass_factor)
2701 return _internal_bypass_factor();
2702}
2703inline void SISRRuinStrategy::set_bypass_factor(double value) {
2704 _internal_set_bypass_factor(value);
2705 _impl_._has_bits_[0] |= 0x00000004u;
2706 // @@protoc_insertion_point(field_set:operations_research.SISRRuinStrategy.bypass_factor)
2708inline double SISRRuinStrategy::_internal_bypass_factor() const {
2709 ::google::protobuf::internal::TSanRead(&_impl_);
2710 return _impl_.bypass_factor_;
2712inline void SISRRuinStrategy::_internal_set_bypass_factor(double value) {
2713 ::google::protobuf::internal::TSanWrite(&_impl_);
2714 _impl_.bypass_factor_ = value;
2715}
2717// -------------------------------------------------------------------
2718
2719// RuinStrategy
2721// .operations_research.SpatiallyCloseRoutesRuinStrategy spatially_close_routes = 1;
2722inline bool RuinStrategy::has_spatially_close_routes() const {
2724}
2725inline bool RuinStrategy::_internal_has_spatially_close_routes() const {
2727}
2728inline void RuinStrategy::set_has_spatially_close_routes() {
2729 _impl_._oneof_case_[0] = kSpatiallyCloseRoutes;
2730}
2732 ::google::protobuf::internal::TSanWrite(&_impl_);
2734 if (GetArena() == nullptr) {
2735 delete _impl_.strategy_.spatially_close_routes_;
2736 } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
2737 ::google::protobuf::internal::MaybePoisonAfterClear(_impl_.strategy_.spatially_close_routes_);
2738 }
2739 clear_has_strategy();
2741}
2742inline ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::release_spatially_close_routes() {
2743 // @@protoc_insertion_point(field_release:operations_research.RuinStrategy.spatially_close_routes)
2745 clear_has_strategy();
2747 if (GetArena() != nullptr) {
2748 temp = ::google::protobuf::internal::DuplicateIfNonNull(temp);
2750 _impl_.strategy_.spatially_close_routes_ = nullptr;
2751 return temp;
2752 } else {
2753 return nullptr;
2754 }
2755}
2756inline const ::operations_research::SpatiallyCloseRoutesRuinStrategy& RuinStrategy::_internal_spatially_close_routes() const {
2757 return strategy_case() == kSpatiallyCloseRoutes ? *reinterpret_cast<::operations_research::SpatiallyCloseRoutesRuinStrategy*>(_impl_.strategy_.spatially_close_routes_) : reinterpret_cast<::operations_research::SpatiallyCloseRoutesRuinStrategy&>(::operations_research::_SpatiallyCloseRoutesRuinStrategy_default_instance_);
2758}
2759inline const ::operations_research::SpatiallyCloseRoutesRuinStrategy& RuinStrategy::spatially_close_routes() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2760 // @@protoc_insertion_point(field_get:operations_research.RuinStrategy.spatially_close_routes)
2761 return _internal_spatially_close_routes();
2762}
2763inline ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::unsafe_arena_release_spatially_close_routes() {
2764 // @@protoc_insertion_point(field_unsafe_arena_release:operations_research.RuinStrategy.spatially_close_routes)
2766 clear_has_strategy();
2768 _impl_.strategy_.spatially_close_routes_ = nullptr;
2769 return temp;
2770 } else {
2771 return nullptr;
2772 }
2773}
2775 ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NULLABLE value) {
2776 // We rely on the oneof clear method to free the earlier contents
2777 // of this oneof. We can directly use the pointer we're given to
2778 // set the new value.
2780 if (value) {
2781 set_has_spatially_close_routes();
2782 _impl_.strategy_.spatially_close_routes_ = reinterpret_cast<::google::protobuf::Message*>(value);
2783 }
2784 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RuinStrategy.spatially_close_routes)
2785}
2786inline ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL RuinStrategy::_internal_mutable_spatially_close_routes() {
2789 set_has_spatially_close_routes();
2790 _impl_.strategy_.spatially_close_routes_ = reinterpret_cast<::google::protobuf::Message*>(
2791 ::google::protobuf::Message::DefaultConstruct<::operations_research::SpatiallyCloseRoutesRuinStrategy>(GetArena()));
2794}
2795inline ::operations_research::SpatiallyCloseRoutesRuinStrategy* PROTOBUF_NONNULL RuinStrategy::mutable_spatially_close_routes()
2796 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2797 ::operations_research::SpatiallyCloseRoutesRuinStrategy* _msg = _internal_mutable_spatially_close_routes();
2798 // @@protoc_insertion_point(field_mutable:operations_research.RuinStrategy.spatially_close_routes)
2799 return _msg;
2800}
2801
2802// .operations_research.RandomWalkRuinStrategy random_walk = 2;
2803inline bool RuinStrategy::has_random_walk() const {
2804 return strategy_case() == kRandomWalk;
2805}
2806inline bool RuinStrategy::_internal_has_random_walk() const {
2807 return strategy_case() == kRandomWalk;
2808}
2809inline void RuinStrategy::set_has_random_walk() {
2810 _impl_._oneof_case_[0] = kRandomWalk;
2811}
2812inline void RuinStrategy::clear_random_walk() {
2813 ::google::protobuf::internal::TSanWrite(&_impl_);
2814 if (strategy_case() == kRandomWalk) {
2815 if (GetArena() == nullptr) {
2816 delete _impl_.strategy_.random_walk_;
2817 } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
2818 ::google::protobuf::internal::MaybePoisonAfterClear(_impl_.strategy_.random_walk_);
2819 }
2820 clear_has_strategy();
2822}
2823inline ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::release_random_walk() {
2824 // @@protoc_insertion_point(field_release:operations_research.RuinStrategy.random_walk)
2825 if (strategy_case() == kRandomWalk) {
2826 clear_has_strategy();
2827 auto* temp = reinterpret_cast<::operations_research::RandomWalkRuinStrategy*>(_impl_.strategy_.random_walk_);
2828 if (GetArena() != nullptr) {
2829 temp = ::google::protobuf::internal::DuplicateIfNonNull(temp);
2831 _impl_.strategy_.random_walk_ = nullptr;
2832 return temp;
2833 } else {
2834 return nullptr;
2835 }
2836}
2837inline const ::operations_research::RandomWalkRuinStrategy& RuinStrategy::_internal_random_walk() const {
2838 return strategy_case() == kRandomWalk ? *reinterpret_cast<::operations_research::RandomWalkRuinStrategy*>(_impl_.strategy_.random_walk_) : reinterpret_cast<::operations_research::RandomWalkRuinStrategy&>(::operations_research::_RandomWalkRuinStrategy_default_instance_);
2839}
2840inline const ::operations_research::RandomWalkRuinStrategy& RuinStrategy::random_walk() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2841 // @@protoc_insertion_point(field_get:operations_research.RuinStrategy.random_walk)
2842 return _internal_random_walk();
2843}
2844inline ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::unsafe_arena_release_random_walk() {
2845 // @@protoc_insertion_point(field_unsafe_arena_release:operations_research.RuinStrategy.random_walk)
2846 if (strategy_case() == kRandomWalk) {
2847 clear_has_strategy();
2848 auto* temp = reinterpret_cast<::operations_research::RandomWalkRuinStrategy*>(_impl_.strategy_.random_walk_);
2849 _impl_.strategy_.random_walk_ = nullptr;
2850 return temp;
2851 } else {
2852 return nullptr;
2853 }
2854}
2856 ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NULLABLE value) {
2857 // We rely on the oneof clear method to free the earlier contents
2858 // of this oneof. We can directly use the pointer we're given to
2859 // set the new value.
2861 if (value) {
2862 set_has_random_walk();
2863 _impl_.strategy_.random_walk_ = reinterpret_cast<::google::protobuf::Message*>(value);
2864 }
2865 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RuinStrategy.random_walk)
2866}
2867inline ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NONNULL RuinStrategy::_internal_mutable_random_walk() {
2868 if (strategy_case() != kRandomWalk) {
2870 set_has_random_walk();
2871 _impl_.strategy_.random_walk_ = reinterpret_cast<::google::protobuf::Message*>(
2872 ::google::protobuf::Message::DefaultConstruct<::operations_research::RandomWalkRuinStrategy>(GetArena()));
2874 return reinterpret_cast<::operations_research::RandomWalkRuinStrategy*>(_impl_.strategy_.random_walk_);
2875}
2876inline ::operations_research::RandomWalkRuinStrategy* PROTOBUF_NONNULL RuinStrategy::mutable_random_walk()
2877 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2878 ::operations_research::RandomWalkRuinStrategy* _msg = _internal_mutable_random_walk();
2879 // @@protoc_insertion_point(field_mutable:operations_research.RuinStrategy.random_walk)
2880 return _msg;
2881}
2882
2883// .operations_research.SISRRuinStrategy sisr = 3;
2884inline bool RuinStrategy::has_sisr() const {
2885 return strategy_case() == kSisr;
2886}
2887inline bool RuinStrategy::_internal_has_sisr() const {
2888 return strategy_case() == kSisr;
2889}
2890inline void RuinStrategy::set_has_sisr() {
2891 _impl_._oneof_case_[0] = kSisr;
2892}
2893inline void RuinStrategy::clear_sisr() {
2894 ::google::protobuf::internal::TSanWrite(&_impl_);
2895 if (strategy_case() == kSisr) {
2896 if (GetArena() == nullptr) {
2897 delete _impl_.strategy_.sisr_;
2898 } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
2899 ::google::protobuf::internal::MaybePoisonAfterClear(_impl_.strategy_.sisr_);
2900 }
2901 clear_has_strategy();
2903}
2904inline ::operations_research::SISRRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::release_sisr() {
2905 // @@protoc_insertion_point(field_release:operations_research.RuinStrategy.sisr)
2906 if (strategy_case() == kSisr) {
2907 clear_has_strategy();
2908 auto* temp = reinterpret_cast<::operations_research::SISRRuinStrategy*>(_impl_.strategy_.sisr_);
2909 if (GetArena() != nullptr) {
2910 temp = ::google::protobuf::internal::DuplicateIfNonNull(temp);
2912 _impl_.strategy_.sisr_ = nullptr;
2913 return temp;
2914 } else {
2915 return nullptr;
2916 }
2917}
2918inline const ::operations_research::SISRRuinStrategy& RuinStrategy::_internal_sisr() const {
2919 return strategy_case() == kSisr ? *reinterpret_cast<::operations_research::SISRRuinStrategy*>(_impl_.strategy_.sisr_) : reinterpret_cast<::operations_research::SISRRuinStrategy&>(::operations_research::_SISRRuinStrategy_default_instance_);
2920}
2921inline const ::operations_research::SISRRuinStrategy& RuinStrategy::sisr() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2922 // @@protoc_insertion_point(field_get:operations_research.RuinStrategy.sisr)
2923 return _internal_sisr();
2924}
2925inline ::operations_research::SISRRuinStrategy* PROTOBUF_NULLABLE RuinStrategy::unsafe_arena_release_sisr() {
2926 // @@protoc_insertion_point(field_unsafe_arena_release:operations_research.RuinStrategy.sisr)
2927 if (strategy_case() == kSisr) {
2928 clear_has_strategy();
2929 auto* temp = reinterpret_cast<::operations_research::SISRRuinStrategy*>(_impl_.strategy_.sisr_);
2930 _impl_.strategy_.sisr_ = nullptr;
2931 return temp;
2932 } else {
2933 return nullptr;
2934 }
2935}
2937 ::operations_research::SISRRuinStrategy* PROTOBUF_NULLABLE value) {
2938 // We rely on the oneof clear method to free the earlier contents
2939 // of this oneof. We can directly use the pointer we're given to
2940 // set the new value.
2942 if (value) {
2943 set_has_sisr();
2944 _impl_.strategy_.sisr_ = reinterpret_cast<::google::protobuf::Message*>(value);
2945 }
2946 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.RuinStrategy.sisr)
2947}
2948inline ::operations_research::SISRRuinStrategy* PROTOBUF_NONNULL RuinStrategy::_internal_mutable_sisr() {
2949 if (strategy_case() != kSisr) {
2951 set_has_sisr();
2952 _impl_.strategy_.sisr_ = reinterpret_cast<::google::protobuf::Message*>(
2953 ::google::protobuf::Message::DefaultConstruct<::operations_research::SISRRuinStrategy>(GetArena()));
2955 return reinterpret_cast<::operations_research::SISRRuinStrategy*>(_impl_.strategy_.sisr_);
2956}
2957inline ::operations_research::SISRRuinStrategy* PROTOBUF_NONNULL RuinStrategy::mutable_sisr()
2958 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2959 ::operations_research::SISRRuinStrategy* _msg = _internal_mutable_sisr();
2960 // @@protoc_insertion_point(field_mutable:operations_research.RuinStrategy.sisr)
2961 return _msg;
2962}
2963
2964inline bool RuinStrategy::has_strategy() const {
2965 return strategy_case() != STRATEGY_NOT_SET;
2966}
2967inline void RuinStrategy::clear_has_strategy() {
2968 _impl_._oneof_case_[0] = STRATEGY_NOT_SET;
2969}
2971 return RuinStrategy::StrategyCase(_impl_._oneof_case_[0]);
2972}
2973// -------------------------------------------------------------------
2974
2975// RuinCompositionStrategy
2976
2977// -------------------------------------------------------------------
2978
2979// RuinRecreateParameters
2980
2981// repeated .operations_research.RuinStrategy ruin_strategies = 1;
2982inline int RuinRecreateParameters::_internal_ruin_strategies_size() const {
2983 return _internal_ruin_strategies().size();
2984}
2986 return _internal_ruin_strategies_size();
2987}
2989 ::google::protobuf::internal::TSanWrite(&_impl_);
2990 _impl_.ruin_strategies_.Clear();
2991}
2992inline ::operations_research::RuinStrategy* PROTOBUF_NONNULL RuinRecreateParameters::mutable_ruin_strategies(int index)
2993 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2994 // @@protoc_insertion_point(field_mutable:operations_research.RuinRecreateParameters.ruin_strategies)
2995 return _internal_mutable_ruin_strategies()->Mutable(index);
2996}
2997inline ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>* PROTOBUF_NONNULL RuinRecreateParameters::mutable_ruin_strategies()
2998 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2999 // @@protoc_insertion_point(field_mutable_list:operations_research.RuinRecreateParameters.ruin_strategies)
3000 ::google::protobuf::internal::TSanWrite(&_impl_);
3001 return _internal_mutable_ruin_strategies();
3002}
3003inline const ::operations_research::RuinStrategy& RuinRecreateParameters::ruin_strategies(int index) const
3004 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3005 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.ruin_strategies)
3006 return _internal_ruin_strategies().Get(index);
3007}
3008inline ::operations_research::RuinStrategy* PROTOBUF_NONNULL RuinRecreateParameters::add_ruin_strategies()
3009 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3010 ::google::protobuf::internal::TSanWrite(&_impl_);
3011 ::operations_research::RuinStrategy* _add = _internal_mutable_ruin_strategies()->Add();
3012 // @@protoc_insertion_point(field_add:operations_research.RuinRecreateParameters.ruin_strategies)
3013 return _add;
3014}
3015inline const ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>& RuinRecreateParameters::ruin_strategies() const
3016 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3017 // @@protoc_insertion_point(field_list:operations_research.RuinRecreateParameters.ruin_strategies)
3018 return _internal_ruin_strategies();
3019}
3020inline const ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>&
3021RuinRecreateParameters::_internal_ruin_strategies() const {
3022 ::google::protobuf::internal::TSanRead(&_impl_);
3023 return _impl_.ruin_strategies_;
3024}
3025inline ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy>* PROTOBUF_NONNULL
3026RuinRecreateParameters::_internal_mutable_ruin_strategies() {
3027 ::google::protobuf::internal::TSanRead(&_impl_);
3028 return &_impl_.ruin_strategies_;
3029}
3030
3031// .operations_research.RuinCompositionStrategy.Value ruin_composition_strategy = 2;
3033 ::google::protobuf::internal::TSanWrite(&_impl_);
3034 _impl_.ruin_composition_strategy_ = 0;
3035 _impl_._has_bits_[0] &= ~0x00000001u;
3036}
3037inline ::operations_research::RuinCompositionStrategy_Value RuinRecreateParameters::ruin_composition_strategy() const {
3038 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.ruin_composition_strategy)
3039 return _internal_ruin_composition_strategy();
3040}
3042 _internal_set_ruin_composition_strategy(value);
3043 _impl_._has_bits_[0] |= 0x00000001u;
3044 // @@protoc_insertion_point(field_set:operations_research.RuinRecreateParameters.ruin_composition_strategy)
3045}
3046inline ::operations_research::RuinCompositionStrategy_Value RuinRecreateParameters::_internal_ruin_composition_strategy() const {
3047 ::google::protobuf::internal::TSanRead(&_impl_);
3048 return static_cast<::operations_research::RuinCompositionStrategy_Value>(_impl_.ruin_composition_strategy_);
3049}
3050inline void RuinRecreateParameters::_internal_set_ruin_composition_strategy(::operations_research::RuinCompositionStrategy_Value value) {
3051 ::google::protobuf::internal::TSanWrite(&_impl_);
3052 _impl_.ruin_composition_strategy_ = value;
3053}
3054
3055// .operations_research.FirstSolutionStrategy.Value recreate_strategy = 3;
3057 ::google::protobuf::internal::TSanWrite(&_impl_);
3058 _impl_.recreate_strategy_ = 0;
3059 _impl_._has_bits_[0] &= ~0x00000002u;
3060}
3061inline ::operations_research::FirstSolutionStrategy_Value RuinRecreateParameters::recreate_strategy() const {
3062 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.recreate_strategy)
3063 return _internal_recreate_strategy();
3064}
3066 _internal_set_recreate_strategy(value);
3067 _impl_._has_bits_[0] |= 0x00000002u;
3068 // @@protoc_insertion_point(field_set:operations_research.RuinRecreateParameters.recreate_strategy)
3069}
3070inline ::operations_research::FirstSolutionStrategy_Value RuinRecreateParameters::_internal_recreate_strategy() const {
3071 ::google::protobuf::internal::TSanRead(&_impl_);
3072 return static_cast<::operations_research::FirstSolutionStrategy_Value>(_impl_.recreate_strategy_);
3073}
3074inline void RuinRecreateParameters::_internal_set_recreate_strategy(::operations_research::FirstSolutionStrategy_Value value) {
3075 ::google::protobuf::internal::TSanWrite(&_impl_);
3076 _impl_.recreate_strategy_ = value;
3077}
3078
3079// optional double route_selection_neighbors_ratio = 4;
3081 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3082 return value;
3083}
3085 ::google::protobuf::internal::TSanWrite(&_impl_);
3086 _impl_.route_selection_neighbors_ratio_ = 0;
3087 _impl_._has_bits_[0] &= ~0x00000004u;
3088}
3090 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.route_selection_neighbors_ratio)
3091 return _internal_route_selection_neighbors_ratio();
3092}
3094 _internal_set_route_selection_neighbors_ratio(value);
3095 _impl_._has_bits_[0] |= 0x00000004u;
3096 // @@protoc_insertion_point(field_set:operations_research.RuinRecreateParameters.route_selection_neighbors_ratio)
3097}
3098inline double RuinRecreateParameters::_internal_route_selection_neighbors_ratio() const {
3099 ::google::protobuf::internal::TSanRead(&_impl_);
3100 return _impl_.route_selection_neighbors_ratio_;
3101}
3102inline void RuinRecreateParameters::_internal_set_route_selection_neighbors_ratio(double value) {
3103 ::google::protobuf::internal::TSanWrite(&_impl_);
3104 _impl_.route_selection_neighbors_ratio_ = value;
3105}
3106
3107// optional uint32 route_selection_min_neighbors = 5;
3109 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3110 return value;
3111}
3113 ::google::protobuf::internal::TSanWrite(&_impl_);
3114 _impl_.route_selection_min_neighbors_ = 0u;
3115 _impl_._has_bits_[0] &= ~0x00000008u;
3116}
3118 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.route_selection_min_neighbors)
3119 return _internal_route_selection_min_neighbors();
3120}
3122 _internal_set_route_selection_min_neighbors(value);
3123 _impl_._has_bits_[0] |= 0x00000008u;
3124 // @@protoc_insertion_point(field_set:operations_research.RuinRecreateParameters.route_selection_min_neighbors)
3125}
3126inline ::uint32_t RuinRecreateParameters::_internal_route_selection_min_neighbors() const {
3127 ::google::protobuf::internal::TSanRead(&_impl_);
3128 return _impl_.route_selection_min_neighbors_;
3129}
3130inline void RuinRecreateParameters::_internal_set_route_selection_min_neighbors(::uint32_t value) {
3131 ::google::protobuf::internal::TSanWrite(&_impl_);
3132 _impl_.route_selection_min_neighbors_ = value;
3133}
3134
3135// optional uint32 route_selection_max_neighbors = 6;
3137 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
3138 return value;
3139}
3141 ::google::protobuf::internal::TSanWrite(&_impl_);
3142 _impl_.route_selection_max_neighbors_ = 0u;
3143 _impl_._has_bits_[0] &= ~0x00000010u;
3144}
3146 // @@protoc_insertion_point(field_get:operations_research.RuinRecreateParameters.route_selection_max_neighbors)
3147 return _internal_route_selection_max_neighbors();
3148}
3150 _internal_set_route_selection_max_neighbors(value);
3151 _impl_._has_bits_[0] |= 0x00000010u;
3152 // @@protoc_insertion_point(field_set:operations_research.RuinRecreateParameters.route_selection_max_neighbors)
3153}
3154inline ::uint32_t RuinRecreateParameters::_internal_route_selection_max_neighbors() const {
3155 ::google::protobuf::internal::TSanRead(&_impl_);
3156 return _impl_.route_selection_max_neighbors_;
3157}
3158inline void RuinRecreateParameters::_internal_set_route_selection_max_neighbors(::uint32_t value) {
3159 ::google::protobuf::internal::TSanWrite(&_impl_);
3160 _impl_.route_selection_max_neighbors_ = value;
3161}
3162
3163// -------------------------------------------------------------------
3164
3165// PerturbationStrategy
3166
3167// -------------------------------------------------------------------
3168
3169// CoolingScheduleStrategy
3170
3171// -------------------------------------------------------------------
3172
3173// SimulatedAnnealingParameters
3174
3175// .operations_research.CoolingScheduleStrategy.Value cooling_schedule_strategy = 1;
3177 ::google::protobuf::internal::TSanWrite(&_impl_);
3178 _impl_.cooling_schedule_strategy_ = 0;
3179 _impl_._has_bits_[0] &= ~0x00000002u;
3180}
3181inline ::operations_research::CoolingScheduleStrategy_Value SimulatedAnnealingParameters::cooling_schedule_strategy() const {
3182 // @@protoc_insertion_point(field_get:operations_research.SimulatedAnnealingParameters.cooling_schedule_strategy)
3183 return _internal_cooling_schedule_strategy();
3184}
3186 _internal_set_cooling_schedule_strategy(value);
3187 _impl_._has_bits_[0] |= 0x00000002u;
3188 // @@protoc_insertion_point(field_set:operations_research.SimulatedAnnealingParameters.cooling_schedule_strategy)
3189}
3190inline ::operations_research::CoolingScheduleStrategy_Value SimulatedAnnealingParameters::_internal_cooling_schedule_strategy() const {
3191 ::google::protobuf::internal::TSanRead(&_impl_);
3192 return static_cast<::operations_research::CoolingScheduleStrategy_Value>(_impl_.cooling_schedule_strategy_);
3193}
3194inline void SimulatedAnnealingParameters::_internal_set_cooling_schedule_strategy(::operations_research::CoolingScheduleStrategy_Value value) {
3195 ::google::protobuf::internal::TSanWrite(&_impl_);
3196 _impl_.cooling_schedule_strategy_ = value;
3197}
3198
3199// optional double initial_temperature = 2;
3201 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3202 return value;
3203}
3205 ::google::protobuf::internal::TSanWrite(&_impl_);
3206 _impl_.initial_temperature_ = 0;
3207 _impl_._has_bits_[0] &= ~0x00000001u;
3210 // @@protoc_insertion_point(field_get:operations_research.SimulatedAnnealingParameters.initial_temperature)
3211 return _internal_initial_temperature();
3212}
3214 _internal_set_initial_temperature(value);
3215 _impl_._has_bits_[0] |= 0x00000001u;
3216 // @@protoc_insertion_point(field_set:operations_research.SimulatedAnnealingParameters.initial_temperature)
3217}
3218inline double SimulatedAnnealingParameters::_internal_initial_temperature() const {
3219 ::google::protobuf::internal::TSanRead(&_impl_);
3220 return _impl_.initial_temperature_;
3221}
3222inline void SimulatedAnnealingParameters::_internal_set_initial_temperature(double value) {
3223 ::google::protobuf::internal::TSanWrite(&_impl_);
3224 _impl_.initial_temperature_ = value;
3225}
3226
3227// optional double final_temperature = 3;
3229 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3230 return value;
3231}
3233 ::google::protobuf::internal::TSanWrite(&_impl_);
3234 _impl_.final_temperature_ = 0;
3235 _impl_._has_bits_[0] &= ~0x00000008u;
3238 // @@protoc_insertion_point(field_get:operations_research.SimulatedAnnealingParameters.final_temperature)
3239 return _internal_final_temperature();
3240}
3242 _internal_set_final_temperature(value);
3243 _impl_._has_bits_[0] |= 0x00000008u;
3244 // @@protoc_insertion_point(field_set:operations_research.SimulatedAnnealingParameters.final_temperature)
3245}
3246inline double SimulatedAnnealingParameters::_internal_final_temperature() const {
3247 ::google::protobuf::internal::TSanRead(&_impl_);
3248 return _impl_.final_temperature_;
3249}
3250inline void SimulatedAnnealingParameters::_internal_set_final_temperature(double value) {
3251 ::google::protobuf::internal::TSanWrite(&_impl_);
3252 _impl_.final_temperature_ = value;
3253}
3254
3255// optional bool automatic_temperatures = 4;
3257 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3258 return value;
3259}
3261 ::google::protobuf::internal::TSanWrite(&_impl_);
3262 _impl_.automatic_temperatures_ = false;
3263 _impl_._has_bits_[0] &= ~0x00000004u;
3266 // @@protoc_insertion_point(field_get:operations_research.SimulatedAnnealingParameters.automatic_temperatures)
3267 return _internal_automatic_temperatures();
3268}
3270 _internal_set_automatic_temperatures(value);
3271 _impl_._has_bits_[0] |= 0x00000004u;
3272 // @@protoc_insertion_point(field_set:operations_research.SimulatedAnnealingParameters.automatic_temperatures)
3273}
3274inline bool SimulatedAnnealingParameters::_internal_automatic_temperatures() const {
3275 ::google::protobuf::internal::TSanRead(&_impl_);
3276 return _impl_.automatic_temperatures_;
3277}
3278inline void SimulatedAnnealingParameters::_internal_set_automatic_temperatures(bool value) {
3279 ::google::protobuf::internal::TSanWrite(&_impl_);
3280 _impl_.automatic_temperatures_ = value;
3281}
3282
3283// -------------------------------------------------------------------
3284
3285// AcceptanceStrategy
3286
3287// -------------------------------------------------------------------
3289// IteratedLocalSearchParameters
3290
3291// .operations_research.PerturbationStrategy.Value perturbation_strategy = 1;
3293 ::google::protobuf::internal::TSanWrite(&_impl_);
3294 _impl_.perturbation_strategy_ = 0;
3295 _impl_._has_bits_[0] &= ~0x00000004u;
3296}
3297inline ::operations_research::PerturbationStrategy_Value IteratedLocalSearchParameters::perturbation_strategy() const {
3298 // @@protoc_insertion_point(field_get:operations_research.IteratedLocalSearchParameters.perturbation_strategy)
3299 return _internal_perturbation_strategy();
3300}
3302 _internal_set_perturbation_strategy(value);
3303 _impl_._has_bits_[0] |= 0x00000004u;
3304 // @@protoc_insertion_point(field_set:operations_research.IteratedLocalSearchParameters.perturbation_strategy)
3305}
3306inline ::operations_research::PerturbationStrategy_Value IteratedLocalSearchParameters::_internal_perturbation_strategy() const {
3307 ::google::protobuf::internal::TSanRead(&_impl_);
3308 return static_cast<::operations_research::PerturbationStrategy_Value>(_impl_.perturbation_strategy_);
3309}
3310inline void IteratedLocalSearchParameters::_internal_set_perturbation_strategy(::operations_research::PerturbationStrategy_Value value) {
3311 ::google::protobuf::internal::TSanWrite(&_impl_);
3312 _impl_.perturbation_strategy_ = value;
3313}
3314
3315// .operations_research.RuinRecreateParameters ruin_recreate_parameters = 2;
3317 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3318 PROTOBUF_ASSUME(!value || _impl_.ruin_recreate_parameters_ != nullptr);
3319 return value;
3320}
3322 ::google::protobuf::internal::TSanWrite(&_impl_);
3323 if (_impl_.ruin_recreate_parameters_ != nullptr) _impl_.ruin_recreate_parameters_->Clear();
3324 _impl_._has_bits_[0] &= ~0x00000001u;
3325}
3326inline const ::operations_research::RuinRecreateParameters& IteratedLocalSearchParameters::_internal_ruin_recreate_parameters() const {
3327 ::google::protobuf::internal::TSanRead(&_impl_);
3328 const ::operations_research::RuinRecreateParameters* p = _impl_.ruin_recreate_parameters_;
3330}
3331inline const ::operations_research::RuinRecreateParameters& IteratedLocalSearchParameters::ruin_recreate_parameters() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3332 // @@protoc_insertion_point(field_get:operations_research.IteratedLocalSearchParameters.ruin_recreate_parameters)
3333 return _internal_ruin_recreate_parameters();
3334}
3336 ::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE value) {
3337 ::google::protobuf::internal::TSanWrite(&_impl_);
3338 if (GetArena() == nullptr) {
3339 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.ruin_recreate_parameters_);
3340 }
3341 _impl_.ruin_recreate_parameters_ = reinterpret_cast<::operations_research::RuinRecreateParameters*>(value);
3342 if (value != nullptr) {
3343 _impl_._has_bits_[0] |= 0x00000001u;
3344 } else {
3345 _impl_._has_bits_[0] &= ~0x00000001u;
3347 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.IteratedLocalSearchParameters.ruin_recreate_parameters)
3348}
3349inline ::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE IteratedLocalSearchParameters::release_ruin_recreate_parameters() {
3350 ::google::protobuf::internal::TSanWrite(&_impl_);
3351
3352 _impl_._has_bits_[0] &= ~0x00000001u;
3353 ::operations_research::RuinRecreateParameters* released = _impl_.ruin_recreate_parameters_;
3354 _impl_.ruin_recreate_parameters_ = nullptr;
3355 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3356 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3357 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3358 if (GetArena() == nullptr) {
3359 delete old;
3361 } else {
3362 if (GetArena() != nullptr) {
3363 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3364 }
3365 }
3366 return released;
3367}
3368inline ::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE IteratedLocalSearchParameters::unsafe_arena_release_ruin_recreate_parameters() {
3369 ::google::protobuf::internal::TSanWrite(&_impl_);
3370 // @@protoc_insertion_point(field_release:operations_research.IteratedLocalSearchParameters.ruin_recreate_parameters)
3371
3372 _impl_._has_bits_[0] &= ~0x00000001u;
3373 ::operations_research::RuinRecreateParameters* temp = _impl_.ruin_recreate_parameters_;
3374 _impl_.ruin_recreate_parameters_ = nullptr;
3375 return temp;
3376}
3377inline ::operations_research::RuinRecreateParameters* PROTOBUF_NONNULL IteratedLocalSearchParameters::_internal_mutable_ruin_recreate_parameters() {
3378 ::google::protobuf::internal::TSanWrite(&_impl_);
3379 if (_impl_.ruin_recreate_parameters_ == nullptr) {
3380 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::RuinRecreateParameters>(GetArena());
3381 _impl_.ruin_recreate_parameters_ = reinterpret_cast<::operations_research::RuinRecreateParameters*>(p);
3382 }
3383 return _impl_.ruin_recreate_parameters_;
3384}
3385inline ::operations_research::RuinRecreateParameters* PROTOBUF_NONNULL IteratedLocalSearchParameters::mutable_ruin_recreate_parameters()
3386 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3387 _impl_._has_bits_[0] |= 0x00000001u;
3388 ::operations_research::RuinRecreateParameters* _msg = _internal_mutable_ruin_recreate_parameters();
3389 // @@protoc_insertion_point(field_mutable:operations_research.IteratedLocalSearchParameters.ruin_recreate_parameters)
3390 return _msg;
3391}
3392inline void IteratedLocalSearchParameters::set_allocated_ruin_recreate_parameters(::operations_research::RuinRecreateParameters* PROTOBUF_NULLABLE value) {
3393 ::google::protobuf::Arena* message_arena = GetArena();
3394 ::google::protobuf::internal::TSanWrite(&_impl_);
3395 if (message_arena == nullptr) {
3396 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.ruin_recreate_parameters_);
3397 }
3398
3399 if (value != nullptr) {
3400 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3401 if (message_arena != submessage_arena) {
3402 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3403 }
3404 _impl_._has_bits_[0] |= 0x00000001u;
3405 } else {
3406 _impl_._has_bits_[0] &= ~0x00000001u;
3407 }
3408
3409 _impl_.ruin_recreate_parameters_ = reinterpret_cast<::operations_research::RuinRecreateParameters*>(value);
3410 // @@protoc_insertion_point(field_set_allocated:operations_research.IteratedLocalSearchParameters.ruin_recreate_parameters)
3411}
3412
3413// optional bool improve_perturbed_solution = 3;
3415 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3416 return value;
3419 ::google::protobuf::internal::TSanWrite(&_impl_);
3420 _impl_.improve_perturbed_solution_ = false;
3421 _impl_._has_bits_[0] &= ~0x00000008u;
3422}
3424 // @@protoc_insertion_point(field_get:operations_research.IteratedLocalSearchParameters.improve_perturbed_solution)
3425 return _internal_improve_perturbed_solution();
3426}
3428 _internal_set_improve_perturbed_solution(value);
3429 _impl_._has_bits_[0] |= 0x00000008u;
3430 // @@protoc_insertion_point(field_set:operations_research.IteratedLocalSearchParameters.improve_perturbed_solution)
3431}
3432inline bool IteratedLocalSearchParameters::_internal_improve_perturbed_solution() const {
3433 ::google::protobuf::internal::TSanRead(&_impl_);
3434 return _impl_.improve_perturbed_solution_;
3435}
3436inline void IteratedLocalSearchParameters::_internal_set_improve_perturbed_solution(bool value) {
3437 ::google::protobuf::internal::TSanWrite(&_impl_);
3438 _impl_.improve_perturbed_solution_ = value;
3440
3441// .operations_research.AcceptanceStrategy.Value acceptance_strategy = 4;
3443 ::google::protobuf::internal::TSanWrite(&_impl_);
3444 _impl_.acceptance_strategy_ = 0;
3445 _impl_._has_bits_[0] &= ~0x00000010u;
3446}
3447inline ::operations_research::AcceptanceStrategy_Value IteratedLocalSearchParameters::acceptance_strategy() const {
3448 // @@protoc_insertion_point(field_get:operations_research.IteratedLocalSearchParameters.acceptance_strategy)
3449 return _internal_acceptance_strategy();
3450}
3452 _internal_set_acceptance_strategy(value);
3453 _impl_._has_bits_[0] |= 0x00000010u;
3454 // @@protoc_insertion_point(field_set:operations_research.IteratedLocalSearchParameters.acceptance_strategy)
3455}
3456inline ::operations_research::AcceptanceStrategy_Value IteratedLocalSearchParameters::_internal_acceptance_strategy() const {
3457 ::google::protobuf::internal::TSanRead(&_impl_);
3458 return static_cast<::operations_research::AcceptanceStrategy_Value>(_impl_.acceptance_strategy_);
3459}
3460inline void IteratedLocalSearchParameters::_internal_set_acceptance_strategy(::operations_research::AcceptanceStrategy_Value value) {
3461 ::google::protobuf::internal::TSanWrite(&_impl_);
3462 _impl_.acceptance_strategy_ = value;
3463}
3464
3465// .operations_research.SimulatedAnnealingParameters simulated_annealing_parameters = 5;
3467 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3468 PROTOBUF_ASSUME(!value || _impl_.simulated_annealing_parameters_ != nullptr);
3469 return value;
3470}
3472 ::google::protobuf::internal::TSanWrite(&_impl_);
3473 if (_impl_.simulated_annealing_parameters_ != nullptr) _impl_.simulated_annealing_parameters_->Clear();
3474 _impl_._has_bits_[0] &= ~0x00000002u;
3475}
3476inline const ::operations_research::SimulatedAnnealingParameters& IteratedLocalSearchParameters::_internal_simulated_annealing_parameters() const {
3477 ::google::protobuf::internal::TSanRead(&_impl_);
3478 const ::operations_research::SimulatedAnnealingParameters* p = _impl_.simulated_annealing_parameters_;
3480}
3481inline const ::operations_research::SimulatedAnnealingParameters& IteratedLocalSearchParameters::simulated_annealing_parameters() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3482 // @@protoc_insertion_point(field_get:operations_research.IteratedLocalSearchParameters.simulated_annealing_parameters)
3483 return _internal_simulated_annealing_parameters();
3484}
3486 ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NULLABLE value) {
3487 ::google::protobuf::internal::TSanWrite(&_impl_);
3488 if (GetArena() == nullptr) {
3489 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.simulated_annealing_parameters_);
3490 }
3491 _impl_.simulated_annealing_parameters_ = reinterpret_cast<::operations_research::SimulatedAnnealingParameters*>(value);
3492 if (value != nullptr) {
3493 _impl_._has_bits_[0] |= 0x00000002u;
3494 } else {
3495 _impl_._has_bits_[0] &= ~0x00000002u;
3497 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.IteratedLocalSearchParameters.simulated_annealing_parameters)
3498}
3499inline ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NULLABLE IteratedLocalSearchParameters::release_simulated_annealing_parameters() {
3500 ::google::protobuf::internal::TSanWrite(&_impl_);
3501
3502 _impl_._has_bits_[0] &= ~0x00000002u;
3503 ::operations_research::SimulatedAnnealingParameters* released = _impl_.simulated_annealing_parameters_;
3504 _impl_.simulated_annealing_parameters_ = nullptr;
3505 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3506 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3507 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3508 if (GetArena() == nullptr) {
3509 delete old;
3511 } else {
3512 if (GetArena() != nullptr) {
3513 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3514 }
3515 }
3516 return released;
3517}
3518inline ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NULLABLE IteratedLocalSearchParameters::unsafe_arena_release_simulated_annealing_parameters() {
3519 ::google::protobuf::internal::TSanWrite(&_impl_);
3520 // @@protoc_insertion_point(field_release:operations_research.IteratedLocalSearchParameters.simulated_annealing_parameters)
3521
3522 _impl_._has_bits_[0] &= ~0x00000002u;
3523 ::operations_research::SimulatedAnnealingParameters* temp = _impl_.simulated_annealing_parameters_;
3524 _impl_.simulated_annealing_parameters_ = nullptr;
3525 return temp;
3526}
3527inline ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NONNULL IteratedLocalSearchParameters::_internal_mutable_simulated_annealing_parameters() {
3528 ::google::protobuf::internal::TSanWrite(&_impl_);
3529 if (_impl_.simulated_annealing_parameters_ == nullptr) {
3530 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::SimulatedAnnealingParameters>(GetArena());
3531 _impl_.simulated_annealing_parameters_ = reinterpret_cast<::operations_research::SimulatedAnnealingParameters*>(p);
3532 }
3533 return _impl_.simulated_annealing_parameters_;
3534}
3535inline ::operations_research::SimulatedAnnealingParameters* PROTOBUF_NONNULL IteratedLocalSearchParameters::mutable_simulated_annealing_parameters()
3536 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3537 _impl_._has_bits_[0] |= 0x00000002u;
3538 ::operations_research::SimulatedAnnealingParameters* _msg = _internal_mutable_simulated_annealing_parameters();
3539 // @@protoc_insertion_point(field_mutable:operations_research.IteratedLocalSearchParameters.simulated_annealing_parameters)
3540 return _msg;
3541}
3542inline void IteratedLocalSearchParameters::set_allocated_simulated_annealing_parameters(::operations_research::SimulatedAnnealingParameters* PROTOBUF_NULLABLE value) {
3543 ::google::protobuf::Arena* message_arena = GetArena();
3544 ::google::protobuf::internal::TSanWrite(&_impl_);
3545 if (message_arena == nullptr) {
3546 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.simulated_annealing_parameters_);
3547 }
3548
3549 if (value != nullptr) {
3550 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3551 if (message_arena != submessage_arena) {
3552 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3553 }
3554 _impl_._has_bits_[0] |= 0x00000002u;
3555 } else {
3556 _impl_._has_bits_[0] &= ~0x00000002u;
3557 }
3558
3559 _impl_.simulated_annealing_parameters_ = reinterpret_cast<::operations_research::SimulatedAnnealingParameters*>(value);
3560 // @@protoc_insertion_point(field_set_allocated:operations_research.IteratedLocalSearchParameters.simulated_annealing_parameters)
3561}
3562
3563#ifdef __GNUC__
3564#pragma GCC diagnostic pop
3565#endif // __GNUC__
3566
3567// @@protoc_insertion_point(namespace_scope)
3568} // namespace operations_research
3569
3570
3571namespace google {
3572namespace protobuf {
3573
3574template <>
3575struct is_proto_enum<::operations_research::RuinCompositionStrategy_Value> : std::true_type {};
3576template <>
3577inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::RuinCompositionStrategy_Value>() {
3578 return ::operations_research::RuinCompositionStrategy_Value_descriptor();
3579}
3580template <>
3581struct is_proto_enum<::operations_research::PerturbationStrategy_Value> : std::true_type {};
3582template <>
3583inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::PerturbationStrategy_Value>() {
3584 return ::operations_research::PerturbationStrategy_Value_descriptor();
3585}
3586template <>
3587struct is_proto_enum<::operations_research::CoolingScheduleStrategy_Value> : std::true_type {};
3588template <>
3589inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::CoolingScheduleStrategy_Value>() {
3590 return ::operations_research::CoolingScheduleStrategy_Value_descriptor();
3591}
3592template <>
3593struct is_proto_enum<::operations_research::AcceptanceStrategy_Value> : std::true_type {};
3594template <>
3595inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::AcceptanceStrategy_Value>() {
3596 return ::operations_research::AcceptanceStrategy_Value_descriptor();
3597}
3598
3599} // namespace protobuf
3600} // namespace google
3601
3602// @@protoc_insertion_point(global_scope)
3603
3604#include "google/protobuf/port_undef.inc"
3605
3606#endif // ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto_2epb_2eh
AcceptanceStrategy_Value Value
nested types -------------------------------------------------—
static const AcceptanceStrategy & default_instance()
static const ::std::string & Value_Name(T value)
AcceptanceStrategy & operator=(const AcceptanceStrategy &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void CopyFrom(const AcceptanceStrategy &from)
static bool Value_Parse(::absl::string_view name, Value *PROTOBUF_NONNULL value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Value_descriptor()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static constexpr auto InternalGenerateClassData_()
::google::protobuf::Metadata GetMetadata() const
void Swap(AcceptanceStrategy *PROTOBUF_NONNULL other)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void UnsafeArenaSwap(AcceptanceStrategy *PROTOBUF_NONNULL other)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Value_descriptor()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
CoolingScheduleStrategy *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static const CoolingScheduleStrategy & default_instance()
void UnsafeArenaSwap(CoolingScheduleStrategy *PROTOBUF_NONNULL other)
void Swap(CoolingScheduleStrategy *PROTOBUF_NONNULL other)
static bool Value_Parse(::absl::string_view name, Value *PROTOBUF_NONNULL value)
void MergeFrom(const CoolingScheduleStrategy &from)
CoolingScheduleStrategy_Value Value
nested types -------------------------------------------------—
::google::protobuf::Metadata GetMetadata() const
friend void swap(CoolingScheduleStrategy &a, CoolingScheduleStrategy &b)
friend class ::google::protobuf::Arena
void set_perturbation_strategy(::operations_research::PerturbationStrategy_Value value)
static const IteratedLocalSearchParameters & default_instance()
::operations_research::SimulatedAnnealingParameters *PROTOBUF_NONNULL mutable_simulated_annealing_parameters()
void CopyFrom(const IteratedLocalSearchParameters &from)
::operations_research::AcceptanceStrategy_Value acceptance_strategy() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::SimulatedAnnealingParameters *PROTOBUF_NULLABLE release_simulated_annealing_parameters()
void clear_perturbation_strategy()
.operations_research.PerturbationStrategy.Value perturbation_strategy = 1;
::operations_research::RuinRecreateParameters *PROTOBUF_NULLABLE unsafe_arena_release_ruin_recreate_parameters()
void set_acceptance_strategy(::operations_research::AcceptanceStrategy_Value value)
void set_allocated_ruin_recreate_parameters(::operations_research::RuinRecreateParameters *PROTOBUF_NULLABLE value)
void clear_acceptance_strategy()
.operations_research.AcceptanceStrategy.Value acceptance_strategy = 4;
const ::operations_research::SimulatedAnnealingParameters & simulated_annealing_parameters() const
bool has_simulated_annealing_parameters() const
.operations_research.SimulatedAnnealingParameters simulated_annealing_parameters = 5;
::operations_research::RuinRecreateParameters *PROTOBUF_NONNULL mutable_ruin_recreate_parameters()
bool has_ruin_recreate_parameters() const
.operations_research.RuinRecreateParameters ruin_recreate_parameters = 2;
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::google::protobuf::Metadata GetMetadata() const
::operations_research::RuinRecreateParameters *PROTOBUF_NULLABLE release_ruin_recreate_parameters()
bool has_improve_perturbed_solution() const
optional bool improve_perturbed_solution = 3;
void unsafe_arena_set_allocated_ruin_recreate_parameters(::operations_research::RuinRecreateParameters *PROTOBUF_NULLABLE value)
void unsafe_arena_set_allocated_simulated_annealing_parameters(::operations_research::SimulatedAnnealingParameters *PROTOBUF_NULLABLE value)
::operations_research::SimulatedAnnealingParameters *PROTOBUF_NULLABLE unsafe_arena_release_simulated_annealing_parameters()
void Swap(IteratedLocalSearchParameters *PROTOBUF_NONNULL other)
const ::operations_research::RuinRecreateParameters & ruin_recreate_parameters() const
void set_allocated_simulated_annealing_parameters(::operations_research::SimulatedAnnealingParameters *PROTOBUF_NULLABLE value)
::operations_research::PerturbationStrategy_Value perturbation_strategy() const
void MergeFrom(const IteratedLocalSearchParameters &from)
void Swap(PerturbationStrategy *PROTOBUF_NONNULL other)
PerturbationStrategy & operator=(const PerturbationStrategy &from)
void MergeFrom(const PerturbationStrategy &from)
static constexpr auto InternalGenerateClassData_()
static bool Value_Parse(::absl::string_view name, Value *PROTOBUF_NONNULL value)
static const ::std::string & Value_Name(T value)
PerturbationStrategy *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Value_descriptor()
static const PerturbationStrategy & default_instance()
friend void swap(PerturbationStrategy &a, PerturbationStrategy &b)
::google::protobuf::Metadata GetMetadata() const
PerturbationStrategy_Value Value
nested types -------------------------------------------------—
friend class ::google::protobuf::Arena
bool has_num_removed_visits() const
optional uint32 num_removed_visits = 7;
RandomWalkRuinStrategy & operator=(const RandomWalkRuinStrategy &from)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
void MergeFrom(const RandomWalkRuinStrategy &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
static const RandomWalkRuinStrategy & default_instance()
void CopyFrom(const RandomWalkRuinStrategy &from)
::google::protobuf::Metadata GetMetadata() const
RandomWalkRuinStrategy *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
void Swap(RandomWalkRuinStrategy *PROTOBUF_NONNULL other)
friend class ::google::protobuf::Arena
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void Swap(RuinCompositionStrategy *PROTOBUF_NONNULL other)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Value_descriptor()
RuinCompositionStrategy *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::google::protobuf::Metadata GetMetadata() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static const ::std::string & Value_Name(T value)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
RuinCompositionStrategy_Value Value
nested types -------------------------------------------------—
RuinCompositionStrategy & operator=(const RuinCompositionStrategy &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void CopyFrom(const RuinCompositionStrategy &from)
friend void swap(RuinCompositionStrategy &a, RuinCompositionStrategy &b)
friend class ::google::protobuf::Arena
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
bool has_route_selection_min_neighbors() const
optional uint32 route_selection_min_neighbors = 5;
static const RuinRecreateParameters & default_instance()
void set_route_selection_min_neighbors(::uint32_t value)
const ::operations_research::RuinStrategy & ruin_strategies(int index) const
void set_recreate_strategy(::operations_research::FirstSolutionStrategy_Value value)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy > *PROTOBUF_NONNULL mutable_ruin_strategies()
bool has_route_selection_neighbors_ratio() const
optional double route_selection_neighbors_ratio = 4;
friend void swap(RuinRecreateParameters &a, RuinRecreateParameters &b)
void CopyFrom(const RuinRecreateParameters &from)
void clear_recreate_strategy()
.operations_research.FirstSolutionStrategy.Value recreate_strategy = 3;
::operations_research::FirstSolutionStrategy_Value recreate_strategy() const
void clear_ruin_composition_strategy()
.operations_research.RuinCompositionStrategy.Value ruin_composition_strategy = 2;
int ruin_strategies_size() const
repeated .operations_research.RuinStrategy ruin_strategies = 1;
::operations_research::RuinStrategy *PROTOBUF_NONNULL mutable_ruin_strategies(int index)
void Swap(RuinRecreateParameters *PROTOBUF_NONNULL other)
void set_route_selection_max_neighbors(::uint32_t value)
::operations_research::RuinStrategy *PROTOBUF_NONNULL add_ruin_strategies()
::google::protobuf::Metadata GetMetadata() const
void set_ruin_composition_strategy(::operations_research::RuinCompositionStrategy_Value value)
void MergeFrom(const RuinRecreateParameters &from)
const ::google::protobuf::RepeatedPtrField<::operations_research::RuinStrategy > & ruin_strategies() const
::operations_research::RuinCompositionStrategy_Value ruin_composition_strategy() const
bool has_route_selection_max_neighbors() const
optional uint32 route_selection_max_neighbors = 6;
::operations_research::SISRRuinStrategy *PROTOBUF_NULLABLE release_sisr()
::operations_research::SISRRuinStrategy *PROTOBUF_NONNULL mutable_sisr()
::operations_research::RandomWalkRuinStrategy *PROTOBUF_NONNULL mutable_random_walk()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
bool has_sisr() const
.operations_research.SISRRuinStrategy sisr = 3;
bool has_spatially_close_routes() const
.operations_research.SpatiallyCloseRoutesRuinStrategy spatially_close_routes = 1;
void set_allocated_random_walk(::operations_research::RandomWalkRuinStrategy *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::google::protobuf::Metadata GetMetadata() const
void unsafe_arena_set_allocated_random_walk(::operations_research::RandomWalkRuinStrategy *PROTOBUF_NULLABLE value)
::size_t ByteSizeLong() const final
::operations_research::SISRRuinStrategy *PROTOBUF_NULLABLE unsafe_arena_release_sisr()
void set_allocated_sisr(::operations_research::SISRRuinStrategy *PROTOBUF_NULLABLE value)
const ::operations_research::SISRRuinStrategy & sisr() const
void unsafe_arena_set_allocated_sisr(::operations_research::SISRRuinStrategy *PROTOBUF_NULLABLE value)
void Swap(RuinStrategy *PROTOBUF_NONNULL other)
bool has_random_walk() const
.operations_research.RandomWalkRuinStrategy random_walk = 2;
const ::operations_research::RandomWalkRuinStrategy & random_walk() const
void set_allocated_spatially_close_routes(::operations_research::SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NULLABLE value)
static constexpr int kIndexInFileMessages
static constexpr auto InternalGenerateClassData_()
::operations_research::SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NULLABLE unsafe_arena_release_spatially_close_routes()
const ::operations_research::SpatiallyCloseRoutesRuinStrategy & spatially_close_routes() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void unsafe_arena_set_allocated_spatially_close_routes(::operations_research::SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NULLABLE value)
::operations_research::RandomWalkRuinStrategy *PROTOBUF_NULLABLE unsafe_arena_release_random_walk()
::operations_research::RandomWalkRuinStrategy *PROTOBUF_NULLABLE release_random_walk()
void UnsafeArenaSwap(RuinStrategy *PROTOBUF_NONNULL other)
::operations_research::SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NULLABLE release_spatially_close_routes()
::operations_research::SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NONNULL mutable_spatially_close_routes()
friend void swap(RuinStrategy &a, RuinStrategy &b)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
friend class ::google::protobuf::MessageLite
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void Swap(SISRRuinStrategy *PROTOBUF_NONNULL other)
bool has_avg_num_removed_visits() const
optional uint32 avg_num_removed_visits = 2;
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
static const SISRRuinStrategy & default_instance()
void set_avg_num_removed_visits(::uint32_t value)
bool has_bypass_factor() const
optional double bypass_factor = 3;
friend void swap(SISRRuinStrategy &a, SISRRuinStrategy &b)
SISRRuinStrategy & operator=(const SISRRuinStrategy &from)
bool has_max_removed_sequence_size() const
optional uint32 max_removed_sequence_size = 1;
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void set_max_removed_sequence_size(::uint32_t value)
PROTOBUF_CONSTEXPR SISRRuinStrategy(::google::protobuf::internal::ConstantInitialized)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SISRRuinStrategy &from)
void CopyFrom(const SISRRuinStrategy &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
bool has_automatic_temperatures() const
optional bool automatic_temperatures = 4;
friend class ::google::protobuf::MessageLite
void CopyFrom(const SimulatedAnnealingParameters &from)
bool has_initial_temperature() const
optional double initial_temperature = 2;
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::CoolingScheduleStrategy_Value cooling_schedule_strategy() const
static const SimulatedAnnealingParameters & default_instance()
bool has_final_temperature() const
optional double final_temperature = 3;
void clear_cooling_schedule_strategy()
.operations_research.CoolingScheduleStrategy.Value cooling_schedule_strategy = 1;
SimulatedAnnealingParameters & operator=(const SimulatedAnnealingParameters &from)
PROTOBUF_CONSTEXPR SimulatedAnnealingParameters(::google::protobuf::internal::ConstantInitialized)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SimulatedAnnealingParameters &from)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
void Swap(SimulatedAnnealingParameters *PROTOBUF_NONNULL other)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void set_cooling_schedule_strategy(::operations_research::CoolingScheduleStrategy_Value value)
void Swap(SpatiallyCloseRoutesRuinStrategy *PROTOBUF_NONNULL other)
PROTOBUF_CONSTEXPR SpatiallyCloseRoutesRuinStrategy(::google::protobuf::internal::ConstantInitialized)
SpatiallyCloseRoutesRuinStrategy & operator=(const SpatiallyCloseRoutesRuinStrategy &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
SpatiallyCloseRoutesRuinStrategy(::google::protobuf::Arena *PROTOBUF_NULLABLE arena, SpatiallyCloseRoutesRuinStrategy &&from) noexcept
SpatiallyCloseRoutesRuinStrategy(const SpatiallyCloseRoutesRuinStrategy &from)
void CopyFrom(const SpatiallyCloseRoutesRuinStrategy &from)
bool has_num_ruined_routes() const
optional uint32 num_ruined_routes = 3;
::absl::string_view GetAnyMessageName()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::PerturbationStrategy_Value >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::AcceptanceStrategy_Value >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::CoolingScheduleStrategy_Value >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::RuinCompositionStrategy_Value >()
In SWIG mode, we don't want anything besides these top-level includes.
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RuinCompositionStrategy_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull CoolingScheduleStrategy_class_data_
PROTOBUF_CONSTINIT const uint32_t PerturbationStrategy_Value_internal_data_[]
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RuinStrategyDefaultTypeInternal _RuinStrategy_default_instance_
constexpr PerturbationStrategy_Value PerturbationStrategy_Value_Value_MIN
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RuinCompositionStrategyDefaultTypeInternal _RuinCompositionStrategy_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SISRRuinStrategy_class_data_
const ::std::string & AcceptanceStrategy_Value_Name(T value)
bool AcceptanceStrategy_Value_Parse(::absl::string_view name, AcceptanceStrategy_Value *PROTOBUF_NONNULL value)
bool RuinCompositionStrategy_Value_Parse(::absl::string_view name, RuinCompositionStrategy_Value *PROTOBUF_NONNULL value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SISRRuinStrategyDefaultTypeInternal _SISRRuinStrategy_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IteratedLocalSearchParametersDefaultTypeInternal _IteratedLocalSearchParameters_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PerturbationStrategy_class_data_
bool CoolingScheduleStrategy_Value_Parse(::absl::string_view name, CoolingScheduleStrategy_Value *PROTOBUF_NONNULL value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL AcceptanceStrategy_Value_descriptor()
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RuinRecreateParameters_class_data_
bool PerturbationStrategy_Value_Parse(::absl::string_view name, PerturbationStrategy_Value *PROTOBUF_NONNULL value)
constexpr int CoolingScheduleStrategy_Value_Value_ARRAYSIZE
bool CoolingScheduleStrategy_Value_IsValid(int value)
constexpr RuinCompositionStrategy_Value RuinCompositionStrategy_Value_Value_MAX
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RuinRecreateParametersDefaultTypeInternal _RuinRecreateParameters_default_instance_
constexpr CoolingScheduleStrategy_Value CoolingScheduleStrategy_Value_Value_MIN
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RuinCompositionStrategy_Value_descriptor()
PROTOBUF_CONSTINIT const uint32_t CoolingScheduleStrategy_Value_internal_data_[]
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RandomWalkRuinStrategy_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AcceptanceStrategyDefaultTypeInternal _AcceptanceStrategy_default_instance_
constexpr RuinCompositionStrategy_Value RuinCompositionStrategy_Value_Value_MIN
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull IteratedLocalSearchParameters_class_data_
constexpr int AcceptanceStrategy_Value_Value_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t AcceptanceStrategy_Value_internal_data_[]
bool AcceptanceStrategy_Value_IsValid(int value)
const ::std::string & CoolingScheduleStrategy_Value_Name(T value)
constexpr AcceptanceStrategy_Value AcceptanceStrategy_Value_Value_MAX
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL PerturbationStrategy_Value_descriptor()
const ::std::string & RuinCompositionStrategy_Value_Name(T value)
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SimulatedAnnealingParameters_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RuinStrategy_class_data_
constexpr CoolingScheduleStrategy_Value CoolingScheduleStrategy_Value_Value_MAX
const ::std::string & PerturbationStrategy_Value_Name(T value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RandomWalkRuinStrategyDefaultTypeInternal _RandomWalkRuinStrategy_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull AcceptanceStrategy_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PerturbationStrategyDefaultTypeInternal _PerturbationStrategy_default_instance_
@ PerturbationStrategy_Value_PerturbationStrategy_Value_INT_MAX_SENTINEL_DO_NOT_USE_
@ PerturbationStrategy_Value_PerturbationStrategy_Value_INT_MIN_SENTINEL_DO_NOT_USE_
@ PerturbationStrategy_Value_RUIN_AND_RECREATE
bool PerturbationStrategy_Value_IsValid(int value)
bool RuinCompositionStrategy_Value_IsValid(int value)
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SpatiallyCloseRoutesRuinStrategy_class_data_
constexpr int PerturbationStrategy_Value_Value_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t RuinCompositionStrategy_Value_internal_data_[]
@ CoolingScheduleStrategy_Value_CoolingScheduleStrategy_Value_INT_MAX_SENTINEL_DO_NOT_USE_
@ CoolingScheduleStrategy_Value_CoolingScheduleStrategy_Value_INT_MIN_SENTINEL_DO_NOT_USE_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SimulatedAnnealingParametersDefaultTypeInternal _SimulatedAnnealingParameters_default_instance_
@ AcceptanceStrategy_Value_AcceptanceStrategy_Value_INT_MIN_SENTINEL_DO_NOT_USE_
@ AcceptanceStrategy_Value_AcceptanceStrategy_Value_INT_MAX_SENTINEL_DO_NOT_USE_
@ AcceptanceStrategy_Value_SIMULATED_ANNEALING
constexpr int RuinCompositionStrategy_Value_Value_ARRAYSIZE
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SpatiallyCloseRoutesRuinStrategyDefaultTypeInternal _SpatiallyCloseRoutesRuinStrategy_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL CoolingScheduleStrategy_Value_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CoolingScheduleStrategyDefaultTypeInternal _CoolingScheduleStrategy_default_instance_
@ RuinCompositionStrategy_Value_RuinCompositionStrategy_Value_INT_MIN_SENTINEL_DO_NOT_USE_
@ RuinCompositionStrategy_Value_RuinCompositionStrategy_Value_INT_MAX_SENTINEL_DO_NOT_USE_
@ RuinCompositionStrategy_Value_RUN_ALL_SEQUENTIALLY
@ RuinCompositionStrategy_Value_RUN_ALL_RANDOMLY
@ RuinCompositionStrategy_Value_RUN_ONE_RANDOMLY
constexpr PerturbationStrategy_Value PerturbationStrategy_Value_Value_MAX
constexpr AcceptanceStrategy_Value AcceptanceStrategy_Value_Value_MIN
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fils_2eproto
Internal implementation detail – do not use these members.
::google::protobuf::Message *PROTOBUF_NULLABLE spatially_close_routes_
::google::protobuf::Message *PROTOBUF_NULLABLE random_walk_
::google::protobuf::Message *PROTOBUF_NULLABLE sisr_