8 #include <google/protobuf/io/coded_stream.h> 9 #include <google/protobuf/extension_set.h> 10 #include <google/protobuf/wire_format_lite.h> 11 #include <google/protobuf/descriptor.h> 12 #include <google/protobuf/generated_message_reflection.h> 13 #include <google/protobuf/reflection_ops.h> 14 #include <google/protobuf/wire_format.h> 16 #include <google/protobuf/port_def.inc> 18 PROTOBUF_PRAGMA_INIT_SEG
21 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
22 : tail_node_id_(int64_t{0})
23 , head_node_id_(int64_t{0})
24 , unit_cost_(int64_t{0})
25 , capacity_(int64_t{1}){}
36 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
38 , supply_(int64_t{0}){}
49 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
115 const char descriptor_table_protodef_ortools_2fgraph_2fflow_5fproblem_2eproto[]
PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
116 "\n ortools/graph/flow_problem.proto\022\023oper" 117 "ations_research\"\\\n\003Arc\022\024\n\014tail_node_id\030\001" 118 " \001(\003\022\024\n\014head_node_id\030\002 \001(\003\022\023\n\010capacity\030\003" 119 " \001(\003:\0011\022\024\n\tunit_cost\030\004 \001(\003:\0010\"%\n\004Node\022\n\n" 120 "\002id\030\001 \001(\003\022\021\n\006supply\030\002 \001(\003:\0010\"\367\001\n\tFlowMod" 121 "el\022\'\n\004node\030\001 \003(\0132\031.operations_research.N" 122 "ode\022%\n\003arc\030\002 \003(\0132\030.operations_research.A" 123 "rc\022O\n\014problem_type\030\003 \001(\0162*.operations_re" 124 "search.FlowModel.ProblemType:\rMIN_COST_F" 125 "LOW\"I\n\013ProblemType\022\031\n\025LINEAR_SUM_ASSIGNM" 126 "ENT\020\000\022\014\n\010MAX_FLOW\020\001\022\021\n\rMIN_COST_FLOW\020\002" 130 false,
false, 438, descriptor_table_protodef_ortools_2fgraph_2fflow_5fproblem_2eproto,
"ortools/graph/flow_problem.proto",
157 #if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900) 164 #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900) 168 class Arc::_Internal {
170 using HasBits = decltype(std::declval<Arc>()._has_bits_);
172 (*has_bits)[0] |= 1u;
175 (*has_bits)[0] |= 2u;
178 (*has_bits)[0] |= 8u;
181 (*has_bits)[0] |= 4u;
186 bool is_message_owned)
187 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
189 if (!is_message_owned) {
190 RegisterArenaDtor(arena);
195 : ::PROTOBUF_NAMESPACE_ID::Message(),
196 _has_bits_(from._has_bits_) {
197 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
198 ::memcpy(&tail_node_id_, &from.tail_node_id_,
199 static_cast<size_t>(reinterpret_cast<char*>(&capacity_) -
200 reinterpret_cast<char*>(&tail_node_id_)) +
sizeof(capacity_));
204 inline void Arc::SharedCtor() {
205 ::memset(reinterpret_cast<char*>(
this) + static_cast<size_t>(
206 reinterpret_cast<char*>(&tail_node_id_) - reinterpret_cast<char*>(
this)),
207 0, static_cast<size_t>(reinterpret_cast<char*>(&unit_cost_) -
208 reinterpret_cast<char*>(&tail_node_id_)) +
sizeof(unit_cost_));
209 capacity_ = int64_t{1};
214 if (GetArenaForAllocation() !=
nullptr)
return;
216 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
219 inline void Arc::SharedDtor() {
220 GOOGLE_DCHECK(GetArenaForAllocation() ==
nullptr);
223 void Arc::ArenaDtor(
void*
object) {
224 Arc* _this = reinterpret_cast< Arc* >(
object);
227 void Arc::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
229 void Arc::SetCachedSize(
int size)
const {
230 _cached_size_.Set(size);
235 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
237 (void) cached_has_bits;
239 cached_has_bits = _has_bits_[0];
240 if (cached_has_bits & 0x0000000fu) {
241 ::memset(&tail_node_id_, 0, static_cast<size_t>(
242 reinterpret_cast<char*>(&unit_cost_) -
243 reinterpret_cast<char*>(&tail_node_id_)) +
sizeof(unit_cost_));
244 capacity_ = int64_t{1};
247 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
251 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure 253 while (!ctx->Done(&ptr)) {
254 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
255 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
259 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
261 tail_node_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
263 }
else goto handle_unusual;
267 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
269 head_node_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
271 }
else goto handle_unusual;
275 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
277 capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
279 }
else goto handle_unusual;
283 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
285 unit_cost_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
287 }
else goto handle_unusual;
291 if ((tag == 0) || ((tag & 7) == 4)) {
293 ctx->SetLastTag(tag);
296 ptr = UnknownFieldParse(tag,
297 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
299 CHK_(ptr !=
nullptr);
305 _has_bits_.Or(has_bits);
314 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream)
const {
316 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
317 (void) cached_has_bits;
319 cached_has_bits = _has_bits_[0];
321 if (cached_has_bits & 0x00000001u) {
322 target = stream->EnsureSpace(target);
323 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_tail_node_id(), target);
327 if (cached_has_bits & 0x00000002u) {
328 target = stream->EnsureSpace(target);
329 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_head_node_id(), target);
333 if (cached_has_bits & 0x00000008u) {
334 target = stream->EnsureSpace(target);
335 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_capacity(), target);
339 if (cached_has_bits & 0x00000004u) {
340 target = stream->EnsureSpace(target);
341 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_unit_cost(), target);
344 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
345 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
346 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
354 size_t total_size = 0;
356 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
358 (void) cached_has_bits;
360 cached_has_bits = _has_bits_[0];
361 if (cached_has_bits & 0x0000000fu) {
363 if (cached_has_bits & 0x00000001u) {
365 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
366 this->_internal_tail_node_id());
370 if (cached_has_bits & 0x00000002u) {
372 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
373 this->_internal_head_node_id());
377 if (cached_has_bits & 0x00000004u) {
379 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
380 this->_internal_unit_cost());
384 if (cached_has_bits & 0x00000008u) {
386 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
387 this->_internal_capacity());
391 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
392 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
393 _internal_metadata_, total_size, &_cached_size_);
395 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
396 SetCachedSize(cached_size);
401 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
406 void Arc::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to,
407 const ::PROTOBUF_NAMESPACE_ID::Message&from) {
408 static_cast<Arc *>(to)->MergeFrom(
409 static_cast<const Arc &>(from));
415 GOOGLE_DCHECK_NE(&from,
this);
416 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
417 (void) cached_has_bits;
419 cached_has_bits = from._has_bits_[0];
420 if (cached_has_bits & 0x0000000fu) {
421 if (cached_has_bits & 0x00000001u) {
422 tail_node_id_ = from.tail_node_id_;
424 if (cached_has_bits & 0x00000002u) {
425 head_node_id_ = from.head_node_id_;
427 if (cached_has_bits & 0x00000004u) {
428 unit_cost_ = from.unit_cost_;
430 if (cached_has_bits & 0x00000008u) {
431 capacity_ = from.capacity_;
433 _has_bits_[0] |= cached_has_bits;
435 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
440 if (&from ==
this)
return;
449 void Arc::InternalSwap(
Arc* other) {
451 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
452 swap(_has_bits_[0], other->_has_bits_[0]);
453 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
454 PROTOBUF_FIELD_OFFSET(
Arc, unit_cost_)
455 +
sizeof(Arc::unit_cost_)
456 - PROTOBUF_FIELD_OFFSET(
Arc, tail_node_id_)>(
457 reinterpret_cast<char*>(&tail_node_id_),
458 reinterpret_cast<char*>(&other->tail_node_id_));
459 swap(capacity_, other->capacity_);
463 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
472 using HasBits = decltype(std::declval<Node>()._has_bits_);
474 (*has_bits)[0] |= 1u;
477 (*has_bits)[0] |= 2u;
482 bool is_message_owned)
483 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
485 if (!is_message_owned) {
486 RegisterArenaDtor(arena);
491 : ::PROTOBUF_NAMESPACE_ID::Message(),
492 _has_bits_(from._has_bits_) {
493 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
494 ::memcpy(&id_, &from.id_,
495 static_cast<size_t>(reinterpret_cast<char*>(&supply_) -
496 reinterpret_cast<char*>(&id_)) +
sizeof(supply_));
500 inline void Node::SharedCtor() {
501 ::memset(reinterpret_cast<char*>(
this) + static_cast<size_t>(
502 reinterpret_cast<char*>(&id_) - reinterpret_cast<char*>(
this)),
503 0, static_cast<size_t>(reinterpret_cast<char*>(&supply_) -
504 reinterpret_cast<char*>(&id_)) +
sizeof(supply_));
509 if (GetArenaForAllocation() !=
nullptr)
return;
511 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
514 inline void Node::SharedDtor() {
515 GOOGLE_DCHECK(GetArenaForAllocation() ==
nullptr);
518 void Node::ArenaDtor(
void*
object) {
519 Node* _this = reinterpret_cast< Node* >(
object);
522 void Node::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
524 void Node::SetCachedSize(
int size)
const {
525 _cached_size_.Set(size);
530 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
532 (void) cached_has_bits;
534 cached_has_bits = _has_bits_[0];
535 if (cached_has_bits & 0x00000003u) {
536 ::memset(&id_, 0, static_cast<size_t>(
537 reinterpret_cast<char*>(&supply_) -
538 reinterpret_cast<char*>(&id_)) +
sizeof(supply_));
541 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
545 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure 547 while (!ctx->Done(&ptr)) {
548 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
549 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
553 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
555 id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
557 }
else goto handle_unusual;
561 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
563 supply_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
565 }
else goto handle_unusual;
569 if ((tag == 0) || ((tag & 7) == 4)) {
571 ctx->SetLastTag(tag);
574 ptr = UnknownFieldParse(tag,
575 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
577 CHK_(ptr !=
nullptr);
583 _has_bits_.Or(has_bits);
592 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream)
const {
594 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
595 (void) cached_has_bits;
597 cached_has_bits = _has_bits_[0];
599 if (cached_has_bits & 0x00000001u) {
600 target = stream->EnsureSpace(target);
601 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_id(), target);
605 if (cached_has_bits & 0x00000002u) {
606 target = stream->EnsureSpace(target);
607 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_supply(), target);
610 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
611 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
612 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
620 size_t total_size = 0;
622 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
624 (void) cached_has_bits;
626 cached_has_bits = _has_bits_[0];
627 if (cached_has_bits & 0x00000003u) {
629 if (cached_has_bits & 0x00000001u) {
631 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
632 this->_internal_id());
636 if (cached_has_bits & 0x00000002u) {
638 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
639 this->_internal_supply());
643 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
644 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
645 _internal_metadata_, total_size, &_cached_size_);
647 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
648 SetCachedSize(cached_size);
653 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
658 void Node::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to,
659 const ::PROTOBUF_NAMESPACE_ID::Message&from) {
660 static_cast<Node *>(to)->MergeFrom(
661 static_cast<const Node &>(from));
667 GOOGLE_DCHECK_NE(&from,
this);
668 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
669 (void) cached_has_bits;
671 cached_has_bits = from._has_bits_[0];
672 if (cached_has_bits & 0x00000003u) {
673 if (cached_has_bits & 0x00000001u) {
676 if (cached_has_bits & 0x00000002u) {
677 supply_ = from.supply_;
679 _has_bits_[0] |= cached_has_bits;
681 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
686 if (&from ==
this)
return;
695 void Node::InternalSwap(
Node* other) {
697 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
698 swap(_has_bits_[0], other->_has_bits_[0]);
699 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
700 PROTOBUF_FIELD_OFFSET(
Node, supply_)
701 +
sizeof(Node::supply_)
702 - PROTOBUF_FIELD_OFFSET(
Node, id_)>(
703 reinterpret_cast<char*>(&id_),
704 reinterpret_cast<char*>(&other->id_));
708 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
717 using HasBits = decltype(std::declval<FlowModel>()._has_bits_);
719 (*has_bits)[0] |= 1u;
724 bool is_message_owned)
725 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
729 if (!is_message_owned) {
730 RegisterArenaDtor(arena);
735 : ::PROTOBUF_NAMESPACE_ID::Message(),
736 _has_bits_(from._has_bits_),
739 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
740 problem_type_ = from.problem_type_;
744 inline void FlowModel::SharedCtor() {
750 if (GetArenaForAllocation() !=
nullptr)
return;
752 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
755 inline void FlowModel::SharedDtor() {
756 GOOGLE_DCHECK(GetArenaForAllocation() ==
nullptr);
759 void FlowModel::ArenaDtor(
void*
object) {
760 FlowModel* _this = reinterpret_cast< FlowModel* >(
object);
763 void FlowModel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
765 void FlowModel::SetCachedSize(
int size)
const {
766 _cached_size_.Set(size);
771 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
773 (void) cached_has_bits;
779 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
783 #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure 785 while (!ctx->Done(&ptr)) {
786 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
787 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
791 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
795 ptr = ctx->ParseMessage(_internal_add_node(), ptr);
797 if (!ctx->DataAvailable(ptr))
break;
798 }
while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
799 }
else goto handle_unusual;
803 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
807 ptr = ctx->ParseMessage(_internal_add_arc(), ptr);
809 if (!ctx->DataAvailable(ptr))
break;
810 }
while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
811 }
else goto handle_unusual;
815 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
816 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
819 _internal_set_problem_type(static_cast<::operations_research::FlowModel_ProblemType>(val));
823 }
else goto handle_unusual;
827 if ((tag == 0) || ((tag & 7) == 4)) {
829 ctx->SetLastTag(tag);
832 ptr = UnknownFieldParse(tag,
833 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
835 CHK_(ptr !=
nullptr);
841 _has_bits_.Or(has_bits);
850 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream)
const {
852 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
853 (void) cached_has_bits;
856 for (
unsigned int i = 0,
857 n = static_cast<unsigned int>(this->_internal_node_size()); i < n; i++) {
858 target = stream->EnsureSpace(target);
859 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
860 InternalWriteMessage(1, this->_internal_node(i), target, stream);
864 for (
unsigned int i = 0,
865 n = static_cast<unsigned int>(this->_internal_arc_size()); i < n; i++) {
866 target = stream->EnsureSpace(target);
867 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
868 InternalWriteMessage(2, this->_internal_arc(i), target, stream);
871 cached_has_bits = _has_bits_[0];
873 if (cached_has_bits & 0x00000001u) {
874 target = stream->EnsureSpace(target);
875 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
876 3, this->_internal_problem_type(), target);
879 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
880 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
881 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
889 size_t total_size = 0;
891 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
893 (void) cached_has_bits;
896 total_size += 1UL * this->_internal_node_size();
897 for (
const auto& msg : this->node_) {
899 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
903 total_size += 1UL * this->_internal_arc_size();
904 for (
const auto& msg : this->arc_) {
906 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
910 cached_has_bits = _has_bits_[0];
911 if (cached_has_bits & 0x00000001u) {
913 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_problem_type());
916 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
917 return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
918 _internal_metadata_, total_size, &_cached_size_);
920 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
921 SetCachedSize(cached_size);
926 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
931 void FlowModel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to,
932 const ::PROTOBUF_NAMESPACE_ID::Message&from) {
933 static_cast<FlowModel *>(to)->MergeFrom(
934 static_cast<const FlowModel &>(from));
940 GOOGLE_DCHECK_NE(&from,
this);
941 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
942 (void) cached_has_bits;
944 node_.MergeFrom(from.node_);
945 arc_.MergeFrom(from.arc_);
946 if (from._internal_has_problem_type()) {
947 _internal_set_problem_type(from._internal_problem_type());
949 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
954 if (&from ==
this)
return;
963 void FlowModel::InternalSwap(
FlowModel* other) {
965 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
966 swap(_has_bits_[0], other->_has_bits_[0]);
967 node_.InternalSwap(&other->node_);
968 arc_.InternalSwap(&other->arc_);
969 swap(problem_type_, other->problem_type_);
973 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
980 PROTOBUF_NAMESPACE_OPEN
982 return Arena::CreateMessageInternal< ::operations_research::Arc >(arena);
985 return Arena::CreateMessageInternal< ::operations_research::Node >(arena);
988 return Arena::CreateMessageInternal< ::operations_research::FlowModel >(arena);
990 PROTOBUF_NAMESPACE_CLOSE
993 #include <google/protobuf/port_undef.inc> const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto::offsets [] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
constexpr FlowModelDefaultTypeInternal()
static const ClassData _class_data_
static void set_has_capacity(HasBits *has_bits)
friend void swap(Node &a, Node &b)
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
bool IsInitialized() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * FlowModel_ProblemType_descriptor()
static const ClassData _class_data_
void MergeFrom(const Arc &from)
void swap(IdMap< K, V > &a, IdMap< K, V > &b)
static constexpr ProblemType ProblemType_MAX
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE ::operations_research::Arc * Arena::CreateMaybeMessage< ::operations_research::Arc >(Arena *arena)
static constexpr ProblemType LINEAR_SUM_ASSIGNMENT
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void CopyFrom(const Arc &from)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto
size_t ByteSizeLong() const final
static void set_has_problem_type(HasBits *has_bits)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT FlowModelDefaultTypeInternal _FlowModel_default_instance_
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void CopyFrom(const FlowModel &from)
PROTOBUF_ATTRIBUTE_WEAKconst ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable * descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_getter()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ArcDefaultTypeInternal _Arc_default_instance_
PROTOBUF_NOINLINE ::operations_research::Node * Arena::CreateMaybeMessage< ::operations_research::Node >(Arena *arena)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static constexpr ProblemType ProblemType_MIN
static void set_has_id(HasBits *has_bits)
static constexpr int ProblemType_ARRAYSIZE
constexpr NodeDefaultTypeInternal()
void CopyFrom(const Node &from)
static void set_has_head_node_id(HasBits *has_bits)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NodeDefaultTypeInternal _Node_default_instance_
size_t ByteSizeLong() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void MergeFrom(const FlowModel &from)
PROTOBUF_NOINLINE ::operations_research::FlowModel * Arena::CreateMaybeMessage< ::operations_research::FlowModel >(Arena *arena)
~FlowModelDefaultTypeInternal()
size_t ByteSizeLong() const final
decltype(std::declval< Arc >()._has_bits_) HasBits
static constexpr ProblemType MAX_FLOW
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
friend void swap(Arc &a, Arc &b)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
std::pair< int64_t, int64_t > Arc
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static void set_has_supply(HasBits *has_bits)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool IsInitialized() const final
~NodeDefaultTypeInternal()
Collection of objects used to extend the Constraint Solver library.
static void set_has_tail_node_id(HasBits *has_bits)
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_once
bool IsInitialized() const final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static void set_has_unit_cost(HasBits *has_bits)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fgraph_2fflow_5fproblem_2eproto[3]
~ArcDefaultTypeInternal()
decltype(std::declval< FlowModel >()._has_bits_) HasBits
static constexpr ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * file_level_enum_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto[1]
decltype(std::declval< Node >()._has_bits_) HasBits
friend void swap(FlowModel &a, FlowModel &b)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static constexpr ProblemType MIN_COST_FLOW
static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto
void MergeFrom(const Node &from)
bool FlowModel_ProblemType_IsValid(int value)
constexpr ArcDefaultTypeInternal()