6#ifndef ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto_2epb_2eh
7#define ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto_2epb_2eh
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"
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_tctable_decl.h"
24#include "google/protobuf/generated_message_util.h"
25#include "google/protobuf/metadata_lite.h"
26#include "google/protobuf/generated_message_reflection.h"
27#include "google/protobuf/message.h"
28#include "google/protobuf/message_lite.h"
29#include "google/protobuf/repeated_field.h"
30#include "google/protobuf/extension_set.h"
31#include "google/protobuf/generated_enum_reflection.h"
32#include "google/protobuf/unknown_field_set.h"
36#include "google/protobuf/port_def.inc"
38#define PROTOBUF_INTERNAL_EXPORT_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto OR_PROTO_DLL
64OR_PROTO_DLL
extern const ::google::protobuf::internal::ClassDataFull
Item_class_data_;
83internal::EnumTraitsT<::operations_research::packing::vbp::VectorBinPackingSolveStatus_internal_data_>
84 internal::EnumTraitsImpl::value<::operations_research::packing::vbp::VectorBinPackingSolveStatus>;
97 ::std::numeric_limits<::int32_t>::min(),
99 ::std::numeric_limits<::int32_t>::max(),
108 return 0 <= value && value <= 3;
114 static_assert(::std::is_same<T, VectorBinPackingSolveStatus>::value ||
115 ::std::is_integral<T>::value,
116 "Incorrect type passed to VectorBinPackingSolveStatus_Name().");
121 return ::google::protobuf::internal::NameOfDenseEnum<VectorBinPackingSolveStatus_descriptor, 0, 3>(
122 static_cast<int>(value));
135class OR_PROTO_DLL VectorBinPackingOneBinInSolution final :
public ::google::protobuf::Message
141#if defined(PROTOBUF_CUSTOM_VTABLE)
148 template <
typename =
void>
159 if (
this == &from)
return *
this;
160 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
168 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
169 ABSL_ATTRIBUTE_LIFETIME_BOUND {
170 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
172 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
173 ABSL_ATTRIBUTE_LIFETIME_BOUND {
174 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
177 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
178 return GetDescriptor();
180 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
181 return default_instance().GetMetadata().descriptor;
183 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
184 return default_instance().GetMetadata().reflection;
190 static constexpr int kIndexInFileMessages = 2;
193 if (other ==
this)
return;
194 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
197 ::google::protobuf::internal::GenericSwap(
this, other);
200 void UnsafeArenaSwap(VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL other) {
201 if (other ==
this)
return;
202 ABSL_DCHECK(GetArena() == other->GetArena());
209 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingOneBinInSolution>(arena);
211 using ::google::protobuf::Message::CopyFrom;
213 using ::google::protobuf::Message::MergeFrom;
217 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
218 const ::google::protobuf::MessageLite& from_msg);
224 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
225 #if defined(PROTOBUF_CUSTOM_VTABLE)
227 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
228 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
229 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
230 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
233 ::size_t ByteSizeLong()
const {
return ByteSizeLong(*
this); }
234 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
235 ::uint8_t* PROTOBUF_NONNULL target,
236 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
237 return _InternalSerialize(*
this, target, stream);
240 ::size_t ByteSizeLong() const final;
241 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
242 ::uint8_t* PROTOBUF_NONNULL target,
243 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
245 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
248 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
252 template <
typename T>
254 static ::absl::string_view FullMessageName() {
return "operations_research.packing.vbp.VectorBinPackingOneBinInSolution"; }
262 *
this = ::std::move(from);
264 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
265 static
void* PROTOBUF_NONNULL PlacementNew_(
266 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
267 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
268 static constexpr auto InternalNewImpl_();
271 static constexpr auto InternalGenerateClassData_();
273 ::
google::protobuf::Metadata GetMetadata() const;
278 kItemIndicesFieldNumber = 1,
279 kItemCopiesFieldNumber = 2,
284 int _internal_item_indices_size()
const;
291 const ::google::protobuf::RepeatedField<::int32_t>&
item_indices()
const;
295 const ::google::protobuf::RepeatedField<::int32_t>& _internal_item_indices()
const;
296 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL _internal_mutable_item_indices();
302 int _internal_item_copies_size()
const;
309 const ::google::protobuf::RepeatedField<::int32_t>&
item_copies()
const;
313 const ::google::protobuf::RepeatedField<::int32_t>& _internal_item_copies()
const;
314 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL _internal_mutable_item_copies();
320 friend class ::google::protobuf::internal::TcParser;
321 static const ::google::protobuf::internal::TcParseTable<1, 2,
326 friend class ::google::protobuf::MessageLite;
327 friend class ::google::protobuf::Arena;
328 template <
typename T>
329 friend class ::google::protobuf::Arena::InternalHelper;
330 using InternalArenaConstructable_ = void;
331 using DestructorSkippable_ = void;
333 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
334 inline explicit Impl_(
335 ::google::protobuf::internal::InternalVisibility visibility,
336 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
337 inline explicit Impl_(
338 ::google::protobuf::internal::InternalVisibility visibility,
339 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
341 ::google::protobuf::RepeatedField<::int32_t> item_indices_;
342 ::google::protobuf::internal::CachedSize _item_indices_cached_byte_size_;
343 ::google::protobuf::RepeatedField<::int32_t> item_copies_;
344 ::google::protobuf::internal::CachedSize _item_copies_cached_byte_size_;
345 ::google::protobuf::internal::CachedSize _cached_size_;
346 PROTOBUF_TSAN_DECLARE_MEMBER
348 union { Impl_ _impl_; };
349 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
355class OR_PROTO_DLL
Item final :
public ::google::protobuf::Message
359 ~Item() PROTOBUF_FINAL;
361#if defined(PROTOBUF_CUSTOM_VTABLE)
362 void operator delete(
Item* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
364 ::google::protobuf::internal::SizedDelete(msg,
sizeof(
Item));
368 template <
typename =
void>
369 explicit PROTOBUF_CONSTEXPR
Item(::google::protobuf::internal::ConstantInitialized);
373 :
Item(
nullptr, ::std::move(from)) {}
378 inline Item& operator=(
Item&& from)
noexcept {
379 if (
this == &from)
return *
this;
380 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
388 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
389 ABSL_ATTRIBUTE_LIFETIME_BOUND {
390 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
392 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
393 ABSL_ATTRIBUTE_LIFETIME_BOUND {
394 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
397 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
398 return GetDescriptor();
400 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
GetDescriptor() {
403 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL
GetReflection() {
407 return *
reinterpret_cast<const Item*
>(
410 static constexpr int kIndexInFileMessages = 0;
412 inline void Swap(Item* PROTOBUF_NONNULL other) {
413 if (other ==
this)
return;
414 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
417 ::google::protobuf::internal::GenericSwap(
this, other);
420 void UnsafeArenaSwap(Item* PROTOBUF_NONNULL other) {
421 if (other ==
this)
return;
422 ABSL_DCHECK(GetArena() == other->GetArena());
428 Item* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena =
nullptr)
const {
429 return ::google::protobuf::Message::DefaultConstruct<Item>(arena);
431 using ::google::protobuf::Message::CopyFrom;
433 using ::google::protobuf::Message::MergeFrom;
434 void MergeFrom(
const Item& from) { Item::MergeImpl(*
this, from); }
437 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
438 const ::google::protobuf::MessageLite& from_msg);
444 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
445 #if defined(PROTOBUF_CUSTOM_VTABLE)
447 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
449 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
450 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
454 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
455 ::uint8_t* PROTOBUF_NONNULL target,
456 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
457 return _InternalSerialize(*
this, target, stream);
460 ::size_t ByteSizeLong() const final;
461 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
462 ::uint8_t* PROTOBUF_NONNULL target,
463 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
465 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
468 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
470 void InternalSwap(
Item* PROTOBUF_NONNULL other);
472 template <
typename T>
474 static ::absl::string_view FullMessageName() {
return "operations_research.packing.vbp.Item"; }
477 explicit Item(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
478 Item(::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Item& from);
480 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
Item&& from) noexcept
482 *
this = ::std::move(from);
484 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
485 static
void* PROTOBUF_NONNULL PlacementNew_(
486 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
487 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
488 static constexpr auto InternalNewImpl_();
491 static constexpr auto InternalGenerateClassData_();
493 ::
google::protobuf::Metadata GetMetadata() const;
498 kResourceUsageFieldNumber = 2,
499 kNameFieldNumber = 1,
500 kNumCopiesFieldNumber = 3,
508 int _internal_resource_usage_size()
const;
515 const ::google::protobuf::RepeatedField<::int64_t>&
resource_usage()
const;
519 const ::google::protobuf::RepeatedField<::int64_t>& _internal_resource_usage()
const;
520 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_resource_usage();
525 const ::std::string&
name()
const;
526 template <
typename Arg_ = const ::std::string&,
typename... Args_>
527 void set_name(Arg_&& arg, Args_... args);
529 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE
release_name();
533 const ::std::string& _internal_name()
const;
534 PROTOBUF_ALWAYS_INLINE
void _internal_set_name(const ::std::string& value);
535 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
544 ::int32_t _internal_num_copies()
const;
545 void _internal_set_num_copies(::int32_t value);
554 ::int32_t _internal_max_number_of_copies_per_bin()
const;
555 void _internal_set_max_number_of_copies_per_bin(::int32_t value);
564 double _internal_penalty_per_missing_copy()
const;
565 void _internal_set_penalty_per_missing_copy(
double value);
574 ::int32_t _internal_num_optional_copies()
const;
575 void _internal_set_num_optional_copies(::int32_t value);
581 friend class ::google::protobuf::internal::TcParser;
582 static const ::google::protobuf::internal::TcParseTable<3, 6,
587 friend class ::google::protobuf::MessageLite;
588 friend class ::google::protobuf::Arena;
589 template <
typename T>
590 friend class ::google::protobuf::Arena::InternalHelper;
591 using InternalArenaConstructable_ = void;
592 using DestructorSkippable_ = void;
594 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
595 inline explicit Impl_(
596 ::google::protobuf::internal::InternalVisibility visibility,
597 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
598 inline explicit Impl_(
599 ::google::protobuf::internal::InternalVisibility visibility,
600 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
601 const Item& from_msg);
602 ::google::protobuf::internal::HasBits<1> _has_bits_;
603 ::google::protobuf::internal::CachedSize _cached_size_;
604 ::google::protobuf::RepeatedField<::int64_t> resource_usage_;
605 ::google::protobuf::internal::CachedSize _resource_usage_cached_byte_size_;
606 ::google::protobuf::internal::ArenaStringPtr name_;
607 ::int32_t num_copies_;
608 ::int32_t max_number_of_copies_per_bin_;
609 double penalty_per_missing_copy_;
610 ::int32_t num_optional_copies_;
611 PROTOBUF_TSAN_DECLARE_MEMBER
613 union { Impl_ _impl_; };
614 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
626#if defined(PROTOBUF_CUSTOM_VTABLE)
633 template <
typename =
void>
637 inline VectorBinPackingSolution(VectorBinPackingSolution&& from) noexcept
644 if (
this == &from)
return *
this;
645 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
653 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
654 ABSL_ATTRIBUTE_LIFETIME_BOUND {
655 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
658 ABSL_ATTRIBUTE_LIFETIME_BOUND {
659 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
662 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
descriptor() {
665 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
668 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
678 if (other ==
this)
return;
679 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
682 ::google::protobuf::internal::GenericSwap(
this, other);
685 void UnsafeArenaSwap(VectorBinPackingSolution* PROTOBUF_NONNULL other) {
686 if (other ==
this)
return;
687 ABSL_DCHECK(GetArena() == other->GetArena());
693 VectorBinPackingSolution* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena =
nullptr)
const {
694 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingSolution>(arena);
696 using ::google::protobuf::Message::CopyFrom;
698 using ::google::protobuf::Message::MergeFrom;
702 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
703 const ::google::protobuf::MessageLite& from_msg);
709 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
710 #if defined(PROTOBUF_CUSTOM_VTABLE)
712 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
714 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
715 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
719 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
720 ::uint8_t* PROTOBUF_NONNULL target,
721 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
722 return _InternalSerialize(*
this, target, stream);
725 ::size_t ByteSizeLong() const final;
726 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
727 ::uint8_t* PROTOBUF_NONNULL target,
728 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
730 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
733 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
737 template <
typename T>
739 static ::absl::string_view FullMessageName() {
return "operations_research.packing.vbp.VectorBinPackingSolution"; }
747 *
this = ::std::move(from);
749 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
750 static
void* PROTOBUF_NONNULL PlacementNew_(
751 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
752 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
753 static constexpr auto InternalNewImpl_();
756 static constexpr auto InternalGenerateClassData_();
758 ::
google::protobuf::Metadata GetMetadata() const;
763 kBinsFieldNumber = 2,
764 kSolverInfoFieldNumber = 1,
765 kObjectiveValueFieldNumber = 4,
766 kSolveTimeInSecondsFieldNumber = 5,
773 int _internal_bins_size()
const;
778 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL
mutable_bins();
781 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>& _internal_bins()
const;
782 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL _internal_mutable_bins();
784 const ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution&
bins(
int index)
const;
786 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>&
bins()
const;
790 template <
typename Arg_ = const ::std::string&,
typename... Args_>
797 const ::std::string& _internal_solver_info()
const;
798 PROTOBUF_ALWAYS_INLINE
void _internal_set_solver_info(const ::std::string& value);
799 ::std::string* PROTOBUF_NONNULL _internal_mutable_solver_info();
808 double _internal_objective_value()
const;
809 void _internal_set_objective_value(
double value);
818 double _internal_solve_time_in_seconds()
const;
819 void _internal_set_solve_time_in_seconds(
double value);
828 double _internal_arc_flow_time_in_seconds()
const;
829 void _internal_set_arc_flow_time_in_seconds(
double value);
845 friend class ::google::protobuf::internal::TcParser;
846 static const ::google::protobuf::internal::TcParseTable<3, 6,
851 friend class ::google::protobuf::MessageLite;
852 friend class ::google::protobuf::Arena;
853 template <
typename T>
854 friend class ::google::protobuf::Arena::InternalHelper;
855 using InternalArenaConstructable_ = void;
856 using DestructorSkippable_ = void;
858 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
859 inline explicit Impl_(
860 ::google::protobuf::internal::InternalVisibility visibility,
861 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
862 inline explicit Impl_(
863 ::google::protobuf::internal::InternalVisibility visibility,
864 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
866 ::google::protobuf::internal::HasBits<1> _has_bits_;
867 ::google::protobuf::internal::CachedSize _cached_size_;
868 ::google::protobuf::RepeatedPtrField< ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution > bins_;
869 ::google::protobuf::internal::ArenaStringPtr solver_info_;
870 double objective_value_;
871 double solve_time_in_seconds_;
872 double arc_flow_time_in_seconds_;
874 PROTOBUF_TSAN_DECLARE_MEMBER
876 union { Impl_ _impl_; };
877 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
889#if defined(PROTOBUF_CUSTOM_VTABLE)
896 template <
typename =
void>
900 inline VectorBinPackingProblem(VectorBinPackingProblem&& from) noexcept
901 : VectorBinPackingProblem(
nullptr, ::std::move(from)) {}
907 if (
this == &from)
return *
this;
908 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
916 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
917 ABSL_ATTRIBUTE_LIFETIME_BOUND {
918 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
920 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
921 ABSL_ATTRIBUTE_LIFETIME_BOUND {
922 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
925 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
descriptor() {
928 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
929 return default_instance().GetMetadata().descriptor;
931 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
932 return default_instance().GetMetadata().reflection;
938 static constexpr int kIndexInFileMessages = 1;
941 if (other ==
this)
return;
942 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
945 ::google::protobuf::internal::GenericSwap(
this, other);
948 void UnsafeArenaSwap(VectorBinPackingProblem* PROTOBUF_NONNULL other) {
949 if (other ==
this)
return;
950 ABSL_DCHECK(GetArena() == other->GetArena());
957 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingProblem>(arena);
959 using ::google::protobuf::Message::CopyFrom;
961 using ::google::protobuf::Message::MergeFrom;
965 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
966 const ::google::protobuf::MessageLite& from_msg);
972 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
973 #if defined(PROTOBUF_CUSTOM_VTABLE)
975 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
977 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
978 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
982 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
983 ::uint8_t* PROTOBUF_NONNULL target,
984 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
985 return _InternalSerialize(*
this, target, stream);
988 ::size_t ByteSizeLong() const final;
989 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
990 ::uint8_t* PROTOBUF_NONNULL target,
991 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
993 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
996 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
997 static void SharedDtor(MessageLite& self);
1000 template <
typename T>
1002 static ::absl::string_view FullMessageName() {
return "operations_research.packing.vbp.VectorBinPackingProblem"; }
1010 *
this = ::std::move(from);
1012 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
GetClassData() const PROTOBUF_FINAL;
1014 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1015 ::
google::protobuf::
Arena* PROTOBUF_NULLABLE arena);
1036 int _internal_resource_capacity_size()
const;
1047 const ::google::protobuf::RepeatedField<::int64_t>& _internal_resource_capacity()
const;
1048 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_resource_capacity();
1054 int _internal_resource_name_size()
const;
1060 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1063 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1065 const ::google::protobuf::RepeatedPtrField<::std::string>&
resource_name()
const;
1069 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_resource_name()
const;
1070 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_resource_name();
1076 int _internal_item_size()
const;
1081 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL
mutable_item();
1084 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>& _internal_item()
const;
1085 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL _internal_mutable_item();
1087 const ::operations_research::packing::vbp::Item&
item(
int index)
const;
1089 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>&
item()
const;
1092 const ::std::string&
name()
const;
1093 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1094 void set_name(Arg_&& arg, Args_... args);
1096 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE
release_name();
1100 const ::std::string& _internal_name()
const;
1101 PROTOBUF_ALWAYS_INLINE
void _internal_set_name(const ::std::string& value);
1102 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
1112 double _internal_cost_per_bin()
const;
1113 void _internal_set_cost_per_bin(
double value);
1122 ::int32_t _internal_max_bins()
const;
1123 void _internal_set_max_bins(::int32_t value);
1129 friend class ::google::protobuf::internal::TcParser;
1130 static const ::google::protobuf::internal::TcParseTable<3, 6,
1135 friend class ::google::protobuf::MessageLite;
1136 friend class ::google::protobuf::Arena;
1137 template <
typename T>
1138 friend class ::google::protobuf::Arena::InternalHelper;
1139 using InternalArenaConstructable_ = void;
1140 using DestructorSkippable_ = void;
1142 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
1143 inline explicit Impl_(
1144 ::google::protobuf::internal::InternalVisibility visibility,
1145 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1146 inline explicit Impl_(
1147 ::google::protobuf::internal::InternalVisibility visibility,
1148 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
1150 ::google::protobuf::internal::HasBits<1> _has_bits_;
1151 ::google::protobuf::internal::CachedSize _cached_size_;
1152 ::google::protobuf::RepeatedField<::int64_t> resource_capacity_;
1153 ::google::protobuf::internal::CachedSize _resource_capacity_cached_byte_size_;
1154 ::google::protobuf::RepeatedPtrField<::std::string> resource_name_;
1155 ::google::protobuf::RepeatedPtrField< ::operations_research::packing::vbp::Item > item_;
1156 ::google::protobuf::internal::ArenaStringPtr name_;
1157 double cost_per_bin_;
1158 ::int32_t max_bins_;
1159 PROTOBUF_TSAN_DECLARE_MEMBER
1161 union { Impl_ _impl_; };
1162 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
1176#pragma GCC diagnostic push
1177#pragma GCC diagnostic ignored "-Wstrict-aliasing"
1185 ::google::protobuf::internal::TSanWrite(&
_impl_);
1186 _impl_.name_.ClearToEmpty();
1187 _impl_._has_bits_[0] &= ~0x00000001u;
1189inline const ::std::string&
Item::name() const
1190 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1192 return _internal_name();
1194template <
typename Arg_,
typename... Args_>
1195PROTOBUF_ALWAYS_INLINE
void Item::set_name(Arg_&& arg, Args_... args) {
1196 ::google::protobuf::internal::TSanWrite(&
_impl_);
1198 _impl_.name_.Set(
static_cast<Arg_&&
>(arg), args..., GetArena());
1202 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1203 ::std::string* _s = _internal_mutable_name();
1207inline const ::std::string& Item::_internal_name()
const {
1208 ::google::protobuf::internal::TSanRead(&
_impl_);
1211inline void Item::_internal_set_name(const ::std::string& value) {
1212 ::google::protobuf::internal::TSanWrite(&
_impl_);
1213 _impl_._has_bits_[0] |= 0x00000001u;
1214 _impl_.name_.Set(value, GetArena());
1216inline ::std::string* PROTOBUF_NONNULL Item::_internal_mutable_name() {
1217 ::google::protobuf::internal::TSanWrite(&
_impl_);
1218 _impl_._has_bits_[0] |= 0x00000001u;
1219 return _impl_.name_.Mutable( GetArena());
1222 ::google::protobuf::internal::TSanWrite(&
_impl_);
1224 if ((
_impl_._has_bits_[0] & 0x00000001u) == 0) {
1227 _impl_._has_bits_[0] &= ~0x00000001u;
1228 auto* released =
_impl_.name_.Release();
1229 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1230 _impl_.name_.Set(
"", GetArena());
1235 ::google::protobuf::internal::TSanWrite(&
_impl_);
1236 if (value !=
nullptr) {
1237 _impl_._has_bits_[0] |= 0x00000001u;
1239 _impl_._has_bits_[0] &= ~0x00000001u;
1241 _impl_.name_.SetAllocated(value, GetArena());
1242 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.name_.IsDefault()) {
1243 _impl_.name_.Set(
"", GetArena());
1249inline int Item::_internal_resource_usage_size()
const {
1250 return _internal_resource_usage().size();
1253 return _internal_resource_usage_size();
1256 ::google::protobuf::internal::TSanWrite(&
_impl_);
1257 _impl_.resource_usage_.Clear();
1261 return _internal_resource_usage().Get(index);
1264 _internal_mutable_resource_usage()->Set(index, value);
1268 ::google::protobuf::internal::TSanWrite(&
_impl_);
1269 _internal_mutable_resource_usage()->Add(value);
1273 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1275 return _internal_resource_usage();
1278 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1280 ::google::protobuf::internal::TSanWrite(&
_impl_);
1281 return _internal_mutable_resource_usage();
1283inline const ::google::protobuf::RepeatedField<::int64_t>&
1284Item::_internal_resource_usage()
const {
1285 ::google::protobuf::internal::TSanRead(&
_impl_);
1286 return _impl_.resource_usage_;
1288inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
1289Item::_internal_mutable_resource_usage() {
1290 ::google::protobuf::internal::TSanRead(&
_impl_);
1291 return &
_impl_.resource_usage_;
1296 ::google::protobuf::internal::TSanWrite(&
_impl_);
1298 _impl_._has_bits_[0] &= ~0x00000002u;
1302 return _internal_num_copies();
1305 _internal_set_num_copies(value);
1306 _impl_._has_bits_[0] |= 0x00000002u;
1309inline ::int32_t Item::_internal_num_copies()
const {
1310 ::google::protobuf::internal::TSanRead(&
_impl_);
1311 return _impl_.num_copies_;
1313inline void Item::_internal_set_num_copies(::int32_t value) {
1314 ::google::protobuf::internal::TSanWrite(&
_impl_);
1315 _impl_.num_copies_ = value;
1320 ::google::protobuf::internal::TSanWrite(&
_impl_);
1321 _impl_.num_optional_copies_ = 0;
1322 _impl_._has_bits_[0] &= ~0x00000010u;
1326 return _internal_num_optional_copies();
1329 _internal_set_num_optional_copies(value);
1330 _impl_._has_bits_[0] |= 0x00000010u;
1333inline ::int32_t Item::_internal_num_optional_copies()
const {
1334 ::google::protobuf::internal::TSanRead(&
_impl_);
1335 return _impl_.num_optional_copies_;
1337inline void Item::_internal_set_num_optional_copies(::int32_t value) {
1338 ::google::protobuf::internal::TSanWrite(&
_impl_);
1339 _impl_.num_optional_copies_ = value;
1344 ::google::protobuf::internal::TSanWrite(&
_impl_);
1345 _impl_.max_number_of_copies_per_bin_ = 0;
1346 _impl_._has_bits_[0] &= ~0x00000004u;
1350 return _internal_max_number_of_copies_per_bin();
1353 _internal_set_max_number_of_copies_per_bin(value);
1354 _impl_._has_bits_[0] |= 0x00000004u;
1357inline ::int32_t Item::_internal_max_number_of_copies_per_bin()
const {
1358 ::google::protobuf::internal::TSanRead(&
_impl_);
1359 return _impl_.max_number_of_copies_per_bin_;
1361inline void Item::_internal_set_max_number_of_copies_per_bin(::int32_t value) {
1362 ::google::protobuf::internal::TSanWrite(&
_impl_);
1363 _impl_.max_number_of_copies_per_bin_ = value;
1368 ::google::protobuf::internal::TSanWrite(&
_impl_);
1369 _impl_.penalty_per_missing_copy_ = 0;
1370 _impl_._has_bits_[0] &= ~0x00000008u;
1374 return _internal_penalty_per_missing_copy();
1377 _internal_set_penalty_per_missing_copy(value);
1378 _impl_._has_bits_[0] |= 0x00000008u;
1381inline double Item::_internal_penalty_per_missing_copy()
const {
1382 ::google::protobuf::internal::TSanRead(&
_impl_);
1383 return _impl_.penalty_per_missing_copy_;
1385inline void Item::_internal_set_penalty_per_missing_copy(
double value) {
1386 ::google::protobuf::internal::TSanWrite(&
_impl_);
1387 _impl_.penalty_per_missing_copy_ = value;
1396 ::google::protobuf::internal::TSanWrite(&
_impl_);
1397 _impl_.name_.ClearToEmpty();
1398 _impl_._has_bits_[0] &= ~0x00000001u;
1401 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1403 return _internal_name();
1405template <
typename Arg_,
typename... Args_>
1407 ::google::protobuf::internal::TSanWrite(&
_impl_);
1408 _impl_._has_bits_[0] |= 0x00000001u;
1409 _impl_.name_.Set(
static_cast<Arg_&&
>(arg), args..., GetArena());
1413 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1414 ::std::string* _s = _internal_mutable_name();
1418inline const ::std::string& VectorBinPackingProblem::_internal_name()
const {
1419 ::google::protobuf::internal::TSanRead(&
_impl_);
1420 return _impl_.name_.Get();
1422inline void VectorBinPackingProblem::_internal_set_name(const ::std::string& value) {
1423 ::google::protobuf::internal::TSanWrite(&
_impl_);
1424 _impl_._has_bits_[0] |= 0x00000001u;
1425 _impl_.name_.Set(value, GetArena());
1427inline ::std::string* PROTOBUF_NONNULL VectorBinPackingProblem::_internal_mutable_name() {
1428 ::google::protobuf::internal::TSanWrite(&
_impl_);
1429 _impl_._has_bits_[0] |= 0x00000001u;
1430 return _impl_.name_.Mutable( GetArena());
1433 ::google::protobuf::internal::TSanWrite(&
_impl_);
1435 if ((
_impl_._has_bits_[0] & 0x00000001u) == 0) {
1438 _impl_._has_bits_[0] &= ~0x00000001u;
1439 auto* released =
_impl_.name_.Release();
1440 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1446 ::google::protobuf::internal::TSanWrite(&
_impl_);
1447 if (value !=
nullptr) {
1448 _impl_._has_bits_[0] |= 0x00000001u;
1450 _impl_._has_bits_[0] &= ~0x00000001u;
1452 _impl_.name_.SetAllocated(value, GetArena());
1453 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.name_.IsDefault()) {
1460inline int VectorBinPackingProblem::_internal_resource_capacity_size()
const {
1461 return _internal_resource_capacity().size();
1464 return _internal_resource_capacity_size();
1467 ::google::protobuf::internal::TSanWrite(&
_impl_);
1468 _impl_.resource_capacity_.Clear();
1472 return _internal_resource_capacity().Get(index);
1475 _internal_mutable_resource_capacity()->Set(index, value);
1479 ::google::protobuf::internal::TSanWrite(&
_impl_);
1480 _internal_mutable_resource_capacity()->Add(value);
1484 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1486 return _internal_resource_capacity();
1489 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1491 ::google::protobuf::internal::TSanWrite(&
_impl_);
1492 return _internal_mutable_resource_capacity();
1494inline const ::google::protobuf::RepeatedField<::int64_t>&
1495VectorBinPackingProblem::_internal_resource_capacity()
const {
1496 ::google::protobuf::internal::TSanRead(&
_impl_);
1499inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
1500VectorBinPackingProblem::_internal_mutable_resource_capacity() {
1501 ::google::protobuf::internal::TSanRead(&
_impl_);
1502 return &
_impl_.resource_capacity_;
1506inline int VectorBinPackingProblem::_internal_resource_name_size()
const {
1507 return _internal_resource_name().size();
1510 return _internal_resource_name_size();
1513 ::google::protobuf::internal::TSanWrite(&
_impl_);
1514 _impl_.resource_name_.Clear();
1517 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1518 ::google::protobuf::internal::TSanWrite(&
_impl_);
1519 ::std::string* _s = _internal_mutable_resource_name()->Add();
1524 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1526 return _internal_resource_name().Get(index);
1529 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1531 return _internal_mutable_resource_name()->Mutable(index);
1533template <
typename Arg_,
typename... Args_>
1535 ::google::protobuf::internal::AssignToString(*_internal_mutable_resource_name()->Mutable(index), ::std::forward<Arg_>(value),
1539template <
typename Arg_,
typename... Args_>
1541 ::google::protobuf::internal::TSanWrite(&
_impl_);
1542 ::google::protobuf::internal::AddToRepeatedPtrField(*_internal_mutable_resource_name(),
1543 ::std::forward<Arg_>(value),
1548 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1550 return _internal_resource_name();
1552inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
1555 ::google::protobuf::internal::TSanWrite(&
_impl_);
1556 return _internal_mutable_resource_name();
1558inline const ::google::protobuf::RepeatedPtrField<::std::string>&
1559VectorBinPackingProblem::_internal_resource_name()
const {
1560 ::google::protobuf::internal::TSanRead(&
_impl_);
1561 return _impl_.resource_name_;
1563inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
1564VectorBinPackingProblem::_internal_mutable_resource_name() {
1565 ::google::protobuf::internal::TSanRead(&
_impl_);
1566 return &
_impl_.resource_name_;
1570inline int VectorBinPackingProblem::_internal_item_size()
const {
1571 return _internal_item().size();
1574 return _internal_item_size();
1577 ::google::protobuf::internal::TSanWrite(&
_impl_);
1581 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1583 return _internal_mutable_item()->Mutable(index);
1586 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1588 ::google::protobuf::internal::TSanWrite(&
_impl_);
1589 return _internal_mutable_item();
1592 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1594 return _internal_item().Get(index);
1597 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1598 ::google::protobuf::internal::TSanWrite(&
_impl_);
1604 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1606 return _internal_item();
1608inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>&
1609VectorBinPackingProblem::_internal_item()
const {
1610 ::google::protobuf::internal::TSanRead(&
_impl_);
1613inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL
1614VectorBinPackingProblem::_internal_mutable_item() {
1615 ::google::protobuf::internal::TSanRead(&
_impl_);
1621 ::google::protobuf::internal::TSanWrite(&
_impl_);
1623 _impl_._has_bits_[0] &= ~0x00000004u;
1627 return _internal_max_bins();
1630 _internal_set_max_bins(value);
1631 _impl_._has_bits_[0] |= 0x00000004u;
1634inline ::int32_t VectorBinPackingProblem::_internal_max_bins()
const {
1635 ::google::protobuf::internal::TSanRead(&
_impl_);
1638inline void VectorBinPackingProblem::_internal_set_max_bins(::int32_t value) {
1639 ::google::protobuf::internal::TSanWrite(&
_impl_);
1640 _impl_.max_bins_ = value;
1645 bool value = (
_impl_._has_bits_[0] & 0x00000002u) != 0;
1649 ::google::protobuf::internal::TSanWrite(&
_impl_);
1650 _impl_.cost_per_bin_ = 0;
1651 _impl_._has_bits_[0] &= ~0x00000002u;
1655 return _internal_cost_per_bin();
1658 _internal_set_cost_per_bin(value);
1659 _impl_._has_bits_[0] |= 0x00000002u;
1662inline double VectorBinPackingProblem::_internal_cost_per_bin()
const {
1663 ::google::protobuf::internal::TSanRead(&
_impl_);
1664 return _impl_.cost_per_bin_;
1666inline void VectorBinPackingProblem::_internal_set_cost_per_bin(
double value) {
1667 ::google::protobuf::internal::TSanWrite(&
_impl_);
1668 _impl_.cost_per_bin_ = value;
1676inline int VectorBinPackingOneBinInSolution::_internal_item_indices_size()
const {
1677 return _internal_item_indices().size();
1680 return _internal_item_indices_size();
1683 ::google::protobuf::internal::TSanWrite(&
_impl_);
1684 _impl_.item_indices_.Clear();
1688 return _internal_item_indices().Get(index);
1691 _internal_mutable_item_indices()->Set(index, value);
1695 ::google::protobuf::internal::TSanWrite(&
_impl_);
1696 _internal_mutable_item_indices()->Add(value);
1700 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1702 return _internal_item_indices();
1705 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1707 ::google::protobuf::internal::TSanWrite(&
_impl_);
1708 return _internal_mutable_item_indices();
1710inline const ::google::protobuf::RepeatedField<::int32_t>&
1711VectorBinPackingOneBinInSolution::_internal_item_indices()
const {
1712 ::google::protobuf::internal::TSanRead(&
_impl_);
1713 return _impl_.item_indices_;
1715inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL
1716VectorBinPackingOneBinInSolution::_internal_mutable_item_indices() {
1717 ::google::protobuf::internal::TSanRead(&
_impl_);
1718 return &
_impl_.item_indices_;
1722inline int VectorBinPackingOneBinInSolution::_internal_item_copies_size()
const {
1723 return _internal_item_copies().size();
1726 return _internal_item_copies_size();
1729 ::google::protobuf::internal::TSanWrite(&
_impl_);
1730 _impl_.item_copies_.Clear();
1734 return _internal_item_copies().Get(index);
1737 _internal_mutable_item_copies()->Set(index, value);
1741 ::google::protobuf::internal::TSanWrite(&
_impl_);
1742 _internal_mutable_item_copies()->Add(value);
1746 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1748 return _internal_item_copies();
1751 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1753 ::google::protobuf::internal::TSanWrite(&
_impl_);
1754 return _internal_mutable_item_copies();
1756inline const ::google::protobuf::RepeatedField<::int32_t>&
1757VectorBinPackingOneBinInSolution::_internal_item_copies()
const {
1758 ::google::protobuf::internal::TSanRead(&
_impl_);
1759 return _impl_.item_copies_;
1761inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL
1762VectorBinPackingOneBinInSolution::_internal_mutable_item_copies() {
1763 ::google::protobuf::internal::TSanRead(&
_impl_);
1764 return &
_impl_.item_copies_;
1773 ::google::protobuf::internal::TSanWrite(&
_impl_);
1774 _impl_.solver_info_.ClearToEmpty();
1775 _impl_._has_bits_[0] &= ~0x00000001u;
1778 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1780 return _internal_solver_info();
1782template <
typename Arg_,
typename... Args_>
1784 ::google::protobuf::internal::TSanWrite(&
_impl_);
1785 _impl_._has_bits_[0] |= 0x00000001u;
1786 _impl_.solver_info_.Set(
static_cast<Arg_&&
>(arg), args..., GetArena());
1790 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1791 ::std::string* _s = _internal_mutable_solver_info();
1795inline const ::std::string& VectorBinPackingSolution::_internal_solver_info()
const {
1796 ::google::protobuf::internal::TSanRead(&
_impl_);
1797 return _impl_.solver_info_.Get();
1799inline void VectorBinPackingSolution::_internal_set_solver_info(const ::std::string& value) {
1800 ::google::protobuf::internal::TSanWrite(&
_impl_);
1801 _impl_._has_bits_[0] |= 0x00000001u;
1802 _impl_.solver_info_.Set(value, GetArena());
1804inline ::std::string* PROTOBUF_NONNULL VectorBinPackingSolution::_internal_mutable_solver_info() {
1805 ::google::protobuf::internal::TSanWrite(&
_impl_);
1806 _impl_._has_bits_[0] |= 0x00000001u;
1807 return _impl_.solver_info_.Mutable( GetArena());
1810 ::google::protobuf::internal::TSanWrite(&
_impl_);
1812 if ((
_impl_._has_bits_[0] & 0x00000001u) == 0) {
1815 _impl_._has_bits_[0] &= ~0x00000001u;
1816 auto* released =
_impl_.solver_info_.Release();
1817 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1818 _impl_.solver_info_.Set(
"", GetArena());
1823 ::google::protobuf::internal::TSanWrite(&
_impl_);
1824 if (value !=
nullptr) {
1825 _impl_._has_bits_[0] |= 0x00000001u;
1827 _impl_._has_bits_[0] &= ~0x00000001u;
1829 _impl_.solver_info_.SetAllocated(value, GetArena());
1830 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.solver_info_.IsDefault()) {
1831 _impl_.solver_info_.Set(
"", GetArena());
1837inline int VectorBinPackingSolution::_internal_bins_size()
const {
1838 return _internal_bins().size();
1841 return _internal_bins_size();
1844 ::google::protobuf::internal::TSanWrite(&
_impl_);
1848 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1850 return _internal_mutable_bins()->Mutable(index);
1853 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1855 ::google::protobuf::internal::TSanWrite(&
_impl_);
1856 return _internal_mutable_bins();
1859 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1861 return _internal_bins().Get(index);
1864 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1865 ::google::protobuf::internal::TSanWrite(&
_impl_);
1870inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>&
VectorBinPackingSolution::bins() const
1871 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1873 return _internal_bins();
1875inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>&
1876VectorBinPackingSolution::_internal_bins()
const {
1877 ::google::protobuf::internal::TSanRead(&
_impl_);
1880inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL
1881VectorBinPackingSolution::_internal_mutable_bins() {
1882 ::google::protobuf::internal::TSanRead(&
_impl_);
1888 ::google::protobuf::internal::TSanWrite(&
_impl_);
1890 _impl_._has_bits_[0] &= ~0x00000010u;
1894 return _internal_status();
1897 _internal_set_status(value);
1901inline ::operations_research::packing::vbp::VectorBinPackingSolveStatus VectorBinPackingSolution::_internal_status()
const {
1902 ::google::protobuf::internal::TSanRead(&
_impl_);
1906 ::google::protobuf::internal::TSanWrite(&
_impl_);
1912 ::google::protobuf::internal::TSanWrite(&
_impl_);
1913 _impl_.objective_value_ = 0;
1914 _impl_._has_bits_[0] &= ~0x00000002u;
1918 return _internal_objective_value();
1921 _internal_set_objective_value(value);
1925inline double VectorBinPackingSolution::_internal_objective_value()
const {
1926 ::google::protobuf::internal::TSanRead(&
_impl_);
1929inline void VectorBinPackingSolution::_internal_set_objective_value(
double value) {
1930 ::google::protobuf::internal::TSanWrite(&
_impl_);
1936 ::google::protobuf::internal::TSanWrite(&
_impl_);
1937 _impl_.solve_time_in_seconds_ = 0;
1938 _impl_._has_bits_[0] &= ~0x00000004u;
1942 return _internal_solve_time_in_seconds();
1945 _internal_set_solve_time_in_seconds(value);
1949inline double VectorBinPackingSolution::_internal_solve_time_in_seconds()
const {
1950 ::google::protobuf::internal::TSanRead(&
_impl_);
1953inline void VectorBinPackingSolution::_internal_set_solve_time_in_seconds(
double value) {
1954 ::google::protobuf::internal::TSanWrite(&
_impl_);
1960 ::google::protobuf::internal::TSanWrite(&
_impl_);
1961 _impl_.arc_flow_time_in_seconds_ = 0;
1962 _impl_._has_bits_[0] &= ~0x00000008u;
1966 return _internal_arc_flow_time_in_seconds();
1969 _internal_set_arc_flow_time_in_seconds(value);
1973inline double VectorBinPackingSolution::_internal_arc_flow_time_in_seconds()
const {
1974 ::google::protobuf::internal::TSanRead(&
_impl_);
1977inline void VectorBinPackingSolution::_internal_set_arc_flow_time_in_seconds(
double value) {
1978 ::google::protobuf::internal::TSanWrite(&
_impl_);
1983#pragma GCC diagnostic pop
1999 return ::operations_research::packing::vbp::VectorBinPackingSolveStatus_descriptor();
2007#include "google/protobuf/port_undef.inc"
friend class ::google::protobuf::MessageLite
void set_penalty_per_missing_copy(double value)
void MergeFrom(const Item &from)
void clear_num_optional_copies()
int32 num_optional_copies = 5;
::size_t ByteSizeLong() const final
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void add_resource_usage(::int64_t value)
void set_name(Arg_ &&arg, Args_... args)
::std::string *PROTOBUF_NULLABLE release_name()
void clear_penalty_per_missing_copy()
double penalty_per_missing_copy = 6;
static const Item & default_instance()
void CopyFrom(const Item &from)
void clear_name()
string name = 1;
void clear_resource_usage()
@ kNumOptionalCopiesFieldNumber
@ kMaxNumberOfCopiesPerBinFieldNumber
@ kPenaltyPerMissingCopyFieldNumber
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Item & operator=(const Item &from)
void set_num_copies(::int32_t value)
void set_resource_usage(int index, ::int64_t value)
void set_max_number_of_copies_per_bin(::int32_t value)
::int32_t num_optional_copies() const
const ::std::string & name() const
const ::google::protobuf::RepeatedField<::int64_t > & resource_usage() const
int resource_usage_size() const
repeated int64 resource_usage = 2;
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
bool IsInitialized() const
void clear_max_number_of_copies_per_bin()
int32 max_number_of_copies_per_bin = 4;
void set_num_optional_copies(::int32_t value)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_resource_usage()
::int64_t resource_usage(int index) const
double penalty_per_missing_copy() const
PROTOBUF_CONSTEXPR Item(::google::protobuf::internal::ConstantInitialized)
::int32_t num_copies() const
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void clear_num_copies()
int32 num_copies = 3;
::std::string *PROTOBUF_NONNULL mutable_name()
::int32_t max_number_of_copies_per_bin() const
void Swap(Item *PROTOBUF_NONNULL other)
void set_item_indices(int index, ::int32_t value)
friend class ::google::protobuf::MessageLite
PROTOBUF_CONSTEXPR VectorBinPackingOneBinInSolution(::google::protobuf::internal::ConstantInitialized)
void add_item_indices(::int32_t value)
const ::google::protobuf::RepeatedField<::int32_t > & item_copies() const
void Swap(VectorBinPackingOneBinInSolution *PROTOBUF_NONNULL other)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void CopyFrom(const VectorBinPackingOneBinInSolution &from)
void add_item_copies(::int32_t value)
int item_indices_size() const
repeated int32 item_indices = 1;
VectorBinPackingOneBinInSolution(::google::protobuf::Arena *PROTOBUF_NULLABLE arena, VectorBinPackingOneBinInSolution &&from) noexcept
void clear_item_indices()
::google::protobuf::RepeatedField<::int32_t > *PROTOBUF_NONNULL mutable_item_indices()
VectorBinPackingOneBinInSolution()
bool IsInitialized() const
::google::protobuf::RepeatedField<::int32_t > *PROTOBUF_NONNULL mutable_item_copies()
const ::google::protobuf::RepeatedField<::int32_t > & item_indices() const
::int32_t item_copies(int index) const
void set_item_copies(int index, ::int32_t value)
VectorBinPackingOneBinInSolution & operator=(const VectorBinPackingOneBinInSolution &from)
int item_copies_size() const
repeated int32 item_copies = 2;
VectorBinPackingOneBinInSolution(const VectorBinPackingOneBinInSolution &from)
::int32_t item_indices(int index) const
::size_t ByteSizeLong() const final
void Swap(VectorBinPackingProblem *PROTOBUF_NONNULL other)
int item_size() const
repeated .operations_research.packing.vbp.Item item = 4;
::std::string *PROTOBUF_NONNULL add_resource_name()
int resource_name_size() const
repeated string resource_name = 3;
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void clear_resource_capacity()
const ::std::string & resource_name(int index) const
static constexpr auto InternalGenerateClassData_()
::std::string *PROTOBUF_NONNULL mutable_resource_name(int index)
::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item > *PROTOBUF_NONNULL mutable_item()
VectorBinPackingProblem()
int resource_capacity_size() const
repeated int64 resource_capacity = 2;
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_resource_name()
const ::google::protobuf::RepeatedPtrField<::std::string > & resource_name() const
const ::std::string & name() const
::google::protobuf::Metadata GetMetadata() const
void set_cost_per_bin(double value)
void set_name(Arg_ &&arg, Args_... args)
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
void MergeFrom(const VectorBinPackingProblem &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void CopyFrom(const VectorBinPackingProblem &from)
VectorBinPackingProblem & operator=(const VectorBinPackingProblem &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::operations_research::packing::vbp::Item *PROTOBUF_NONNULL add_item()
void add_resource_capacity(::int64_t value)
const ::operations_research::packing::vbp::Item & item(int index) const
friend void swap(VectorBinPackingProblem &a, VectorBinPackingProblem &b)
::int64_t resource_capacity(int index) const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
bool has_cost_per_bin() const
optional double cost_per_bin = 6;
::int32_t max_bins() const
void clear_name()
string name = 1;
void clear_max_bins()
int32 max_bins = 5;
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_resource_capacity()
::std::string *PROTOBUF_NULLABLE release_name()
double cost_per_bin() const
VectorBinPackingProblem *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
static constexpr auto InternalNewImpl_()
const ::google::protobuf::RepeatedField<::int64_t > & resource_capacity() const
@ kResourceNameFieldNumber
@ kResourceCapacityFieldNumber
void clear_resource_name()
void set_max_bins(::int32_t value)
void set_resource_capacity(int index, ::int64_t value)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item > & item() const
::std::string *PROTOBUF_NONNULL mutable_name()
::operations_research::packing::vbp::Item *PROTOBUF_NONNULL mutable_item(int index)
bool IsInitialized() const
friend class ::google::protobuf::Arena
void clear_cost_per_bin()
void set_resource_name(int index, Arg_ &&value, Args_... args)
friend class ::google::protobuf::MessageLite
::operations_research::packing::vbp::VectorBinPackingOneBinInSolution *PROTOBUF_NONNULL mutable_bins(int index)
bool IsInitialized() const
void set_allocated_solver_info(::std::string *PROTOBUF_NULLABLE value)
::operations_research::packing::vbp::VectorBinPackingSolveStatus status() const
const ::std::string & solver_info() const
::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution > *PROTOBUF_NONNULL mutable_bins()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static const VectorBinPackingSolution & default_instance()
friend void swap(VectorBinPackingSolution &a, VectorBinPackingSolution &b)
void set_status(::operations_research::packing::vbp::VectorBinPackingSolveStatus value)
static constexpr int kIndexInFileMessages
void clear_solve_time_in_seconds()
double solve_time_in_seconds = 5;
const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution > & bins() const
void set_arc_flow_time_in_seconds(double value)
double arc_flow_time_in_seconds() const
void clear_arc_flow_time_in_seconds()
double arc_flow_time_in_seconds = 6;
const ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution & bins(int index) const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::std::string *PROTOBUF_NONNULL mutable_solver_info()
void set_solver_info(Arg_ &&arg, Args_... args)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
VectorBinPackingSolution & operator=(const VectorBinPackingSolution &from)
void clear_status()
.operations_research.packing.vbp.VectorBinPackingSolveStatus status = 3;
void CopyFrom(const VectorBinPackingSolution &from)
void set_objective_value(double value)
double objective_value() const
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
int bins_size() const
repeated .operations_research.packing.vbp.VectorBinPackingOneBinInSolution bins = 2;
@ kArcFlowTimeInSecondsFieldNumber
double solve_time_in_seconds() const
void clear_objective_value()
double objective_value = 4;
void set_solve_time_in_seconds(double value)
::size_t ByteSizeLong() const final
::operations_research::packing::vbp::VectorBinPackingOneBinInSolution *PROTOBUF_NONNULL add_bins()
::std::string *PROTOBUF_NULLABLE release_solver_info()
void clear_solver_info()
string solver_info = 1;
void MergeFrom(const VectorBinPackingSolution &from)
VectorBinPackingSolution()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
PROTOBUF_CONSTEXPR VectorBinPackingSolution(::google::protobuf::internal::ConstantInitialized)
void Swap(VectorBinPackingSolution *PROTOBUF_NONNULL other)
::absl::string_view GetAnyMessageName()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::packing::vbp::VectorBinPackingSolveStatus >()
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL VectorBinPackingSolveStatus_descriptor()
constexpr VectorBinPackingSolveStatus VectorBinPackingSolveStatus_MAX
const ::std::string & VectorBinPackingSolveStatus_Name(T value)
bool VectorBinPackingSolveStatus_IsValid(int value)
PROTOBUF_CONSTINIT const uint32_t VectorBinPackingSolveStatus_internal_data_[]
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull VectorBinPackingSolution_class_data_
constexpr VectorBinPackingSolveStatus VectorBinPackingSolveStatus_MIN
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Item_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull VectorBinPackingProblem_class_data_
VectorBinPackingSolveStatus
@ VectorBinPackingSolveStatus_INT_MIN_SENTINEL_DO_NOT_USE_
@ VectorBinPackingSolveStatus_INT_MAX_SENTINEL_DO_NOT_USE_
@ VECTOR_BIN_PACKING_SOLVE_STATUS_UNSPECIFIED
bool VectorBinPackingSolveStatus_Parse(::absl::string_view name, VectorBinPackingSolveStatus *PROTOBUF_NONNULL value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VectorBinPackingSolutionDefaultTypeInternal _VectorBinPackingSolution_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull VectorBinPackingOneBinInSolution_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ItemDefaultTypeInternal _Item_default_instance_
constexpr int VectorBinPackingSolveStatus_ARRAYSIZE
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VectorBinPackingOneBinInSolutionDefaultTypeInternal _VectorBinPackingOneBinInSolution_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VectorBinPackingProblemDefaultTypeInternal _VectorBinPackingProblem_default_instance_
In SWIG mode, we don't want anything besides these top-level includes.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto