Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
vector_bin_packing.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/packing/vector_bin_packing.proto
4// Protobuf C++ Version: 6.33.1
5
6#ifndef ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto_2epb_2eh
7#define ortools_2fpacking_2fvector_5fbin_5fpacking_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 != 6033001
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_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" // IWYU pragma: export
30#include "google/protobuf/extension_set.h" // IWYU pragma: export
31#include "google/protobuf/generated_enum_reflection.h"
32#include "google/protobuf/unknown_field_set.h"
33// @@protoc_insertion_point(includes)
34
35// Must be included last.
36#include "google/protobuf/port_def.inc"
37
38#define PROTOBUF_INTERNAL_EXPORT_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto OR_PROTO_DLL
39
40namespace google {
41namespace protobuf {
42namespace internal {
43template <typename T>
44::absl::string_view GetAnyMessageName();
45} // namespace internal
46} // namespace protobuf
47} // namespace google
48
49// Internal implementation detail -- do not use these members.
51 static const ::uint32_t offsets[];
52};
53extern "C" {
54OR_PROTO_DLL extern const ::google::protobuf::internal::DescriptorTable descriptor_table_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
55} // extern "C"
56namespace operations_research {
57namespace packing {
58namespace vbp {
60OR_PROTO_DLL extern const uint32_t VectorBinPackingSolveStatus_internal_data_[];
61class Item;
64OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Item_class_data_;
68OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingOneBinInSolution_class_data_;
72OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingProblem_class_data_;
76OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingSolution_class_data_;
77} // namespace vbp
78} // namespace packing
79} // namespace operations_research
80namespace google {
81namespace protobuf {
82template <>
83internal::EnumTraitsT<::operations_research::packing::vbp::VectorBinPackingSolveStatus_internal_data_>
84 internal::EnumTraitsImpl::value<::operations_research::packing::vbp::VectorBinPackingSolveStatus>;
85} // namespace protobuf
86} // namespace google
87
88namespace operations_research {
89namespace packing {
90namespace vbp {
101
102OR_PROTO_DLL extern const uint32_t VectorBinPackingSolveStatus_internal_data_[];
104 static_cast<VectorBinPackingSolveStatus>(0);
106 static_cast<VectorBinPackingSolveStatus>(3);
108 return 0 <= value && value <= 3;
109}
110inline constexpr int VectorBinPackingSolveStatus_ARRAYSIZE = 3 + 1;
111OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL VectorBinPackingSolveStatus_descriptor();
112template <typename T>
113const ::std::string& VectorBinPackingSolveStatus_Name(T value) {
114 static_assert(::std::is_same<T, VectorBinPackingSolveStatus>::value ||
115 ::std::is_integral<T>::value,
116 "Incorrect type passed to VectorBinPackingSolveStatus_Name().");
118}
119template <>
121 return ::google::protobuf::internal::NameOfDenseEnum<VectorBinPackingSolveStatus_descriptor, 0, 3>(
122 static_cast<int>(value));
123}
125 ::absl::string_view name, VectorBinPackingSolveStatus* PROTOBUF_NONNULL value) {
126 return ::google::protobuf::internal::ParseNamedEnum<VectorBinPackingSolveStatus>(VectorBinPackingSolveStatus_descriptor(), name,
127 value);
128}
129
130// ===================================================================
131
132
133// -------------------------------------------------------------------
134
135class OR_PROTO_DLL VectorBinPackingOneBinInSolution final : public ::google::protobuf::Message
136/* @@protoc_insertion_point(class_definition:operations_research.packing.vbp.VectorBinPackingOneBinInSolution) */ {
137 public:
139 ~VectorBinPackingOneBinInSolution() PROTOBUF_FINAL;
141#if defined(PROTOBUF_CUSTOM_VTABLE)
142 void operator delete(VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
143 SharedDtor(*msg);
144 ::google::protobuf::internal::SizedDelete(msg, sizeof(VectorBinPackingOneBinInSolution));
145 }
146#endif
147
148 template <typename = void>
149 explicit PROTOBUF_CONSTEXPR VectorBinPackingOneBinInSolution(::google::protobuf::internal::ConstantInitialized);
150
153 : VectorBinPackingOneBinInSolution(nullptr, ::std::move(from)) {}
156 return *this;
157 }
158 inline VectorBinPackingOneBinInSolution& operator=(VectorBinPackingOneBinInSolution&& from) noexcept {
159 if (this == &from) return *this;
160 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
161 InternalSwap(&from);
162 } else {
163 CopyFrom(from);
164 }
165 return *this;
166 }
167
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);
171 }
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>();
175 }
176
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;
186 static const VectorBinPackingOneBinInSolution& default_instance() {
187 return *reinterpret_cast<const VectorBinPackingOneBinInSolution*>(
189 }
190 static constexpr int kIndexInFileMessages = 2;
192 inline void Swap(VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL other) {
193 if (other == this) return;
194 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
195 InternalSwap(other);
196 } else {
197 ::google::protobuf::internal::GenericSwap(this, other);
198 }
199 }
200 void UnsafeArenaSwap(VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL other) {
201 if (other == this) return;
202 ABSL_DCHECK(GetArena() == other->GetArena());
203 InternalSwap(other);
204 }
205
206 // implements Message ----------------------------------------------
207
208 VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
209 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingOneBinInSolution>(arena);
211 using ::google::protobuf::Message::CopyFrom;
212 void CopyFrom(const VectorBinPackingOneBinInSolution& from);
213 using ::google::protobuf::Message::MergeFrom;
214 void MergeFrom(const VectorBinPackingOneBinInSolution& from) { VectorBinPackingOneBinInSolution::MergeImpl(*this, from); }
215
216 private:
217 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
218 const ::google::protobuf::MessageLite& from_msg);
219
220 public:
221 bool IsInitialized() const {
222 return true;
224 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
225 #if defined(PROTOBUF_CUSTOM_VTABLE)
226 private:
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);
231
232 public:
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);
238 }
239 #else // PROTOBUF_CUSTOM_VTABLE
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;
244 #endif // PROTOBUF_CUSTOM_VTABLE
245 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
246
247 private:
248 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
249 static void SharedDtor(MessageLite& self);
250 void InternalSwap(VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL other);
251 private:
252 template <typename T>
253 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
254 static ::absl::string_view FullMessageName() { return "operations_research.packing.vbp.VectorBinPackingOneBinInSolution"; }
255
256 explicit VectorBinPackingOneBinInSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
257 VectorBinPackingOneBinInSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const VectorBinPackingOneBinInSolution& from);
259 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, VectorBinPackingOneBinInSolution&& from) noexcept
261 *this = ::std::move(from);
262 }
263 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
264 static void* PROTOBUF_NONNULL PlacementNew_(
265 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
266 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
267 static constexpr auto InternalNewImpl_();
268
269 public:
270 static constexpr auto InternalGenerateClassData_();
271
272 ::google::protobuf::Metadata GetMetadata() const;
273 // nested types ----------------------------------------------------
274
275 // accessors -------------------------------------------------------
276 enum : int {
277 kItemIndicesFieldNumber = 1,
278 kItemCopiesFieldNumber = 2,
279 };
280 // repeated int32 item_indices = 1;
281 int item_indices_size() const;
282 private:
283 int _internal_item_indices_size() const;
284
285 public:
286 void clear_item_indices() ;
287 ::int32_t item_indices(int index) const;
288 void set_item_indices(int index, ::int32_t value);
289 void add_item_indices(::int32_t value);
290 const ::google::protobuf::RepeatedField<::int32_t>& item_indices() const;
291 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL mutable_item_indices();
292
293 private:
294 const ::google::protobuf::RepeatedField<::int32_t>& _internal_item_indices() const;
295 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL _internal_mutable_item_indices();
296
297 public:
298 // repeated int32 item_copies = 2;
299 int item_copies_size() const;
300 private:
301 int _internal_item_copies_size() const;
302
303 public:
304 void clear_item_copies() ;
305 ::int32_t item_copies(int index) const;
306 void set_item_copies(int index, ::int32_t value);
307 void add_item_copies(::int32_t value);
308 const ::google::protobuf::RepeatedField<::int32_t>& item_copies() const;
309 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL mutable_item_copies();
310
311 private:
312 const ::google::protobuf::RepeatedField<::int32_t>& _internal_item_copies() const;
313 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL _internal_mutable_item_copies();
314
315 public:
316 // @@protoc_insertion_point(class_scope:operations_research.packing.vbp.VectorBinPackingOneBinInSolution)
317 private:
318 class _Internal;
319 friend class ::google::protobuf::internal::TcParser;
320 static const ::google::protobuf::internal::TcParseTable<1, 2,
321 0, 0,
322 2>
323 _table_;
324
325 friend class ::google::protobuf::MessageLite;
326 friend class ::google::protobuf::Arena;
327 template <typename T>
328 friend class ::google::protobuf::Arena::InternalHelper;
329 using InternalArenaConstructable_ = void;
330 using DestructorSkippable_ = void;
331 struct Impl_ {
332 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
333 inline explicit Impl_(
334 ::google::protobuf::internal::InternalVisibility visibility,
335 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
336 inline explicit Impl_(
337 ::google::protobuf::internal::InternalVisibility visibility,
338 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
339 const VectorBinPackingOneBinInSolution& from_msg);
340 ::google::protobuf::internal::HasBits<1> _has_bits_;
341 ::google::protobuf::internal::CachedSize _cached_size_;
342 ::google::protobuf::RepeatedField<::int32_t> item_indices_;
343 ::google::protobuf::internal::CachedSize _item_indices_cached_byte_size_;
344 ::google::protobuf::RepeatedField<::int32_t> item_copies_;
345 ::google::protobuf::internal::CachedSize _item_copies_cached_byte_size_;
346 PROTOBUF_TSAN_DECLARE_MEMBER
347 };
348 union { Impl_ _impl_; };
349 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
352OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingOneBinInSolution_class_data_;
353// -------------------------------------------------------------------
354
355class OR_PROTO_DLL Item final : public ::google::protobuf::Message
356/* @@protoc_insertion_point(class_definition:operations_research.packing.vbp.Item) */ {
357 public:
358 inline Item() : Item(nullptr) {}
359 ~Item() PROTOBUF_FINAL;
360
361#if defined(PROTOBUF_CUSTOM_VTABLE)
362 void operator delete(Item* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
363 SharedDtor(*msg);
364 ::google::protobuf::internal::SizedDelete(msg, sizeof(Item));
365 }
366#endif
367
368 template <typename = void>
369 explicit PROTOBUF_CONSTEXPR Item(::google::protobuf::internal::ConstantInitialized);
370
371 inline Item(const Item& from) : Item(nullptr, from) {}
372 inline Item(Item&& from) noexcept
373 : Item(nullptr, ::std::move(from)) {}
374 inline Item& operator=(const Item& from) {
375 CopyFrom(from);
376 return *this;
378 inline Item& operator=(Item&& from) noexcept {
379 if (this == &from) return *this;
380 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
381 InternalSwap(&from);
382 } else {
383 CopyFrom(from);
384 }
385 return *this;
386 }
387
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>();
396
397 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
398 return GetDescriptor();
399 }
400 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
401 return default_instance().GetMetadata().descriptor;
402 }
403 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
404 return default_instance().GetMetadata().reflection;
405 }
406 static const Item& default_instance() {
407 return *reinterpret_cast<const Item*>(
410 static constexpr int kIndexInFileMessages = 0;
411 friend void swap(Item& a, Item& b) { a.Swap(&b); }
412 inline void Swap(Item* PROTOBUF_NONNULL other) {
413 if (other == this) return;
414 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
415 InternalSwap(other);
416 } else {
417 ::google::protobuf::internal::GenericSwap(this, other);
418 }
419 }
420 void UnsafeArenaSwap(Item* PROTOBUF_NONNULL other) {
421 if (other == this) return;
422 ABSL_DCHECK(GetArena() == other->GetArena());
423 InternalSwap(other);
424 }
425
426 // implements Message ----------------------------------------------
427
428 Item* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
429 return ::google::protobuf::Message::DefaultConstruct<Item>(arena);
430 }
431 using ::google::protobuf::Message::CopyFrom;
432 void CopyFrom(const Item& from);
433 using ::google::protobuf::Message::MergeFrom;
434 void MergeFrom(const Item& from) { Item::MergeImpl(*this, from); }
435
436 private:
437 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
438 const ::google::protobuf::MessageLite& from_msg);
439
440 public:
441 bool IsInitialized() const {
442 return true;
443 }
444 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
445 #if defined(PROTOBUF_CUSTOM_VTABLE)
446 private:
447 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
448 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
449 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
450 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
451
452 public:
453 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
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);
458 }
459 #else // PROTOBUF_CUSTOM_VTABLE
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;
464 #endif // PROTOBUF_CUSTOM_VTABLE
465 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
466
467 private:
468 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
469 static void SharedDtor(MessageLite& self);
470 void InternalSwap(Item* PROTOBUF_NONNULL other);
471 private:
472 template <typename T>
473 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
474 static ::absl::string_view FullMessageName() { return "operations_research.packing.vbp.Item"; }
475
476 explicit Item(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
477 Item(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Item& from);
478 Item(
479 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Item&& from) noexcept
480 : Item(arena) {
481 *this = ::std::move(from);
482 }
483 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
484 static void* PROTOBUF_NONNULL PlacementNew_(
485 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
486 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
487 static constexpr auto InternalNewImpl_();
488
489 public:
490 static constexpr auto InternalGenerateClassData_();
491
492 ::google::protobuf::Metadata GetMetadata() const;
493 // nested types ----------------------------------------------------
494
495 // accessors -------------------------------------------------------
496 enum : int {
497 kResourceUsageFieldNumber = 2,
498 kNameFieldNumber = 1,
499 kNumCopiesFieldNumber = 3,
503 };
504 // repeated int64 resource_usage = 2;
506 private:
507 int _internal_resource_usage_size() const;
508
509 public:
510 void clear_resource_usage() ;
511 ::int64_t resource_usage(int index) const;
512 void set_resource_usage(int index, ::int64_t value);
513 void add_resource_usage(::int64_t value);
514 const ::google::protobuf::RepeatedField<::int64_t>& resource_usage() const;
515 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_resource_usage();
516
517 private:
518 const ::google::protobuf::RepeatedField<::int64_t>& _internal_resource_usage() const;
519 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_resource_usage();
520
521 public:
522 // string name = 1;
523 void clear_name() ;
524 const ::std::string& name() const;
525 template <typename Arg_ = const ::std::string&, typename... Args_>
526 void set_name(Arg_&& arg, Args_... args);
527 ::std::string* PROTOBUF_NONNULL mutable_name();
528 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
529 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
530
531 private:
532 const ::std::string& _internal_name() const;
533 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
534 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
535
536 public:
537 // int32 num_copies = 3;
538 void clear_num_copies() ;
539 ::int32_t num_copies() const;
540 void set_num_copies(::int32_t value);
541
542 private:
543 ::int32_t _internal_num_copies() const;
544 void _internal_set_num_copies(::int32_t value);
545
546 public:
547 // int32 max_number_of_copies_per_bin = 4;
549 ::int32_t max_number_of_copies_per_bin() const;
550 void set_max_number_of_copies_per_bin(::int32_t value);
551
552 private:
553 ::int32_t _internal_max_number_of_copies_per_bin() const;
554 void _internal_set_max_number_of_copies_per_bin(::int32_t value);
555
556 public:
557 // double penalty_per_missing_copy = 6;
559 double penalty_per_missing_copy() const;
560 void set_penalty_per_missing_copy(double value);
561
562 private:
563 double _internal_penalty_per_missing_copy() const;
564 void _internal_set_penalty_per_missing_copy(double value);
565
566 public:
567 // int32 num_optional_copies = 5;
569 ::int32_t num_optional_copies() const;
570 void set_num_optional_copies(::int32_t value);
571
572 private:
573 ::int32_t _internal_num_optional_copies() const;
574 void _internal_set_num_optional_copies(::int32_t value);
575
576 public:
577 // @@protoc_insertion_point(class_scope:operations_research.packing.vbp.Item)
578 private:
579 class _Internal;
580 friend class ::google::protobuf::internal::TcParser;
581 static const ::google::protobuf::internal::TcParseTable<3, 6,
582 0, 49,
583 2>
584 _table_;
585
586 friend class ::google::protobuf::MessageLite;
587 friend class ::google::protobuf::Arena;
588 template <typename T>
589 friend class ::google::protobuf::Arena::InternalHelper;
590 using InternalArenaConstructable_ = void;
591 using DestructorSkippable_ = void;
592 struct Impl_ {
593 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
594 inline explicit Impl_(
595 ::google::protobuf::internal::InternalVisibility visibility,
596 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
597 inline explicit Impl_(
598 ::google::protobuf::internal::InternalVisibility visibility,
599 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
600 const Item& from_msg);
601 ::google::protobuf::internal::HasBits<1> _has_bits_;
602 ::google::protobuf::internal::CachedSize _cached_size_;
603 ::google::protobuf::RepeatedField<::int64_t> resource_usage_;
604 ::google::protobuf::internal::CachedSize _resource_usage_cached_byte_size_;
605 ::google::protobuf::internal::ArenaStringPtr name_;
606 ::int32_t num_copies_;
607 ::int32_t max_number_of_copies_per_bin_;
608 double penalty_per_missing_copy_;
609 ::int32_t num_optional_copies_;
610 PROTOBUF_TSAN_DECLARE_MEMBER
611 };
612 union { Impl_ _impl_; };
613 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
614};
616OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Item_class_data_;
617// -------------------------------------------------------------------
618
619class OR_PROTO_DLL VectorBinPackingSolution final : public ::google::protobuf::Message
620/* @@protoc_insertion_point(class_definition:operations_research.packing.vbp.VectorBinPackingSolution) */ {
621 public:
624
625#if defined(PROTOBUF_CUSTOM_VTABLE)
626 void operator delete(VectorBinPackingSolution* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
627 SharedDtor(*msg);
628 ::google::protobuf::internal::SizedDelete(msg, sizeof(VectorBinPackingSolution));
629 }
630#endif
631
632 template <typename = void>
633 explicit PROTOBUF_CONSTEXPR VectorBinPackingSolution(::google::protobuf::internal::ConstantInitialized);
634
636 inline VectorBinPackingSolution(VectorBinPackingSolution&& from) noexcept
637 : VectorBinPackingSolution(nullptr, ::std::move(from)) {}
638 inline VectorBinPackingSolution& operator=(const VectorBinPackingSolution& from) {
639 CopyFrom(from);
640 return *this;
641 }
643 if (this == &from) return *this;
644 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
645 InternalSwap(&from);
646 } else {
647 CopyFrom(from);
648 }
649 return *this;
650 }
651
652 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
653 ABSL_ATTRIBUTE_LIFETIME_BOUND {
654 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
655 }
656 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
657 ABSL_ATTRIBUTE_LIFETIME_BOUND {
658 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
659 }
661 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
662 return GetDescriptor();
663 }
664 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
665 return default_instance().GetMetadata().descriptor;
666 }
667 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
668 return default_instance().GetMetadata().reflection;
669 }
670 static const VectorBinPackingSolution& default_instance() {
671 return *reinterpret_cast<const VectorBinPackingSolution*>(
673 }
674 static constexpr int kIndexInFileMessages = 3;
675 friend void swap(VectorBinPackingSolution& a, VectorBinPackingSolution& b) { a.Swap(&b); }
676 inline void Swap(VectorBinPackingSolution* PROTOBUF_NONNULL other) {
677 if (other == this) return;
678 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
679 InternalSwap(other);
680 } else {
681 ::google::protobuf::internal::GenericSwap(this, other);
682 }
683 }
684 void UnsafeArenaSwap(VectorBinPackingSolution* PROTOBUF_NONNULL other) {
685 if (other == this) return;
686 ABSL_DCHECK(GetArena() == other->GetArena());
687 InternalSwap(other);
689
690 // implements Message ----------------------------------------------
691
692 VectorBinPackingSolution* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
693 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingSolution>(arena);
694 }
695 using ::google::protobuf::Message::CopyFrom;
697 using ::google::protobuf::Message::MergeFrom;
698 void MergeFrom(const VectorBinPackingSolution& from) { VectorBinPackingSolution::MergeImpl(*this, from); }
699
700 private:
701 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
702 const ::google::protobuf::MessageLite& from_msg);
703
704 public:
705 bool IsInitialized() const {
706 return true;
707 }
708 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
709 #if defined(PROTOBUF_CUSTOM_VTABLE)
710 private:
711 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
712 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
713 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
714 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
715
716 public:
717 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
718 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
719 ::uint8_t* PROTOBUF_NONNULL target,
720 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
721 return _InternalSerialize(*this, target, stream);
722 }
723 #else // PROTOBUF_CUSTOM_VTABLE
724 ::size_t ByteSizeLong() const final;
725 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
726 ::uint8_t* PROTOBUF_NONNULL target,
727 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
728 #endif // PROTOBUF_CUSTOM_VTABLE
729 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
730
731 private:
732 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
733 static void SharedDtor(MessageLite& self);
734 void InternalSwap(VectorBinPackingSolution* PROTOBUF_NONNULL other);
735 private:
736 template <typename T>
737 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
738 static ::absl::string_view FullMessageName() { return "operations_research.packing.vbp.VectorBinPackingSolution"; }
739
740 explicit VectorBinPackingSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
741 VectorBinPackingSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const VectorBinPackingSolution& from);
743 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, VectorBinPackingSolution&& from) noexcept
744 : VectorBinPackingSolution(arena) {
745 *this = ::std::move(from);
746 }
747 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
748 static void* PROTOBUF_NONNULL PlacementNew_(
749 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
750 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
751 static constexpr auto InternalNewImpl_();
752
753 public:
754 static constexpr auto InternalGenerateClassData_();
755
756 ::google::protobuf::Metadata GetMetadata() const;
757 // nested types ----------------------------------------------------
758
759 // accessors -------------------------------------------------------
760 enum : int {
761 kBinsFieldNumber = 2,
762 kSolverInfoFieldNumber = 1,
763 kObjectiveValueFieldNumber = 4,
764 kSolveTimeInSecondsFieldNumber = 5,
767 };
768 // repeated .operations_research.packing.vbp.VectorBinPackingOneBinInSolution bins = 2;
769 int bins_size() const;
770 private:
771 int _internal_bins_size() const;
772
773 public:
774 void clear_bins() ;
776 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL mutable_bins();
777
778 private:
779 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>& _internal_bins() const;
780 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL _internal_mutable_bins();
781 public:
782 const ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution& bins(int index) const;
784 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>& bins() const;
785 // string solver_info = 1;
786 void clear_solver_info() ;
787 const ::std::string& solver_info() const;
788 template <typename Arg_ = const ::std::string&, typename... Args_>
789 void set_solver_info(Arg_&& arg, Args_... args);
790 ::std::string* PROTOBUF_NONNULL mutable_solver_info();
791 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_solver_info();
792 void set_allocated_solver_info(::std::string* PROTOBUF_NULLABLE value);
794 private:
795 const ::std::string& _internal_solver_info() const;
796 PROTOBUF_ALWAYS_INLINE void _internal_set_solver_info(const ::std::string& value);
797 ::std::string* PROTOBUF_NONNULL _internal_mutable_solver_info();
798
799 public:
800 // double objective_value = 4;
801 void clear_objective_value() ;
802 double objective_value() const;
803 void set_objective_value(double value);
804
805 private:
806 double _internal_objective_value() const;
807 void _internal_set_objective_value(double value);
808
809 public:
810 // double solve_time_in_seconds = 5;
812 double solve_time_in_seconds() const;
813 void set_solve_time_in_seconds(double value);
814
815 private:
816 double _internal_solve_time_in_seconds() const;
817 void _internal_set_solve_time_in_seconds(double value);
818
819 public:
820 // double arc_flow_time_in_seconds = 6;
822 double arc_flow_time_in_seconds() const;
823 void set_arc_flow_time_in_seconds(double value);
824
825 private:
826 double _internal_arc_flow_time_in_seconds() const;
827 void _internal_set_arc_flow_time_in_seconds(double value);
828
829 public:
830 // .operations_research.packing.vbp.VectorBinPackingSolveStatus status = 3;
831 void clear_status() ;
834
835 private:
838
839 public:
840 // @@protoc_insertion_point(class_scope:operations_research.packing.vbp.VectorBinPackingSolution)
841 private:
842 class _Internal;
843 friend class ::google::protobuf::internal::TcParser;
844 static const ::google::protobuf::internal::TcParseTable<3, 6,
845 1, 76,
846 2>
847 _table_;
848
849 friend class ::google::protobuf::MessageLite;
850 friend class ::google::protobuf::Arena;
851 template <typename T>
852 friend class ::google::protobuf::Arena::InternalHelper;
853 using InternalArenaConstructable_ = void;
854 using DestructorSkippable_ = void;
855 struct Impl_ {
856 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
857 inline explicit Impl_(
858 ::google::protobuf::internal::InternalVisibility visibility,
859 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
860 inline explicit Impl_(
861 ::google::protobuf::internal::InternalVisibility visibility,
862 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
863 const VectorBinPackingSolution& from_msg);
864 ::google::protobuf::internal::HasBits<1> _has_bits_;
865 ::google::protobuf::internal::CachedSize _cached_size_;
866 ::google::protobuf::RepeatedPtrField< ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution > bins_;
867 ::google::protobuf::internal::ArenaStringPtr solver_info_;
868 double objective_value_;
869 double solve_time_in_seconds_;
870 double arc_flow_time_in_seconds_;
871 int status_;
872 PROTOBUF_TSAN_DECLARE_MEMBER
873 };
874 union { Impl_ _impl_; };
875 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
876};
877
878OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingSolution_class_data_;
879// -------------------------------------------------------------------
880
881class OR_PROTO_DLL VectorBinPackingProblem final : public ::google::protobuf::Message
882/* @@protoc_insertion_point(class_definition:operations_research.packing.vbp.VectorBinPackingProblem) */ {
883 public:
885 ~VectorBinPackingProblem() PROTOBUF_FINAL;
887#if defined(PROTOBUF_CUSTOM_VTABLE)
888 void operator delete(VectorBinPackingProblem* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
889 SharedDtor(*msg);
890 ::google::protobuf::internal::SizedDelete(msg, sizeof(VectorBinPackingProblem));
891 }
892#endif
893
894 template <typename = void>
895 explicit PROTOBUF_CONSTEXPR VectorBinPackingProblem(::google::protobuf::internal::ConstantInitialized);
896
897 inline VectorBinPackingProblem(const VectorBinPackingProblem& from) : VectorBinPackingProblem(nullptr, from) {}
898 inline VectorBinPackingProblem(VectorBinPackingProblem&& from) noexcept
899 : VectorBinPackingProblem(nullptr, ::std::move(from)) {}
901 CopyFrom(from);
902 return *this;
904 inline VectorBinPackingProblem& operator=(VectorBinPackingProblem&& from) noexcept {
905 if (this == &from) return *this;
906 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
907 InternalSwap(&from);
908 } else {
909 CopyFrom(from);
910 }
911 return *this;
912 }
913
914 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
915 ABSL_ATTRIBUTE_LIFETIME_BOUND {
916 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
917 }
918 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
919 ABSL_ATTRIBUTE_LIFETIME_BOUND {
920 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
921 }
922
923 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
924 return GetDescriptor();
925 }
926 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
927 return default_instance().GetMetadata().descriptor;
929 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
930 return default_instance().GetMetadata().reflection;
932 static const VectorBinPackingProblem& default_instance() {
933 return *reinterpret_cast<const VectorBinPackingProblem*>(
935 }
936 static constexpr int kIndexInFileMessages = 1;
938 inline void Swap(VectorBinPackingProblem* PROTOBUF_NONNULL other) {
939 if (other == this) return;
940 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
941 InternalSwap(other);
942 } else {
943 ::google::protobuf::internal::GenericSwap(this, other);
944 }
945 }
946 void UnsafeArenaSwap(VectorBinPackingProblem* PROTOBUF_NONNULL other) {
947 if (other == this) return;
948 ABSL_DCHECK(GetArena() == other->GetArena());
949 InternalSwap(other);
950 }
952 // implements Message ----------------------------------------------
953
954 VectorBinPackingProblem* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
955 return ::google::protobuf::Message::DefaultConstruct<VectorBinPackingProblem>(arena);
956 }
957 using ::google::protobuf::Message::CopyFrom;
958 void CopyFrom(const VectorBinPackingProblem& from);
959 using ::google::protobuf::Message::MergeFrom;
960 void MergeFrom(const VectorBinPackingProblem& from) { VectorBinPackingProblem::MergeImpl(*this, from); }
961
962 private:
963 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
964 const ::google::protobuf::MessageLite& from_msg);
966 public:
967 bool IsInitialized() const {
968 return true;
969 }
970 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
971 #if defined(PROTOBUF_CUSTOM_VTABLE)
972 private:
973 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
974 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
975 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
976 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
977
978 public:
979 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
980 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
981 ::uint8_t* PROTOBUF_NONNULL target,
982 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
983 return _InternalSerialize(*this, target, stream);
984 }
985 #else // PROTOBUF_CUSTOM_VTABLE
986 ::size_t ByteSizeLong() const final;
987 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
988 ::uint8_t* PROTOBUF_NONNULL target,
989 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
990 #endif // PROTOBUF_CUSTOM_VTABLE
991 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
992
993 private:
994 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
995 static void SharedDtor(MessageLite& self);
996 void InternalSwap(VectorBinPackingProblem* PROTOBUF_NONNULL other);
997 private:
998 template <typename T>
999 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1000 static ::absl::string_view FullMessageName() { return "operations_research.packing.vbp.VectorBinPackingProblem"; }
1001
1002 explicit VectorBinPackingProblem(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1003 VectorBinPackingProblem(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const VectorBinPackingProblem& from);
1005 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, VectorBinPackingProblem&& from) noexcept
1006 : VectorBinPackingProblem(arena) {
1007 *this = ::std::move(from);
1008 }
1009 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1010 static void* PROTOBUF_NONNULL PlacementNew_(
1011 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1012 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1013 static constexpr auto InternalNewImpl_();
1014
1015 public:
1016 static constexpr auto InternalGenerateClassData_();
1017
1018 ::google::protobuf::Metadata GetMetadata() const;
1019 // nested types ----------------------------------------------------
1020
1021 // accessors -------------------------------------------------------
1022 enum : int {
1023 kResourceCapacityFieldNumber = 2,
1024 kResourceNameFieldNumber = 3,
1025 kItemFieldNumber = 4,
1026 kNameFieldNumber = 1,
1027 kCostPerBinFieldNumber = 6,
1030 // repeated int64 resource_capacity = 2;
1032 private:
1033 int _internal_resource_capacity_size() const;
1034
1035 public:
1037 ::int64_t resource_capacity(int index) const;
1038 void set_resource_capacity(int index, ::int64_t value);
1039 void add_resource_capacity(::int64_t value);
1040 const ::google::protobuf::RepeatedField<::int64_t>& resource_capacity() const;
1041 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_resource_capacity();
1042
1043 private:
1044 const ::google::protobuf::RepeatedField<::int64_t>& _internal_resource_capacity() const;
1045 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_resource_capacity();
1046
1047 public:
1048 // repeated string resource_name = 3;
1049 int resource_name_size() const;
1050 private:
1051 int _internal_resource_name_size() const;
1052
1053 public:
1054 void clear_resource_name() ;
1055 const ::std::string& resource_name(int index) const;
1056 ::std::string* PROTOBUF_NONNULL mutable_resource_name(int index);
1057 template <typename Arg_ = const ::std::string&, typename... Args_>
1058 void set_resource_name(int index, Arg_&& value, Args_... args);
1059 ::std::string* PROTOBUF_NONNULL add_resource_name();
1060 template <typename Arg_ = const ::std::string&, typename... Args_>
1061 void add_resource_name(Arg_&& value, Args_... args);
1062 const ::google::protobuf::RepeatedPtrField<::std::string>& resource_name() const;
1063 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_resource_name();
1064
1065 private:
1066 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_resource_name() const;
1067 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_resource_name();
1068
1069 public:
1070 // repeated .operations_research.packing.vbp.Item item = 4;
1071 int item_size() const;
1072 private:
1073 int _internal_item_size() const;
1074
1075 public:
1076 void clear_item() ;
1077 ::operations_research::packing::vbp::Item* PROTOBUF_NONNULL mutable_item(int index);
1078 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL mutable_item();
1079
1080 private:
1081 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>& _internal_item() const;
1082 ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL _internal_mutable_item();
1083 public:
1084 const ::operations_research::packing::vbp::Item& item(int index) const;
1086 const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>& item() const;
1087 // string name = 1;
1088 void clear_name() ;
1089 const ::std::string& name() const;
1090 template <typename Arg_ = const ::std::string&, typename... Args_>
1091 void set_name(Arg_&& arg, Args_... args);
1092 ::std::string* PROTOBUF_NONNULL mutable_name();
1093 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
1094 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
1095
1096 private:
1097 const ::std::string& _internal_name() const;
1098 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
1099 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
1100
1101 public:
1102 // optional double cost_per_bin = 6;
1103 bool has_cost_per_bin() const;
1104 void clear_cost_per_bin() ;
1105 double cost_per_bin() const;
1106 void set_cost_per_bin(double value);
1107
1108 private:
1109 double _internal_cost_per_bin() const;
1110 void _internal_set_cost_per_bin(double value);
1111
1112 public:
1113 // int32 max_bins = 5;
1114 void clear_max_bins() ;
1115 ::int32_t max_bins() const;
1116 void set_max_bins(::int32_t value);
1117
1118 private:
1119 ::int32_t _internal_max_bins() const;
1120 void _internal_set_max_bins(::int32_t value);
1121
1122 public:
1123 // @@protoc_insertion_point(class_scope:operations_research.packing.vbp.VectorBinPackingProblem)
1124 private:
1125 class _Internal;
1126 friend class ::google::protobuf::internal::TcParser;
1127 static const ::google::protobuf::internal::TcParseTable<3, 6,
1128 1, 81,
1129 2>
1130 _table_;
1132 friend class ::google::protobuf::MessageLite;
1133 friend class ::google::protobuf::Arena;
1134 template <typename T>
1135 friend class ::google::protobuf::Arena::InternalHelper;
1136 using InternalArenaConstructable_ = void;
1137 using DestructorSkippable_ = void;
1138 struct Impl_ {
1139 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1140 inline explicit Impl_(
1141 ::google::protobuf::internal::InternalVisibility visibility,
1142 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1143 inline explicit Impl_(
1144 ::google::protobuf::internal::InternalVisibility visibility,
1145 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1146 const VectorBinPackingProblem& from_msg);
1147 ::google::protobuf::internal::HasBits<1> _has_bits_;
1148 ::google::protobuf::internal::CachedSize _cached_size_;
1149 ::google::protobuf::RepeatedField<::int64_t> resource_capacity_;
1150 ::google::protobuf::internal::CachedSize _resource_capacity_cached_byte_size_;
1151 ::google::protobuf::RepeatedPtrField<::std::string> resource_name_;
1152 ::google::protobuf::RepeatedPtrField< ::operations_research::packing::vbp::Item > item_;
1153 ::google::protobuf::internal::ArenaStringPtr name_;
1154 double cost_per_bin_;
1155 ::int32_t max_bins_;
1156 PROTOBUF_TSAN_DECLARE_MEMBER
1157 };
1158 union { Impl_ _impl_; };
1159 friend struct ::TableStruct_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto;
1160};
1161
1162OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull VectorBinPackingProblem_class_data_;
1164// ===================================================================
1165
1166
1167
1168
1169// ===================================================================
1170
1171
1172#ifdef __GNUC__
1173#pragma GCC diagnostic push
1174#pragma GCC diagnostic ignored "-Wstrict-aliasing"
1175#endif // __GNUC__
1176// -------------------------------------------------------------------
1177
1178// Item
1179
1180// string name = 1;
1181inline void Item::clear_name() {
1182 ::google::protobuf::internal::TSanWrite(&_impl_);
1183 _impl_.name_.ClearToEmpty();
1184 ClearHasBit(_impl_._has_bits_[0],
1185 0x00000002U);
1186}
1187inline const ::std::string& Item::name() const
1188 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1189 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.name)
1190 return _internal_name();
1191}
1192template <typename Arg_, typename... Args_>
1193PROTOBUF_ALWAYS_INLINE void Item::set_name(Arg_&& arg, Args_... args) {
1194 ::google::protobuf::internal::TSanWrite(&_impl_);
1195 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1196 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
1197 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.name)
1198}
1199inline ::std::string* PROTOBUF_NONNULL Item::mutable_name()
1200 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1201 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1202 ::std::string* _s = _internal_mutable_name();
1203 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.Item.name)
1204 return _s;
1205}
1206inline const ::std::string& Item::_internal_name() const {
1207 ::google::protobuf::internal::TSanRead(&_impl_);
1208 return _impl_.name_.Get();
1209}
1210inline void Item::_internal_set_name(const ::std::string& value) {
1211 ::google::protobuf::internal::TSanWrite(&_impl_);
1212 _impl_.name_.Set(value, GetArena());
1213}
1214inline ::std::string* PROTOBUF_NONNULL Item::_internal_mutable_name() {
1215 ::google::protobuf::internal::TSanWrite(&_impl_);
1216 return _impl_.name_.Mutable( GetArena());
1217}
1218inline ::std::string* PROTOBUF_NULLABLE Item::release_name() {
1219 ::google::protobuf::internal::TSanWrite(&_impl_);
1220 // @@protoc_insertion_point(field_release:operations_research.packing.vbp.Item.name)
1221 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
1222 return nullptr;
1223 }
1224 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
1225 auto* released = _impl_.name_.Release();
1226 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1227 _impl_.name_.Set("", GetArena());
1228 }
1229 return released;
1230}
1231inline void Item::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
1232 ::google::protobuf::internal::TSanWrite(&_impl_);
1233 if (value != nullptr) {
1234 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1235 } else {
1236 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
1237 }
1238 _impl_.name_.SetAllocated(value, GetArena());
1239 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
1240 _impl_.name_.Set("", GetArena());
1241 }
1242 // @@protoc_insertion_point(field_set_allocated:operations_research.packing.vbp.Item.name)
1243}
1244
1245// repeated int64 resource_usage = 2;
1246inline int Item::_internal_resource_usage_size() const {
1247 return _internal_resource_usage().size();
1248}
1249inline int Item::resource_usage_size() const {
1250 return _internal_resource_usage_size();
1251}
1252inline void Item::clear_resource_usage() {
1253 ::google::protobuf::internal::TSanWrite(&_impl_);
1254 _impl_.resource_usage_.Clear();
1255 ClearHasBitForRepeated(_impl_._has_bits_[0],
1256 0x00000001U);
1258inline ::int64_t Item::resource_usage(int index) const {
1259 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.resource_usage)
1260 return _internal_resource_usage().Get(index);
1261}
1262inline void Item::set_resource_usage(int index, ::int64_t value) {
1263 _internal_mutable_resource_usage()->Set(index, value);
1264 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.resource_usage)
1265}
1266inline void Item::add_resource_usage(::int64_t value) {
1267 ::google::protobuf::internal::TSanWrite(&_impl_);
1268 _internal_mutable_resource_usage()->Add(value);
1269 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1270 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.Item.resource_usage)
1271}
1272inline const ::google::protobuf::RepeatedField<::int64_t>& Item::resource_usage() const
1273 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1274 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.Item.resource_usage)
1275 return _internal_resource_usage();
1276}
1277inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL Item::mutable_resource_usage()
1278 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1279 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1280 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.Item.resource_usage)
1281 ::google::protobuf::internal::TSanWrite(&_impl_);
1282 return _internal_mutable_resource_usage();
1283}
1284inline const ::google::protobuf::RepeatedField<::int64_t>&
1285Item::_internal_resource_usage() const {
1286 ::google::protobuf::internal::TSanRead(&_impl_);
1287 return _impl_.resource_usage_;
1288}
1289inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
1290Item::_internal_mutable_resource_usage() {
1291 ::google::protobuf::internal::TSanRead(&_impl_);
1292 return &_impl_.resource_usage_;
1293}
1294
1295// int32 num_copies = 3;
1296inline void Item::clear_num_copies() {
1297 ::google::protobuf::internal::TSanWrite(&_impl_);
1298 _impl_.num_copies_ = 0;
1299 ClearHasBit(_impl_._has_bits_[0],
1300 0x00000004U);
1301}
1302inline ::int32_t Item::num_copies() const {
1303 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.num_copies)
1304 return _internal_num_copies();
1305}
1306inline void Item::set_num_copies(::int32_t value) {
1307 _internal_set_num_copies(value);
1308 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
1309 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.num_copies)
1311inline ::int32_t Item::_internal_num_copies() const {
1312 ::google::protobuf::internal::TSanRead(&_impl_);
1313 return _impl_.num_copies_;
1315inline void Item::_internal_set_num_copies(::int32_t value) {
1316 ::google::protobuf::internal::TSanWrite(&_impl_);
1317 _impl_.num_copies_ = value;
1318}
1319
1320// int32 num_optional_copies = 5;
1321inline void Item::clear_num_optional_copies() {
1322 ::google::protobuf::internal::TSanWrite(&_impl_);
1323 _impl_.num_optional_copies_ = 0;
1324 ClearHasBit(_impl_._has_bits_[0],
1325 0x00000020U);
1326}
1327inline ::int32_t Item::num_optional_copies() const {
1328 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.num_optional_copies)
1329 return _internal_num_optional_copies();
1330}
1331inline void Item::set_num_optional_copies(::int32_t value) {
1332 _internal_set_num_optional_copies(value);
1333 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
1334 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.num_optional_copies)
1336inline ::int32_t Item::_internal_num_optional_copies() const {
1337 ::google::protobuf::internal::TSanRead(&_impl_);
1338 return _impl_.num_optional_copies_;
1340inline void Item::_internal_set_num_optional_copies(::int32_t value) {
1341 ::google::protobuf::internal::TSanWrite(&_impl_);
1342 _impl_.num_optional_copies_ = value;
1343}
1344
1345// int32 max_number_of_copies_per_bin = 4;
1347 ::google::protobuf::internal::TSanWrite(&_impl_);
1348 _impl_.max_number_of_copies_per_bin_ = 0;
1349 ClearHasBit(_impl_._has_bits_[0],
1350 0x00000008U);
1351}
1352inline ::int32_t Item::max_number_of_copies_per_bin() const {
1353 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.max_number_of_copies_per_bin)
1354 return _internal_max_number_of_copies_per_bin();
1355}
1356inline void Item::set_max_number_of_copies_per_bin(::int32_t value) {
1357 _internal_set_max_number_of_copies_per_bin(value);
1358 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
1359 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.max_number_of_copies_per_bin)
1361inline ::int32_t Item::_internal_max_number_of_copies_per_bin() const {
1362 ::google::protobuf::internal::TSanRead(&_impl_);
1363 return _impl_.max_number_of_copies_per_bin_;
1365inline void Item::_internal_set_max_number_of_copies_per_bin(::int32_t value) {
1366 ::google::protobuf::internal::TSanWrite(&_impl_);
1367 _impl_.max_number_of_copies_per_bin_ = value;
1368}
1369
1370// double penalty_per_missing_copy = 6;
1372 ::google::protobuf::internal::TSanWrite(&_impl_);
1373 _impl_.penalty_per_missing_copy_ = 0;
1374 ClearHasBit(_impl_._has_bits_[0],
1375 0x00000010U);
1376}
1377inline double Item::penalty_per_missing_copy() const {
1378 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.Item.penalty_per_missing_copy)
1379 return _internal_penalty_per_missing_copy();
1380}
1381inline void Item::set_penalty_per_missing_copy(double value) {
1382 _internal_set_penalty_per_missing_copy(value);
1383 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
1384 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.Item.penalty_per_missing_copy)
1386inline double Item::_internal_penalty_per_missing_copy() const {
1387 ::google::protobuf::internal::TSanRead(&_impl_);
1388 return _impl_.penalty_per_missing_copy_;
1390inline void Item::_internal_set_penalty_per_missing_copy(double value) {
1391 ::google::protobuf::internal::TSanWrite(&_impl_);
1392 _impl_.penalty_per_missing_copy_ = value;
1393}
1394
1395// -------------------------------------------------------------------
1396
1397// VectorBinPackingProblem
1398
1399// string name = 1;
1401 ::google::protobuf::internal::TSanWrite(&_impl_);
1402 _impl_.name_.ClearToEmpty();
1403 ClearHasBit(_impl_._has_bits_[0],
1404 0x00000008U);
1405}
1406inline const ::std::string& VectorBinPackingProblem::name() const
1407 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1408 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.name)
1409 return _internal_name();
1410}
1411template <typename Arg_, typename... Args_>
1412PROTOBUF_ALWAYS_INLINE void VectorBinPackingProblem::set_name(Arg_&& arg, Args_... args) {
1413 ::google::protobuf::internal::TSanWrite(&_impl_);
1414 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
1415 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
1416 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingProblem.name)
1417}
1418inline ::std::string* PROTOBUF_NONNULL VectorBinPackingProblem::mutable_name()
1419 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1420 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
1421 ::std::string* _s = _internal_mutable_name();
1422 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.VectorBinPackingProblem.name)
1423 return _s;
1424}
1425inline const ::std::string& VectorBinPackingProblem::_internal_name() const {
1426 ::google::protobuf::internal::TSanRead(&_impl_);
1427 return _impl_.name_.Get();
1428}
1429inline void VectorBinPackingProblem::_internal_set_name(const ::std::string& value) {
1430 ::google::protobuf::internal::TSanWrite(&_impl_);
1431 _impl_.name_.Set(value, GetArena());
1432}
1433inline ::std::string* PROTOBUF_NONNULL VectorBinPackingProblem::_internal_mutable_name() {
1434 ::google::protobuf::internal::TSanWrite(&_impl_);
1435 return _impl_.name_.Mutable( GetArena());
1436}
1437inline ::std::string* PROTOBUF_NULLABLE VectorBinPackingProblem::release_name() {
1438 ::google::protobuf::internal::TSanWrite(&_impl_);
1439 // @@protoc_insertion_point(field_release:operations_research.packing.vbp.VectorBinPackingProblem.name)
1440 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
1441 return nullptr;
1442 }
1443 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
1444 auto* released = _impl_.name_.Release();
1445 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1446 _impl_.name_.Set("", GetArena());
1447 }
1448 return released;
1449}
1450inline void VectorBinPackingProblem::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
1451 ::google::protobuf::internal::TSanWrite(&_impl_);
1452 if (value != nullptr) {
1453 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
1454 } else {
1455 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
1456 }
1457 _impl_.name_.SetAllocated(value, GetArena());
1458 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
1459 _impl_.name_.Set("", GetArena());
1460 }
1461 // @@protoc_insertion_point(field_set_allocated:operations_research.packing.vbp.VectorBinPackingProblem.name)
1462}
1463
1464// repeated int64 resource_capacity = 2;
1465inline int VectorBinPackingProblem::_internal_resource_capacity_size() const {
1466 return _internal_resource_capacity().size();
1467}
1469 return _internal_resource_capacity_size();
1470}
1472 ::google::protobuf::internal::TSanWrite(&_impl_);
1473 _impl_.resource_capacity_.Clear();
1474 ClearHasBitForRepeated(_impl_._has_bits_[0],
1475 0x00000001U);
1476}
1477inline ::int64_t VectorBinPackingProblem::resource_capacity(int index) const {
1478 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.resource_capacity)
1479 return _internal_resource_capacity().Get(index);
1481inline void VectorBinPackingProblem::set_resource_capacity(int index, ::int64_t value) {
1482 _internal_mutable_resource_capacity()->Set(index, value);
1483 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingProblem.resource_capacity)
1484}
1485inline void VectorBinPackingProblem::add_resource_capacity(::int64_t value) {
1486 ::google::protobuf::internal::TSanWrite(&_impl_);
1487 _internal_mutable_resource_capacity()->Add(value);
1488 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1489 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingProblem.resource_capacity)
1491inline const ::google::protobuf::RepeatedField<::int64_t>& VectorBinPackingProblem::resource_capacity() const
1492 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1493 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingProblem.resource_capacity)
1494 return _internal_resource_capacity();
1495}
1496inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL VectorBinPackingProblem::mutable_resource_capacity()
1497 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1498 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1499 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingProblem.resource_capacity)
1500 ::google::protobuf::internal::TSanWrite(&_impl_);
1501 return _internal_mutable_resource_capacity();
1502}
1503inline const ::google::protobuf::RepeatedField<::int64_t>&
1504VectorBinPackingProblem::_internal_resource_capacity() const {
1505 ::google::protobuf::internal::TSanRead(&_impl_);
1506 return _impl_.resource_capacity_;
1507}
1508inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
1509VectorBinPackingProblem::_internal_mutable_resource_capacity() {
1510 ::google::protobuf::internal::TSanRead(&_impl_);
1511 return &_impl_.resource_capacity_;
1512}
1513
1514// repeated string resource_name = 3;
1515inline int VectorBinPackingProblem::_internal_resource_name_size() const {
1516 return _internal_resource_name().size();
1517}
1519 return _internal_resource_name_size();
1520}
1522 ::google::protobuf::internal::TSanWrite(&_impl_);
1523 _impl_.resource_name_.Clear();
1524 ClearHasBitForRepeated(_impl_._has_bits_[0],
1525 0x00000002U);
1526}
1527inline ::std::string* PROTOBUF_NONNULL VectorBinPackingProblem::add_resource_name()
1528 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1529 ::google::protobuf::internal::TSanWrite(&_impl_);
1530 ::std::string* _s =
1531 _internal_mutable_resource_name()->InternalAddWithArena(
1532 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
1533 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1534 // @@protoc_insertion_point(field_add_mutable:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1535 return _s;
1537inline const ::std::string& VectorBinPackingProblem::resource_name(int index) const
1538 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1539 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1540 return _internal_resource_name().Get(index);
1541}
1542inline ::std::string* PROTOBUF_NONNULL VectorBinPackingProblem::mutable_resource_name(int index)
1543 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1544 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1545 return _internal_mutable_resource_name()->Mutable(index);
1547template <typename Arg_, typename... Args_>
1548inline void VectorBinPackingProblem::set_resource_name(int index, Arg_&& value, Args_... args) {
1549 ::google::protobuf::internal::AssignToString(*_internal_mutable_resource_name()->Mutable(index), ::std::forward<Arg_>(value),
1550 args... );
1551 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1552}
1553template <typename Arg_, typename... Args_>
1554inline void VectorBinPackingProblem::add_resource_name(Arg_&& value, Args_... args) {
1555 ::google::protobuf::internal::TSanWrite(&_impl_);
1556 ::google::protobuf::internal::AddToRepeatedPtrField(
1557 ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
1558 *_internal_mutable_resource_name(), ::std::forward<Arg_>(value),
1559 args... );
1560 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1561 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1562}
1563inline const ::google::protobuf::RepeatedPtrField<::std::string>& VectorBinPackingProblem::resource_name()
1564 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1565 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1566 return _internal_resource_name();
1567}
1568inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
1569VectorBinPackingProblem::mutable_resource_name() ABSL_ATTRIBUTE_LIFETIME_BOUND {
1570 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1571 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingProblem.resource_name)
1572 ::google::protobuf::internal::TSanWrite(&_impl_);
1573 return _internal_mutable_resource_name();
1574}
1575inline const ::google::protobuf::RepeatedPtrField<::std::string>&
1576VectorBinPackingProblem::_internal_resource_name() const {
1577 ::google::protobuf::internal::TSanRead(&_impl_);
1578 return _impl_.resource_name_;
1579}
1580inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
1581VectorBinPackingProblem::_internal_mutable_resource_name() {
1582 ::google::protobuf::internal::TSanRead(&_impl_);
1583 return &_impl_.resource_name_;
1584}
1585
1586// repeated .operations_research.packing.vbp.Item item = 4;
1587inline int VectorBinPackingProblem::_internal_item_size() const {
1588 return _internal_item().size();
1589}
1590inline int VectorBinPackingProblem::item_size() const {
1591 return _internal_item_size();
1592}
1594 ::google::protobuf::internal::TSanWrite(&_impl_);
1595 _impl_.item_.Clear();
1596 ClearHasBitForRepeated(_impl_._has_bits_[0],
1597 0x00000004U);
1598}
1599inline ::operations_research::packing::vbp::Item* PROTOBUF_NONNULL VectorBinPackingProblem::mutable_item(int index)
1600 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1601 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.VectorBinPackingProblem.item)
1602 return _internal_mutable_item()->Mutable(index);
1603}
1604inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL VectorBinPackingProblem::mutable_item()
1605 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1606 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
1607 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingProblem.item)
1608 ::google::protobuf::internal::TSanWrite(&_impl_);
1609 return _internal_mutable_item();
1610}
1611inline const ::operations_research::packing::vbp::Item& VectorBinPackingProblem::item(int index) const
1612 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1613 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.item)
1614 return _internal_item().Get(index);
1615}
1616inline ::operations_research::packing::vbp::Item* PROTOBUF_NONNULL VectorBinPackingProblem::add_item()
1617 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1618 ::google::protobuf::internal::TSanWrite(&_impl_);
1620 _internal_mutable_item()->InternalAddWithArena(
1621 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
1622 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
1623 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingProblem.item)
1624 return _add;
1626inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>& VectorBinPackingProblem::item() const
1627 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1628 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingProblem.item)
1629 return _internal_item();
1630}
1631inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>&
1632VectorBinPackingProblem::_internal_item() const {
1633 ::google::protobuf::internal::TSanRead(&_impl_);
1634 return _impl_.item_;
1636inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item>* PROTOBUF_NONNULL
1637VectorBinPackingProblem::_internal_mutable_item() {
1638 ::google::protobuf::internal::TSanRead(&_impl_);
1639 return &_impl_.item_;
1640}
1641
1642// int32 max_bins = 5;
1644 ::google::protobuf::internal::TSanWrite(&_impl_);
1645 _impl_.max_bins_ = 0;
1646 ClearHasBit(_impl_._has_bits_[0],
1647 0x00000020U);
1648}
1649inline ::int32_t VectorBinPackingProblem::max_bins() const {
1650 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.max_bins)
1651 return _internal_max_bins();
1653inline void VectorBinPackingProblem::set_max_bins(::int32_t value) {
1654 _internal_set_max_bins(value);
1655 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
1656 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingProblem.max_bins)
1657}
1658inline ::int32_t VectorBinPackingProblem::_internal_max_bins() const {
1659 ::google::protobuf::internal::TSanRead(&_impl_);
1660 return _impl_.max_bins_;
1661}
1662inline void VectorBinPackingProblem::_internal_set_max_bins(::int32_t value) {
1663 ::google::protobuf::internal::TSanWrite(&_impl_);
1664 _impl_.max_bins_ = value;
1665}
1666
1667// optional double cost_per_bin = 6;
1669 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000010U);
1670 return value;
1671}
1673 ::google::protobuf::internal::TSanWrite(&_impl_);
1674 _impl_.cost_per_bin_ = 0;
1675 ClearHasBit(_impl_._has_bits_[0],
1676 0x00000010U);
1678inline double VectorBinPackingProblem::cost_per_bin() const {
1679 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingProblem.cost_per_bin)
1680 return _internal_cost_per_bin();
1682inline void VectorBinPackingProblem::set_cost_per_bin(double value) {
1683 _internal_set_cost_per_bin(value);
1684 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
1685 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingProblem.cost_per_bin)
1686}
1687inline double VectorBinPackingProblem::_internal_cost_per_bin() const {
1688 ::google::protobuf::internal::TSanRead(&_impl_);
1689 return _impl_.cost_per_bin_;
1690}
1691inline void VectorBinPackingProblem::_internal_set_cost_per_bin(double value) {
1692 ::google::protobuf::internal::TSanWrite(&_impl_);
1693 _impl_.cost_per_bin_ = value;
1694}
1695
1696// -------------------------------------------------------------------
1697
1698// VectorBinPackingOneBinInSolution
1699
1700// repeated int32 item_indices = 1;
1701inline int VectorBinPackingOneBinInSolution::_internal_item_indices_size() const {
1702 return _internal_item_indices().size();
1703}
1705 return _internal_item_indices_size();
1706}
1708 ::google::protobuf::internal::TSanWrite(&_impl_);
1709 _impl_.item_indices_.Clear();
1710 ClearHasBitForRepeated(_impl_._has_bits_[0],
1711 0x00000001U);
1712}
1713inline ::int32_t VectorBinPackingOneBinInSolution::item_indices(int index) const {
1714 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_indices)
1715 return _internal_item_indices().Get(index);
1716}
1717inline void VectorBinPackingOneBinInSolution::set_item_indices(int index, ::int32_t value) {
1718 _internal_mutable_item_indices()->Set(index, value);
1719 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_indices)
1720}
1721inline void VectorBinPackingOneBinInSolution::add_item_indices(::int32_t value) {
1722 ::google::protobuf::internal::TSanWrite(&_impl_);
1723 _internal_mutable_item_indices()->Add(value);
1724 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1725 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_indices)
1726}
1727inline const ::google::protobuf::RepeatedField<::int32_t>& VectorBinPackingOneBinInSolution::item_indices() const
1728 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1729 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_indices)
1730 return _internal_item_indices();
1732inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL VectorBinPackingOneBinInSolution::mutable_item_indices()
1733 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1734 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1735 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_indices)
1736 ::google::protobuf::internal::TSanWrite(&_impl_);
1737 return _internal_mutable_item_indices();
1738}
1739inline const ::google::protobuf::RepeatedField<::int32_t>&
1740VectorBinPackingOneBinInSolution::_internal_item_indices() const {
1741 ::google::protobuf::internal::TSanRead(&_impl_);
1742 return _impl_.item_indices_;
1743}
1744inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL
1745VectorBinPackingOneBinInSolution::_internal_mutable_item_indices() {
1746 ::google::protobuf::internal::TSanRead(&_impl_);
1747 return &_impl_.item_indices_;
1748}
1749
1750// repeated int32 item_copies = 2;
1751inline int VectorBinPackingOneBinInSolution::_internal_item_copies_size() const {
1752 return _internal_item_copies().size();
1753}
1755 return _internal_item_copies_size();
1756}
1758 ::google::protobuf::internal::TSanWrite(&_impl_);
1759 _impl_.item_copies_.Clear();
1760 ClearHasBitForRepeated(_impl_._has_bits_[0],
1761 0x00000002U);
1762}
1763inline ::int32_t VectorBinPackingOneBinInSolution::item_copies(int index) const {
1764 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_copies)
1765 return _internal_item_copies().Get(index);
1766}
1767inline void VectorBinPackingOneBinInSolution::set_item_copies(int index, ::int32_t value) {
1768 _internal_mutable_item_copies()->Set(index, value);
1769 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_copies)
1770}
1771inline void VectorBinPackingOneBinInSolution::add_item_copies(::int32_t value) {
1772 ::google::protobuf::internal::TSanWrite(&_impl_);
1773 _internal_mutable_item_copies()->Add(value);
1774 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1775 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_copies)
1776}
1777inline const ::google::protobuf::RepeatedField<::int32_t>& VectorBinPackingOneBinInSolution::item_copies() const
1778 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1779 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_copies)
1780 return _internal_item_copies();
1782inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL VectorBinPackingOneBinInSolution::mutable_item_copies()
1783 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1784 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1785 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingOneBinInSolution.item_copies)
1786 ::google::protobuf::internal::TSanWrite(&_impl_);
1787 return _internal_mutable_item_copies();
1788}
1789inline const ::google::protobuf::RepeatedField<::int32_t>&
1790VectorBinPackingOneBinInSolution::_internal_item_copies() const {
1791 ::google::protobuf::internal::TSanRead(&_impl_);
1792 return _impl_.item_copies_;
1793}
1794inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL
1795VectorBinPackingOneBinInSolution::_internal_mutable_item_copies() {
1796 ::google::protobuf::internal::TSanRead(&_impl_);
1797 return &_impl_.item_copies_;
1798}
1799
1800// -------------------------------------------------------------------
1801
1802// VectorBinPackingSolution
1803
1804// string solver_info = 1;
1806 ::google::protobuf::internal::TSanWrite(&_impl_);
1807 _impl_.solver_info_.ClearToEmpty();
1808 ClearHasBit(_impl_._has_bits_[0],
1809 0x00000002U);
1810}
1811inline const ::std::string& VectorBinPackingSolution::solver_info() const
1812 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1813 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.solver_info)
1814 return _internal_solver_info();
1815}
1816template <typename Arg_, typename... Args_>
1817PROTOBUF_ALWAYS_INLINE void VectorBinPackingSolution::set_solver_info(Arg_&& arg, Args_... args) {
1818 ::google::protobuf::internal::TSanWrite(&_impl_);
1819 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1820 _impl_.solver_info_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
1821 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingSolution.solver_info)
1823inline ::std::string* PROTOBUF_NONNULL VectorBinPackingSolution::mutable_solver_info()
1824 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1825 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1826 ::std::string* _s = _internal_mutable_solver_info();
1827 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.VectorBinPackingSolution.solver_info)
1828 return _s;
1829}
1830inline const ::std::string& VectorBinPackingSolution::_internal_solver_info() const {
1831 ::google::protobuf::internal::TSanRead(&_impl_);
1832 return _impl_.solver_info_.Get();
1833}
1834inline void VectorBinPackingSolution::_internal_set_solver_info(const ::std::string& value) {
1835 ::google::protobuf::internal::TSanWrite(&_impl_);
1836 _impl_.solver_info_.Set(value, GetArena());
1837}
1838inline ::std::string* PROTOBUF_NONNULL VectorBinPackingSolution::_internal_mutable_solver_info() {
1839 ::google::protobuf::internal::TSanWrite(&_impl_);
1840 return _impl_.solver_info_.Mutable( GetArena());
1841}
1842inline ::std::string* PROTOBUF_NULLABLE VectorBinPackingSolution::release_solver_info() {
1843 ::google::protobuf::internal::TSanWrite(&_impl_);
1844 // @@protoc_insertion_point(field_release:operations_research.packing.vbp.VectorBinPackingSolution.solver_info)
1845 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
1846 return nullptr;
1847 }
1848 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
1849 auto* released = _impl_.solver_info_.Release();
1850 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
1851 _impl_.solver_info_.Set("", GetArena());
1852 }
1853 return released;
1854}
1855inline void VectorBinPackingSolution::set_allocated_solver_info(::std::string* PROTOBUF_NULLABLE value) {
1856 ::google::protobuf::internal::TSanWrite(&_impl_);
1857 if (value != nullptr) {
1858 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1859 } else {
1860 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
1861 }
1862 _impl_.solver_info_.SetAllocated(value, GetArena());
1863 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.solver_info_.IsDefault()) {
1864 _impl_.solver_info_.Set("", GetArena());
1865 }
1866 // @@protoc_insertion_point(field_set_allocated:operations_research.packing.vbp.VectorBinPackingSolution.solver_info)
1867}
1868
1869// repeated .operations_research.packing.vbp.VectorBinPackingOneBinInSolution bins = 2;
1870inline int VectorBinPackingSolution::_internal_bins_size() const {
1871 return _internal_bins().size();
1872}
1873inline int VectorBinPackingSolution::bins_size() const {
1874 return _internal_bins_size();
1875}
1877 ::google::protobuf::internal::TSanWrite(&_impl_);
1878 _impl_.bins_.Clear();
1879 ClearHasBitForRepeated(_impl_._has_bits_[0],
1880 0x00000001U);
1881}
1882inline ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL VectorBinPackingSolution::mutable_bins(int index)
1883 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1884 // @@protoc_insertion_point(field_mutable:operations_research.packing.vbp.VectorBinPackingSolution.bins)
1885 return _internal_mutable_bins()->Mutable(index);
1886}
1887inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL VectorBinPackingSolution::mutable_bins()
1888 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1889 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1890 // @@protoc_insertion_point(field_mutable_list:operations_research.packing.vbp.VectorBinPackingSolution.bins)
1891 ::google::protobuf::internal::TSanWrite(&_impl_);
1892 return _internal_mutable_bins();
1894inline const ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution& VectorBinPackingSolution::bins(int index) const
1895 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1896 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.bins)
1897 return _internal_bins().Get(index);
1899inline ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution* PROTOBUF_NONNULL VectorBinPackingSolution::add_bins()
1900 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1901 ::google::protobuf::internal::TSanWrite(&_impl_);
1903 _internal_mutable_bins()->InternalAddWithArena(
1904 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
1905 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1906 // @@protoc_insertion_point(field_add:operations_research.packing.vbp.VectorBinPackingSolution.bins)
1907 return _add;
1908}
1909inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>& VectorBinPackingSolution::bins() const
1910 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1911 // @@protoc_insertion_point(field_list:operations_research.packing.vbp.VectorBinPackingSolution.bins)
1912 return _internal_bins();
1913}
1914inline const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>&
1915VectorBinPackingSolution::_internal_bins() const {
1916 ::google::protobuf::internal::TSanRead(&_impl_);
1917 return _impl_.bins_;
1918}
1919inline ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution>* PROTOBUF_NONNULL
1920VectorBinPackingSolution::_internal_mutable_bins() {
1921 ::google::protobuf::internal::TSanRead(&_impl_);
1922 return &_impl_.bins_;
1923}
1924
1925// .operations_research.packing.vbp.VectorBinPackingSolveStatus status = 3;
1927 ::google::protobuf::internal::TSanWrite(&_impl_);
1928 _impl_.status_ = 0;
1929 ClearHasBit(_impl_._has_bits_[0],
1930 0x00000020U);
1931}
1932inline ::operations_research::packing::vbp::VectorBinPackingSolveStatus VectorBinPackingSolution::status() const {
1933 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.status)
1934 return _internal_status();
1935}
1937 _internal_set_status(value);
1938 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
1939 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingSolution.status)
1940}
1941inline ::operations_research::packing::vbp::VectorBinPackingSolveStatus VectorBinPackingSolution::_internal_status() const {
1942 ::google::protobuf::internal::TSanRead(&_impl_);
1944}
1945inline void VectorBinPackingSolution::_internal_set_status(::operations_research::packing::vbp::VectorBinPackingSolveStatus value) {
1946 ::google::protobuf::internal::TSanWrite(&_impl_);
1947 _impl_.status_ = value;
1948}
1949
1950// double objective_value = 4;
1952 ::google::protobuf::internal::TSanWrite(&_impl_);
1953 _impl_.objective_value_ = 0;
1954 ClearHasBit(_impl_._has_bits_[0],
1955 0x00000004U);
1956}
1957inline double VectorBinPackingSolution::objective_value() const {
1958 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.objective_value)
1959 return _internal_objective_value();
1960}
1961inline void VectorBinPackingSolution::set_objective_value(double value) {
1962 _internal_set_objective_value(value);
1963 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
1964 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingSolution.objective_value)
1965}
1966inline double VectorBinPackingSolution::_internal_objective_value() const {
1967 ::google::protobuf::internal::TSanRead(&_impl_);
1968 return _impl_.objective_value_;
1969}
1970inline void VectorBinPackingSolution::_internal_set_objective_value(double value) {
1971 ::google::protobuf::internal::TSanWrite(&_impl_);
1972 _impl_.objective_value_ = value;
1973}
1974
1975// double solve_time_in_seconds = 5;
1977 ::google::protobuf::internal::TSanWrite(&_impl_);
1978 _impl_.solve_time_in_seconds_ = 0;
1979 ClearHasBit(_impl_._has_bits_[0],
1980 0x00000008U);
1981}
1983 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.solve_time_in_seconds)
1984 return _internal_solve_time_in_seconds();
1985}
1987 _internal_set_solve_time_in_seconds(value);
1988 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
1989 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingSolution.solve_time_in_seconds)
1990}
1991inline double VectorBinPackingSolution::_internal_solve_time_in_seconds() const {
1992 ::google::protobuf::internal::TSanRead(&_impl_);
1993 return _impl_.solve_time_in_seconds_;
1994}
1995inline void VectorBinPackingSolution::_internal_set_solve_time_in_seconds(double value) {
1996 ::google::protobuf::internal::TSanWrite(&_impl_);
1997 _impl_.solve_time_in_seconds_ = value;
1998}
1999
2000// double arc_flow_time_in_seconds = 6;
2002 ::google::protobuf::internal::TSanWrite(&_impl_);
2003 _impl_.arc_flow_time_in_seconds_ = 0;
2004 ClearHasBit(_impl_._has_bits_[0],
2005 0x00000010U);
2006}
2008 // @@protoc_insertion_point(field_get:operations_research.packing.vbp.VectorBinPackingSolution.arc_flow_time_in_seconds)
2009 return _internal_arc_flow_time_in_seconds();
2010}
2012 _internal_set_arc_flow_time_in_seconds(value);
2013 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
2014 // @@protoc_insertion_point(field_set:operations_research.packing.vbp.VectorBinPackingSolution.arc_flow_time_in_seconds)
2015}
2016inline double VectorBinPackingSolution::_internal_arc_flow_time_in_seconds() const {
2017 ::google::protobuf::internal::TSanRead(&_impl_);
2018 return _impl_.arc_flow_time_in_seconds_;
2019}
2020inline void VectorBinPackingSolution::_internal_set_arc_flow_time_in_seconds(double value) {
2021 ::google::protobuf::internal::TSanWrite(&_impl_);
2022 _impl_.arc_flow_time_in_seconds_ = value;
2023}
2024
2025#ifdef __GNUC__
2026#pragma GCC diagnostic pop
2027#endif // __GNUC__
2028
2029// @@protoc_insertion_point(namespace_scope)
2030} // namespace vbp
2031} // namespace packing
2032} // namespace operations_research
2033
2034
2035namespace google {
2036namespace protobuf {
2037
2038template <>
2039struct is_proto_enum<::operations_research::packing::vbp::VectorBinPackingSolveStatus> : std::true_type {};
2040template <>
2042 return ::operations_research::packing::vbp::VectorBinPackingSolveStatus_descriptor();
2043}
2044
2045} // namespace protobuf
2046} // namespace google
2047
2048// @@protoc_insertion_point(global_scope)
2049
2050#include "google/protobuf/port_undef.inc"
2051
2052#endif // ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto_2epb_2eh
friend class ::google::protobuf::MessageLite
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void set_name(Arg_ &&arg, Args_... args)
::std::string *PROTOBUF_NULLABLE release_name()
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void set_resource_usage(int index, ::int64_t value)
const ::google::protobuf::RepeatedField<::int64_t > & resource_usage() const
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_resource_usage()
PROTOBUF_CONSTEXPR Item(::google::protobuf::internal::ConstantInitialized)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::std::string *PROTOBUF_NONNULL mutable_name()
void Swap(Item *PROTOBUF_NONNULL other)
PROTOBUF_CONSTEXPR VectorBinPackingOneBinInSolution(::google::protobuf::internal::ConstantInitialized)
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
::google::protobuf::RepeatedField<::int32_t > *PROTOBUF_NONNULL mutable_item_indices()
::google::protobuf::RepeatedField<::int32_t > *PROTOBUF_NONNULL mutable_item_copies()
const ::google::protobuf::RepeatedField<::int32_t > & item_indices() const
VectorBinPackingOneBinInSolution & operator=(const VectorBinPackingOneBinInSolution &from)
VectorBinPackingOneBinInSolution(const VectorBinPackingOneBinInSolution &from)
void Swap(VectorBinPackingProblem *PROTOBUF_NONNULL other)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::std::string *PROTOBUF_NONNULL mutable_resource_name(int index)
::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item > *PROTOBUF_NONNULL mutable_item()
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_resource_name()
const ::google::protobuf::RepeatedPtrField<::std::string > & resource_name() const
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
VectorBinPackingProblem & operator=(const VectorBinPackingProblem &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::operations_research::packing::vbp::Item *PROTOBUF_NONNULL add_item()
const ::operations_research::packing::vbp::Item & item(int index) const
friend void swap(VectorBinPackingProblem &a, VectorBinPackingProblem &b)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_resource_capacity()
VectorBinPackingProblem *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
const ::google::protobuf::RepeatedField<::int64_t > & resource_capacity() const
const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::Item > & item() const
::operations_research::packing::vbp::Item *PROTOBUF_NONNULL mutable_item(int index)
void set_resource_name(int index, Arg_ &&value, Args_... args)
::operations_research::packing::vbp::VectorBinPackingOneBinInSolution *PROTOBUF_NONNULL mutable_bins(int index)
void set_allocated_solver_info(::std::string *PROTOBUF_NULLABLE value)
::operations_research::packing::vbp::VectorBinPackingSolveStatus status() 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
friend void swap(VectorBinPackingSolution &a, VectorBinPackingSolution &b)
void set_status(::operations_research::packing::vbp::VectorBinPackingSolveStatus value)
const ::google::protobuf::RepeatedPtrField<::operations_research::packing::vbp::VectorBinPackingOneBinInSolution > & bins() const
const ::operations_research::packing::vbp::VectorBinPackingOneBinInSolution & bins(int index) const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
VectorBinPackingSolution & operator=(const VectorBinPackingSolution &from)
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
::operations_research::packing::vbp::VectorBinPackingOneBinInSolution *PROTOBUF_NONNULL add_bins()
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)
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_
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_
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_
OR-Tools root namespace.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fpacking_2fvector_5fbin_5fpacking_2eproto