Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
flow_problem.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/graph/flow_problem.proto
4// Protobuf C++ Version: 6.33.1
5
6#ifndef ortools_2fgraph_2fflow_5fproblem_2eproto_2epb_2eh
7#define ortools_2fgraph_2fflow_5fproblem_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_2fgraph_2fflow_5fproblem_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_2fgraph_2fflow_5fproblem_2eproto;
55} // extern "C"
56namespace operations_research {
58OR_PROTO_DLL extern const uint32_t FlowModelProto_ProblemType_internal_data_[];
59class FlowArcProto;
62OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowArcProto_class_data_;
63class FlowModelProto;
66OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowModelProto_class_data_;
67class FlowNodeProto;
70OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowNodeProto_class_data_;
71} // namespace operations_research
72namespace google {
73namespace protobuf {
74template <>
75internal::EnumTraitsT<::operations_research::FlowModelProto_ProblemType_internal_data_>
76 internal::EnumTraitsImpl::value<::operations_research::FlowModelProto_ProblemType>;
77} // namespace protobuf
78} // namespace google
79
80namespace operations_research {
86
87OR_PROTO_DLL extern const uint32_t FlowModelProto_ProblemType_internal_data_[];
89 static_cast<FlowModelProto_ProblemType>(0);
91 static_cast<FlowModelProto_ProblemType>(2);
92inline bool FlowModelProto_ProblemType_IsValid(int value) {
93 return 0 <= value && value <= 2;
94}
96OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL FlowModelProto_ProblemType_descriptor();
97template <typename T>
98const ::std::string& FlowModelProto_ProblemType_Name(T value) {
99 static_assert(::std::is_same<T, FlowModelProto_ProblemType>::value ||
100 ::std::is_integral<T>::value,
101 "Incorrect type passed to ProblemType_Name().");
103}
104template <>
106 return ::google::protobuf::internal::NameOfDenseEnum<FlowModelProto_ProblemType_descriptor, 0, 2>(
107 static_cast<int>(value));
108}
110 ::absl::string_view name, FlowModelProto_ProblemType* PROTOBUF_NONNULL value) {
111 return ::google::protobuf::internal::ParseNamedEnum<FlowModelProto_ProblemType>(FlowModelProto_ProblemType_descriptor(), name,
112 value);
113}
114
115// ===================================================================
116
117
118// -------------------------------------------------------------------
119
120class OR_PROTO_DLL FlowNodeProto final : public ::google::protobuf::Message
121/* @@protoc_insertion_point(class_definition:operations_research.FlowNodeProto) */ {
122 public:
123 inline FlowNodeProto() : FlowNodeProto(nullptr) {}
124 ~FlowNodeProto() PROTOBUF_FINAL;
126#if defined(PROTOBUF_CUSTOM_VTABLE)
127 void operator delete(FlowNodeProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
128 SharedDtor(*msg);
129 ::google::protobuf::internal::SizedDelete(msg, sizeof(FlowNodeProto));
130 }
131#endif
132
133 template <typename = void>
134 explicit PROTOBUF_CONSTEXPR FlowNodeProto(::google::protobuf::internal::ConstantInitialized);
135
136 inline FlowNodeProto(const FlowNodeProto& from) : FlowNodeProto(nullptr, from) {}
137 inline FlowNodeProto(FlowNodeProto&& from) noexcept
138 : FlowNodeProto(nullptr, ::std::move(from)) {}
139 inline FlowNodeProto& operator=(const FlowNodeProto& from) {
140 CopyFrom(from);
141 return *this;
142 }
143 inline FlowNodeProto& operator=(FlowNodeProto&& from) noexcept {
144 if (this == &from) return *this;
145 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
146 InternalSwap(&from);
147 } else {
148 CopyFrom(from);
149 }
150 return *this;
151 }
152
153 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
154 ABSL_ATTRIBUTE_LIFETIME_BOUND {
155 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
156 }
157 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
158 ABSL_ATTRIBUTE_LIFETIME_BOUND {
159 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
160 }
161
162 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
163 return GetDescriptor();
165 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
166 return default_instance().GetMetadata().descriptor;
168 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
169 return default_instance().GetMetadata().reflection;
171 static const FlowNodeProto& default_instance() {
172 return *reinterpret_cast<const FlowNodeProto*>(
174 }
175 static constexpr int kIndexInFileMessages = 1;
176 friend void swap(FlowNodeProto& a, FlowNodeProto& b) { a.Swap(&b); }
177 inline void Swap(FlowNodeProto* PROTOBUF_NONNULL other) {
178 if (other == this) return;
179 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
180 InternalSwap(other);
181 } else {
182 ::google::protobuf::internal::GenericSwap(this, other);
183 }
184 }
185 void UnsafeArenaSwap(FlowNodeProto* PROTOBUF_NONNULL other) {
186 if (other == this) return;
187 ABSL_DCHECK(GetArena() == other->GetArena());
188 InternalSwap(other);
189 }
190
191 // implements Message ----------------------------------------------
192
193 FlowNodeProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
194 return ::google::protobuf::Message::DefaultConstruct<FlowNodeProto>(arena);
196 using ::google::protobuf::Message::CopyFrom;
197 void CopyFrom(const FlowNodeProto& from);
198 using ::google::protobuf::Message::MergeFrom;
199 void MergeFrom(const FlowNodeProto& from) { FlowNodeProto::MergeImpl(*this, from); }
200
201 private:
202 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
203 const ::google::protobuf::MessageLite& from_msg);
204
205 public:
206 bool IsInitialized() const {
207 return true;
209 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
210 #if defined(PROTOBUF_CUSTOM_VTABLE)
211 private:
212 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
213 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
214 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
215 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
216
217 public:
218 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
219 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
220 ::uint8_t* PROTOBUF_NONNULL target,
221 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
222 return _InternalSerialize(*this, target, stream);
223 }
224 #else // PROTOBUF_CUSTOM_VTABLE
225 ::size_t ByteSizeLong() const final;
226 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
227 ::uint8_t* PROTOBUF_NONNULL target,
228 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
229 #endif // PROTOBUF_CUSTOM_VTABLE
230 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
231
232 private:
233 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
234 static void SharedDtor(MessageLite& self);
235 void InternalSwap(FlowNodeProto* PROTOBUF_NONNULL other);
236 private:
237 template <typename T>
238 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
239 static ::absl::string_view FullMessageName() { return "operations_research.FlowNodeProto"; }
240
241 explicit FlowNodeProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
242 FlowNodeProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const FlowNodeProto& from);
244 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, FlowNodeProto&& from) noexcept
245 : FlowNodeProto(arena) {
246 *this = ::std::move(from);
247 }
248 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
249 static void* PROTOBUF_NONNULL PlacementNew_(
250 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
251 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
252 static constexpr auto InternalNewImpl_();
253
254 public:
255 static constexpr auto InternalGenerateClassData_();
256
257 ::google::protobuf::Metadata GetMetadata() const;
258 // nested types ----------------------------------------------------
259
260 // accessors -------------------------------------------------------
261 enum : int {
262 kIdFieldNumber = 1,
263 kSupplyFieldNumber = 2,
264 };
265 // optional int64 id = 1;
266 bool has_id() const;
267 void clear_id() ;
268 ::int64_t id() const;
269 void set_id(::int64_t value);
270
271 private:
272 ::int64_t _internal_id() const;
273 void _internal_set_id(::int64_t value);
274
275 public:
276 // optional int64 supply = 2 [default = 0];
277 bool has_supply() const;
278 void clear_supply() ;
279 ::int64_t supply() const;
280 void set_supply(::int64_t value);
281
282 private:
283 ::int64_t _internal_supply() const;
284 void _internal_set_supply(::int64_t value);
285
286 public:
287 // @@protoc_insertion_point(class_scope:operations_research.FlowNodeProto)
288 private:
289 class _Internal;
290 friend class ::google::protobuf::internal::TcParser;
291 static const ::google::protobuf::internal::TcParseTable<1, 2,
292 0, 0,
293 2>
294 _table_;
295
296 friend class ::google::protobuf::MessageLite;
297 friend class ::google::protobuf::Arena;
298 template <typename T>
299 friend class ::google::protobuf::Arena::InternalHelper;
300 using InternalArenaConstructable_ = void;
301 using DestructorSkippable_ = void;
302 struct Impl_ {
303 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
304 inline explicit Impl_(
305 ::google::protobuf::internal::InternalVisibility visibility,
306 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
307 inline explicit Impl_(
308 ::google::protobuf::internal::InternalVisibility visibility,
309 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
310 const FlowNodeProto& from_msg);
311 ::google::protobuf::internal::HasBits<1> _has_bits_;
312 ::google::protobuf::internal::CachedSize _cached_size_;
313 ::int64_t id_;
314 ::int64_t supply_;
315 PROTOBUF_TSAN_DECLARE_MEMBER
316 };
317 union { Impl_ _impl_; };
318 friend struct ::TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto;
321OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowNodeProto_class_data_;
322// -------------------------------------------------------------------
323
324class OR_PROTO_DLL FlowArcProto final : public ::google::protobuf::Message
325/* @@protoc_insertion_point(class_definition:operations_research.FlowArcProto) */ {
326 public:
327 inline FlowArcProto() : FlowArcProto(nullptr) {}
328 ~FlowArcProto() PROTOBUF_FINAL;
329
330#if defined(PROTOBUF_CUSTOM_VTABLE)
331 void operator delete(FlowArcProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
332 SharedDtor(*msg);
333 ::google::protobuf::internal::SizedDelete(msg, sizeof(FlowArcProto));
334 }
335#endif
336
337 template <typename = void>
338 explicit PROTOBUF_CONSTEXPR FlowArcProto(::google::protobuf::internal::ConstantInitialized);
339
340 inline FlowArcProto(const FlowArcProto& from) : FlowArcProto(nullptr, from) {}
341 inline FlowArcProto(FlowArcProto&& from) noexcept
342 : FlowArcProto(nullptr, ::std::move(from)) {}
343 inline FlowArcProto& operator=(const FlowArcProto& from) {
344 CopyFrom(from);
345 return *this;
347 inline FlowArcProto& operator=(FlowArcProto&& from) noexcept {
348 if (this == &from) return *this;
349 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
350 InternalSwap(&from);
351 } else {
352 CopyFrom(from);
353 }
354 return *this;
355 }
356
357 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
358 ABSL_ATTRIBUTE_LIFETIME_BOUND {
359 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
361 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
362 ABSL_ATTRIBUTE_LIFETIME_BOUND {
363 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
365
366 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
367 return GetDescriptor();
368 }
369 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
370 return default_instance().GetMetadata().descriptor;
371 }
372 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
373 return default_instance().GetMetadata().reflection;
374 }
376 return *reinterpret_cast<const FlowArcProto*>(
379 static constexpr int kIndexInFileMessages = 0;
380 friend void swap(FlowArcProto& a, FlowArcProto& b) { a.Swap(&b); }
381 inline void Swap(FlowArcProto* PROTOBUF_NONNULL other) {
382 if (other == this) return;
383 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
384 InternalSwap(other);
385 } else {
386 ::google::protobuf::internal::GenericSwap(this, other);
387 }
388 }
389 void UnsafeArenaSwap(FlowArcProto* PROTOBUF_NONNULL other) {
390 if (other == this) return;
391 ABSL_DCHECK(GetArena() == other->GetArena());
392 InternalSwap(other);
393 }
394
395 // implements Message ----------------------------------------------
396
397 FlowArcProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
398 return ::google::protobuf::Message::DefaultConstruct<FlowArcProto>(arena);
399 }
400 using ::google::protobuf::Message::CopyFrom;
401 void CopyFrom(const FlowArcProto& from);
402 using ::google::protobuf::Message::MergeFrom;
403 void MergeFrom(const FlowArcProto& from) { FlowArcProto::MergeImpl(*this, from); }
404
405 private:
406 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
407 const ::google::protobuf::MessageLite& from_msg);
408
409 public:
410 bool IsInitialized() const {
411 return true;
412 }
413 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
414 #if defined(PROTOBUF_CUSTOM_VTABLE)
415 private:
416 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
417 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
418 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
419 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
420
421 public:
422 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
423 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
424 ::uint8_t* PROTOBUF_NONNULL target,
425 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
426 return _InternalSerialize(*this, target, stream);
427 }
428 #else // PROTOBUF_CUSTOM_VTABLE
429 ::size_t ByteSizeLong() const final;
430 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
431 ::uint8_t* PROTOBUF_NONNULL target,
432 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
433 #endif // PROTOBUF_CUSTOM_VTABLE
434 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
435
436 private:
437 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
438 static void SharedDtor(MessageLite& self);
439 void InternalSwap(FlowArcProto* PROTOBUF_NONNULL other);
440 private:
441 template <typename T>
442 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
443 static ::absl::string_view FullMessageName() { return "operations_research.FlowArcProto"; }
444
445 explicit FlowArcProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
446 FlowArcProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const FlowArcProto& from);
448 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, FlowArcProto&& from) noexcept
449 : FlowArcProto(arena) {
450 *this = ::std::move(from);
451 }
452 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
453 static void* PROTOBUF_NONNULL PlacementNew_(
454 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
455 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
456 static constexpr auto InternalNewImpl_();
457
458 public:
459 static constexpr auto InternalGenerateClassData_();
460
461 ::google::protobuf::Metadata GetMetadata() const;
462 // nested types ----------------------------------------------------
463
464 // accessors -------------------------------------------------------
465 enum : int {
466 kTailFieldNumber = 1,
467 kHeadFieldNumber = 2,
468 kUnitCostFieldNumber = 4,
470 };
471 // optional int64 tail = 1;
472 bool has_tail() const;
473 void clear_tail() ;
474 ::int64_t tail() const;
475 void set_tail(::int64_t value);
476
477 private:
478 ::int64_t _internal_tail() const;
479 void _internal_set_tail(::int64_t value);
480
481 public:
482 // optional int64 head = 2;
483 bool has_head() const;
484 void clear_head() ;
485 ::int64_t head() const;
486 void set_head(::int64_t value);
487
488 private:
489 ::int64_t _internal_head() const;
490 void _internal_set_head(::int64_t value);
491
492 public:
493 // optional int64 unit_cost = 4 [default = 0];
494 bool has_unit_cost() const;
495 void clear_unit_cost() ;
496 ::int64_t unit_cost() const;
497 void set_unit_cost(::int64_t value);
498
499 private:
500 ::int64_t _internal_unit_cost() const;
501 void _internal_set_unit_cost(::int64_t value);
502
503 public:
504 // optional int64 capacity = 3 [default = 1];
505 bool has_capacity() const;
506 void clear_capacity() ;
507 ::int64_t capacity() const;
508 void set_capacity(::int64_t value);
509
510 private:
511 ::int64_t _internal_capacity() const;
512 void _internal_set_capacity(::int64_t value);
513
514 public:
515 // @@protoc_insertion_point(class_scope:operations_research.FlowArcProto)
516 private:
517 class _Internal;
518 friend class ::google::protobuf::internal::TcParser;
519 static const ::google::protobuf::internal::TcParseTable<2, 4,
520 0, 0,
521 2>
522 _table_;
523
524 friend class ::google::protobuf::MessageLite;
525 friend class ::google::protobuf::Arena;
526 template <typename T>
527 friend class ::google::protobuf::Arena::InternalHelper;
528 using InternalArenaConstructable_ = void;
529 using DestructorSkippable_ = void;
530 struct Impl_ {
531 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
532 inline explicit Impl_(
533 ::google::protobuf::internal::InternalVisibility visibility,
534 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
535 inline explicit Impl_(
536 ::google::protobuf::internal::InternalVisibility visibility,
537 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
538 const FlowArcProto& from_msg);
539 ::google::protobuf::internal::HasBits<1> _has_bits_;
540 ::google::protobuf::internal::CachedSize _cached_size_;
541 ::int64_t tail_;
542 ::int64_t head_;
543 ::int64_t unit_cost_;
544 ::int64_t capacity_;
545 PROTOBUF_TSAN_DECLARE_MEMBER
546 };
547 union { Impl_ _impl_; };
548 friend struct ::TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto;
549};
551OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowArcProto_class_data_;
552// -------------------------------------------------------------------
553
554class OR_PROTO_DLL FlowModelProto final : public ::google::protobuf::Message
555/* @@protoc_insertion_point(class_definition:operations_research.FlowModelProto) */ {
556 public:
557 inline FlowModelProto() : FlowModelProto(nullptr) {}
558 ~FlowModelProto() PROTOBUF_FINAL;
559
560#if defined(PROTOBUF_CUSTOM_VTABLE)
561 void operator delete(FlowModelProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
562 SharedDtor(*msg);
563 ::google::protobuf::internal::SizedDelete(msg, sizeof(FlowModelProto));
564 }
565#endif
566
567 template <typename = void>
568 explicit PROTOBUF_CONSTEXPR FlowModelProto(::google::protobuf::internal::ConstantInitialized);
569
570 inline FlowModelProto(const FlowModelProto& from) : FlowModelProto(nullptr, from) {}
571 inline FlowModelProto(FlowModelProto&& from) noexcept
572 : FlowModelProto(nullptr, ::std::move(from)) {}
573 inline FlowModelProto& operator=(const FlowModelProto& from) {
574 CopyFrom(from);
575 return *this;
576 }
577 inline FlowModelProto& operator=(FlowModelProto&& from) noexcept {
578 if (this == &from) return *this;
579 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
580 InternalSwap(&from);
581 } else {
582 CopyFrom(from);
583 }
584 return *this;
585 }
586
587 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
588 ABSL_ATTRIBUTE_LIFETIME_BOUND {
589 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
590 }
591 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
592 ABSL_ATTRIBUTE_LIFETIME_BOUND {
593 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
594 }
596 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
597 return GetDescriptor();
598 }
599 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
600 return default_instance().GetMetadata().descriptor;
601 }
602 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
603 return default_instance().GetMetadata().reflection;
604 }
605 static const FlowModelProto& default_instance() {
606 return *reinterpret_cast<const FlowModelProto*>(
608 }
609 static constexpr int kIndexInFileMessages = 2;
610 friend void swap(FlowModelProto& a, FlowModelProto& b) { a.Swap(&b); }
611 inline void Swap(FlowModelProto* PROTOBUF_NONNULL other) {
612 if (other == this) return;
613 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
614 InternalSwap(other);
615 } else {
616 ::google::protobuf::internal::GenericSwap(this, other);
617 }
618 }
619 void UnsafeArenaSwap(FlowModelProto* PROTOBUF_NONNULL other) {
620 if (other == this) return;
621 ABSL_DCHECK(GetArena() == other->GetArena());
622 InternalSwap(other);
624
625 // implements Message ----------------------------------------------
626
627 FlowModelProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
628 return ::google::protobuf::Message::DefaultConstruct<FlowModelProto>(arena);
629 }
630 using ::google::protobuf::Message::CopyFrom;
631 void CopyFrom(const FlowModelProto& from);
632 using ::google::protobuf::Message::MergeFrom;
633 void MergeFrom(const FlowModelProto& from) { FlowModelProto::MergeImpl(*this, from); }
634
635 private:
636 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
637 const ::google::protobuf::MessageLite& from_msg);
638
639 public:
640 bool IsInitialized() const {
641 return true;
642 }
643 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
644 #if defined(PROTOBUF_CUSTOM_VTABLE)
645 private:
646 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
647 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
648 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
649 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
650
651 public:
652 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
653 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
654 ::uint8_t* PROTOBUF_NONNULL target,
655 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
656 return _InternalSerialize(*this, target, stream);
657 }
658 #else // PROTOBUF_CUSTOM_VTABLE
659 ::size_t ByteSizeLong() const final;
660 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
661 ::uint8_t* PROTOBUF_NONNULL target,
662 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
663 #endif // PROTOBUF_CUSTOM_VTABLE
664 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
665
666 private:
667 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
668 static void SharedDtor(MessageLite& self);
669 void InternalSwap(FlowModelProto* PROTOBUF_NONNULL other);
670 private:
671 template <typename T>
672 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
673 static ::absl::string_view FullMessageName() { return "operations_research.FlowModelProto"; }
674
675 explicit FlowModelProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
676 FlowModelProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const FlowModelProto& from);
678 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, FlowModelProto&& from) noexcept
679 : FlowModelProto(arena) {
680 *this = ::std::move(from);
681 }
682 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
683 static void* PROTOBUF_NONNULL PlacementNew_(
684 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
685 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
686 static constexpr auto InternalNewImpl_();
687
688 public:
689 static constexpr auto InternalGenerateClassData_();
690
691 ::google::protobuf::Metadata GetMetadata() const;
692 // nested types ----------------------------------------------------
693 using ProblemType = FlowModelProto_ProblemType;
694 static constexpr ProblemType LINEAR_SUM_ASSIGNMENT = FlowModelProto_ProblemType_LINEAR_SUM_ASSIGNMENT;
695 static constexpr ProblemType MAX_FLOW = FlowModelProto_ProblemType_MAX_FLOW;
696 static constexpr ProblemType MIN_COST_FLOW = FlowModelProto_ProblemType_MIN_COST_FLOW;
697 static inline bool ProblemType_IsValid(int value) {
703 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL ProblemType_descriptor() {
706 template <typename T>
707 static inline const ::std::string& ProblemType_Name(T value) {
709 }
710 static inline bool ProblemType_Parse(
711 ::absl::string_view name, ProblemType* PROTOBUF_NONNULL value) {
712 return FlowModelProto_ProblemType_Parse(name, value);
713 }
715 // accessors -------------------------------------------------------
716 enum : int {
720 };
721 // repeated .operations_research.FlowNodeProto nodes = 1;
722 int nodes_size() const;
723 private:
724 int _internal_nodes_size() const;
725
726 public:
727 void clear_nodes() ;
728 ::operations_research::FlowNodeProto* PROTOBUF_NONNULL mutable_nodes(int index);
729 ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>* PROTOBUF_NONNULL mutable_nodes();
730
731 private:
732 const ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>& _internal_nodes() const;
733 ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>* PROTOBUF_NONNULL _internal_mutable_nodes();
734 public:
735 const ::operations_research::FlowNodeProto& nodes(int index) const;
737 const ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>& nodes() const;
738 // repeated .operations_research.FlowArcProto arcs = 2;
739 int arcs_size() const;
740 private:
741 int _internal_arcs_size() const;
742
743 public:
744 void clear_arcs() ;
745 ::operations_research::FlowArcProto* PROTOBUF_NONNULL mutable_arcs(int index);
746 ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>* PROTOBUF_NONNULL mutable_arcs();
747
748 private:
749 const ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>& _internal_arcs() const;
750 ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>* PROTOBUF_NONNULL _internal_mutable_arcs();
751 public:
752 const ::operations_research::FlowArcProto& arcs(int index) const;
754 const ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>& arcs() const;
755 // optional .operations_research.FlowModelProto.ProblemType problem_type = 3;
756 bool has_problem_type() const;
757 void clear_problem_type() ;
760
761 private:
762 ::operations_research::FlowModelProto_ProblemType _internal_problem_type() const;
763 void _internal_set_problem_type(::operations_research::FlowModelProto_ProblemType value);
764
765 public:
766 // @@protoc_insertion_point(class_scope:operations_research.FlowModelProto)
767 private:
768 class _Internal;
769 friend class ::google::protobuf::internal::TcParser;
770 static const ::google::protobuf::internal::TcParseTable<2, 3,
771 3, 0,
772 2>
773 _table_;
774
775 friend class ::google::protobuf::MessageLite;
776 friend class ::google::protobuf::Arena;
777 template <typename T>
778 friend class ::google::protobuf::Arena::InternalHelper;
779 using InternalArenaConstructable_ = void;
780 using DestructorSkippable_ = void;
781 struct Impl_ {
782 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
783 inline explicit Impl_(
784 ::google::protobuf::internal::InternalVisibility visibility,
785 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
786 inline explicit Impl_(
787 ::google::protobuf::internal::InternalVisibility visibility,
788 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
789 const FlowModelProto& from_msg);
790 ::google::protobuf::internal::HasBits<1> _has_bits_;
791 ::google::protobuf::internal::CachedSize _cached_size_;
792 ::google::protobuf::RepeatedPtrField< ::operations_research::FlowNodeProto > nodes_;
793 ::google::protobuf::RepeatedPtrField< ::operations_research::FlowArcProto > arcs_;
794 int problem_type_;
795 PROTOBUF_TSAN_DECLARE_MEMBER
796 };
797 union { Impl_ _impl_; };
798 friend struct ::TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto;
799};
800
801OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull FlowModelProto_class_data_;
803// ===================================================================
804
805
806
807
808// ===================================================================
809
810
811#ifdef __GNUC__
812#pragma GCC diagnostic push
813#pragma GCC diagnostic ignored "-Wstrict-aliasing"
814#endif // __GNUC__
815// -------------------------------------------------------------------
816
817// FlowArcProto
818
819// optional int64 tail = 1;
820inline bool FlowArcProto::has_tail() const {
821 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
822 return value;
823}
824inline void FlowArcProto::clear_tail() {
825 ::google::protobuf::internal::TSanWrite(&_impl_);
826 _impl_.tail_ = ::int64_t{0};
827 ClearHasBit(_impl_._has_bits_[0],
828 0x00000001U);
829}
830inline ::int64_t FlowArcProto::tail() const {
831 // @@protoc_insertion_point(field_get:operations_research.FlowArcProto.tail)
832 return _internal_tail();
833}
834inline void FlowArcProto::set_tail(::int64_t value) {
835 _internal_set_tail(value);
836 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
837 // @@protoc_insertion_point(field_set:operations_research.FlowArcProto.tail)
838}
839inline ::int64_t FlowArcProto::_internal_tail() const {
840 ::google::protobuf::internal::TSanRead(&_impl_);
841 return _impl_.tail_;
842}
843inline void FlowArcProto::_internal_set_tail(::int64_t value) {
844 ::google::protobuf::internal::TSanWrite(&_impl_);
845 _impl_.tail_ = value;
846}
847
848// optional int64 head = 2;
849inline bool FlowArcProto::has_head() const {
850 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
851 return value;
852}
853inline void FlowArcProto::clear_head() {
854 ::google::protobuf::internal::TSanWrite(&_impl_);
855 _impl_.head_ = ::int64_t{0};
856 ClearHasBit(_impl_._has_bits_[0],
857 0x00000002U);
858}
859inline ::int64_t FlowArcProto::head() const {
860 // @@protoc_insertion_point(field_get:operations_research.FlowArcProto.head)
861 return _internal_head();
862}
863inline void FlowArcProto::set_head(::int64_t value) {
864 _internal_set_head(value);
865 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
866 // @@protoc_insertion_point(field_set:operations_research.FlowArcProto.head)
867}
868inline ::int64_t FlowArcProto::_internal_head() const {
869 ::google::protobuf::internal::TSanRead(&_impl_);
870 return _impl_.head_;
871}
872inline void FlowArcProto::_internal_set_head(::int64_t value) {
873 ::google::protobuf::internal::TSanWrite(&_impl_);
874 _impl_.head_ = value;
875}
876
877// optional int64 capacity = 3 [default = 1];
878inline bool FlowArcProto::has_capacity() const {
879 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
880 return value;
881}
882inline void FlowArcProto::clear_capacity() {
883 ::google::protobuf::internal::TSanWrite(&_impl_);
884 _impl_.capacity_ = ::int64_t{1};
885 ClearHasBit(_impl_._has_bits_[0],
886 0x00000008U);
887}
888inline ::int64_t FlowArcProto::capacity() const {
889 // @@protoc_insertion_point(field_get:operations_research.FlowArcProto.capacity)
890 return _internal_capacity();
891}
892inline void FlowArcProto::set_capacity(::int64_t value) {
893 _internal_set_capacity(value);
894 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
895 // @@protoc_insertion_point(field_set:operations_research.FlowArcProto.capacity)
896}
897inline ::int64_t FlowArcProto::_internal_capacity() const {
898 ::google::protobuf::internal::TSanRead(&_impl_);
899 return _impl_.capacity_;
900}
901inline void FlowArcProto::_internal_set_capacity(::int64_t value) {
902 ::google::protobuf::internal::TSanWrite(&_impl_);
903 _impl_.capacity_ = value;
904}
905
906// optional int64 unit_cost = 4 [default = 0];
907inline bool FlowArcProto::has_unit_cost() const {
908 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
909 return value;
910}
911inline void FlowArcProto::clear_unit_cost() {
912 ::google::protobuf::internal::TSanWrite(&_impl_);
913 _impl_.unit_cost_ = ::int64_t{0};
914 ClearHasBit(_impl_._has_bits_[0],
915 0x00000004U);
916}
917inline ::int64_t FlowArcProto::unit_cost() const {
918 // @@protoc_insertion_point(field_get:operations_research.FlowArcProto.unit_cost)
919 return _internal_unit_cost();
920}
921inline void FlowArcProto::set_unit_cost(::int64_t value) {
922 _internal_set_unit_cost(value);
923 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
924 // @@protoc_insertion_point(field_set:operations_research.FlowArcProto.unit_cost)
925}
926inline ::int64_t FlowArcProto::_internal_unit_cost() const {
927 ::google::protobuf::internal::TSanRead(&_impl_);
928 return _impl_.unit_cost_;
929}
930inline void FlowArcProto::_internal_set_unit_cost(::int64_t value) {
931 ::google::protobuf::internal::TSanWrite(&_impl_);
932 _impl_.unit_cost_ = value;
933}
934
935// -------------------------------------------------------------------
936
937// FlowNodeProto
938
939// optional int64 id = 1;
940inline bool FlowNodeProto::has_id() const {
941 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
942 return value;
943}
944inline void FlowNodeProto::clear_id() {
945 ::google::protobuf::internal::TSanWrite(&_impl_);
946 _impl_.id_ = ::int64_t{0};
947 ClearHasBit(_impl_._has_bits_[0],
948 0x00000001U);
949}
950inline ::int64_t FlowNodeProto::id() const {
951 // @@protoc_insertion_point(field_get:operations_research.FlowNodeProto.id)
952 return _internal_id();
953}
954inline void FlowNodeProto::set_id(::int64_t value) {
955 _internal_set_id(value);
956 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
957 // @@protoc_insertion_point(field_set:operations_research.FlowNodeProto.id)
959inline ::int64_t FlowNodeProto::_internal_id() const {
960 ::google::protobuf::internal::TSanRead(&_impl_);
961 return _impl_.id_;
963inline void FlowNodeProto::_internal_set_id(::int64_t value) {
964 ::google::protobuf::internal::TSanWrite(&_impl_);
965 _impl_.id_ = value;
966}
967
968// optional int64 supply = 2 [default = 0];
969inline bool FlowNodeProto::has_supply() const {
970 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
971 return value;
972}
973inline void FlowNodeProto::clear_supply() {
974 ::google::protobuf::internal::TSanWrite(&_impl_);
975 _impl_.supply_ = ::int64_t{0};
976 ClearHasBit(_impl_._has_bits_[0],
977 0x00000002U);
978}
979inline ::int64_t FlowNodeProto::supply() const {
980 // @@protoc_insertion_point(field_get:operations_research.FlowNodeProto.supply)
981 return _internal_supply();
982}
983inline void FlowNodeProto::set_supply(::int64_t value) {
984 _internal_set_supply(value);
985 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
986 // @@protoc_insertion_point(field_set:operations_research.FlowNodeProto.supply)
988inline ::int64_t FlowNodeProto::_internal_supply() const {
989 ::google::protobuf::internal::TSanRead(&_impl_);
990 return _impl_.supply_;
992inline void FlowNodeProto::_internal_set_supply(::int64_t value) {
993 ::google::protobuf::internal::TSanWrite(&_impl_);
994 _impl_.supply_ = value;
995}
996
997// -------------------------------------------------------------------
998
999// FlowModelProto
1000
1001// repeated .operations_research.FlowNodeProto nodes = 1;
1002inline int FlowModelProto::_internal_nodes_size() const {
1003 return _internal_nodes().size();
1004}
1005inline int FlowModelProto::nodes_size() const {
1006 return _internal_nodes_size();
1007}
1008inline void FlowModelProto::clear_nodes() {
1009 ::google::protobuf::internal::TSanWrite(&_impl_);
1010 _impl_.nodes_.Clear();
1011 ClearHasBitForRepeated(_impl_._has_bits_[0],
1012 0x00000001U);
1013}
1014inline ::operations_research::FlowNodeProto* PROTOBUF_NONNULL FlowModelProto::mutable_nodes(int index)
1015 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1016 // @@protoc_insertion_point(field_mutable:operations_research.FlowModelProto.nodes)
1017 return _internal_mutable_nodes()->Mutable(index);
1018}
1019inline ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>* PROTOBUF_NONNULL FlowModelProto::mutable_nodes()
1020 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1021 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1022 // @@protoc_insertion_point(field_mutable_list:operations_research.FlowModelProto.nodes)
1023 ::google::protobuf::internal::TSanWrite(&_impl_);
1024 return _internal_mutable_nodes();
1025}
1026inline const ::operations_research::FlowNodeProto& FlowModelProto::nodes(int index) const
1027 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1028 // @@protoc_insertion_point(field_get:operations_research.FlowModelProto.nodes)
1029 return _internal_nodes().Get(index);
1030}
1031inline ::operations_research::FlowNodeProto* PROTOBUF_NONNULL FlowModelProto::add_nodes()
1032 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1033 ::google::protobuf::internal::TSanWrite(&_impl_);
1035 _internal_mutable_nodes()->InternalAddWithArena(
1036 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
1037 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
1038 // @@protoc_insertion_point(field_add:operations_research.FlowModelProto.nodes)
1039 return _add;
1041inline const ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>& FlowModelProto::nodes() const
1042 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1043 // @@protoc_insertion_point(field_list:operations_research.FlowModelProto.nodes)
1044 return _internal_nodes();
1045}
1046inline const ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>&
1047FlowModelProto::_internal_nodes() const {
1048 ::google::protobuf::internal::TSanRead(&_impl_);
1049 return _impl_.nodes_;
1051inline ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto>* PROTOBUF_NONNULL
1052FlowModelProto::_internal_mutable_nodes() {
1053 ::google::protobuf::internal::TSanRead(&_impl_);
1054 return &_impl_.nodes_;
1055}
1056
1057// repeated .operations_research.FlowArcProto arcs = 2;
1058inline int FlowModelProto::_internal_arcs_size() const {
1059 return _internal_arcs().size();
1060}
1061inline int FlowModelProto::arcs_size() const {
1062 return _internal_arcs_size();
1063}
1064inline void FlowModelProto::clear_arcs() {
1065 ::google::protobuf::internal::TSanWrite(&_impl_);
1066 _impl_.arcs_.Clear();
1067 ClearHasBitForRepeated(_impl_._has_bits_[0],
1068 0x00000002U);
1069}
1070inline ::operations_research::FlowArcProto* PROTOBUF_NONNULL FlowModelProto::mutable_arcs(int index)
1071 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1072 // @@protoc_insertion_point(field_mutable:operations_research.FlowModelProto.arcs)
1073 return _internal_mutable_arcs()->Mutable(index);
1074}
1075inline ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>* PROTOBUF_NONNULL FlowModelProto::mutable_arcs()
1076 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1077 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1078 // @@protoc_insertion_point(field_mutable_list:operations_research.FlowModelProto.arcs)
1079 ::google::protobuf::internal::TSanWrite(&_impl_);
1080 return _internal_mutable_arcs();
1081}
1082inline const ::operations_research::FlowArcProto& FlowModelProto::arcs(int index) const
1083 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1084 // @@protoc_insertion_point(field_get:operations_research.FlowModelProto.arcs)
1085 return _internal_arcs().Get(index);
1086}
1087inline ::operations_research::FlowArcProto* PROTOBUF_NONNULL FlowModelProto::add_arcs()
1088 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1089 ::google::protobuf::internal::TSanWrite(&_impl_);
1091 _internal_mutable_arcs()->InternalAddWithArena(
1092 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
1093 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
1094 // @@protoc_insertion_point(field_add:operations_research.FlowModelProto.arcs)
1095 return _add;
1097inline const ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>& FlowModelProto::arcs() const
1098 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1099 // @@protoc_insertion_point(field_list:operations_research.FlowModelProto.arcs)
1100 return _internal_arcs();
1101}
1102inline const ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>&
1103FlowModelProto::_internal_arcs() const {
1104 ::google::protobuf::internal::TSanRead(&_impl_);
1105 return _impl_.arcs_;
1107inline ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto>* PROTOBUF_NONNULL
1108FlowModelProto::_internal_mutable_arcs() {
1109 ::google::protobuf::internal::TSanRead(&_impl_);
1110 return &_impl_.arcs_;
1111}
1112
1113// optional .operations_research.FlowModelProto.ProblemType problem_type = 3;
1114inline bool FlowModelProto::has_problem_type() const {
1115 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
1116 return value;
1117}
1119 ::google::protobuf::internal::TSanWrite(&_impl_);
1120 _impl_.problem_type_ = 0;
1121 ClearHasBit(_impl_._has_bits_[0],
1122 0x00000004U);
1124inline ::operations_research::FlowModelProto_ProblemType FlowModelProto::problem_type() const {
1125 // @@protoc_insertion_point(field_get:operations_research.FlowModelProto.problem_type)
1126 return _internal_problem_type();
1129 _internal_set_problem_type(value);
1130 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
1131 // @@protoc_insertion_point(field_set:operations_research.FlowModelProto.problem_type)
1132}
1133inline ::operations_research::FlowModelProto_ProblemType FlowModelProto::_internal_problem_type() const {
1134 ::google::protobuf::internal::TSanRead(&_impl_);
1135 return static_cast<::operations_research::FlowModelProto_ProblemType>(_impl_.problem_type_);
1136}
1137inline void FlowModelProto::_internal_set_problem_type(::operations_research::FlowModelProto_ProblemType value) {
1138 ::google::protobuf::internal::TSanWrite(&_impl_);
1139
1140 assert(::google::protobuf::internal::ValidateEnum(
1142 _impl_.problem_type_ = value;
1143}
1144
1145#ifdef __GNUC__
1146#pragma GCC diagnostic pop
1147#endif // __GNUC__
1148
1149// @@protoc_insertion_point(namespace_scope)
1150} // namespace operations_research
1151
1152
1153namespace google {
1154namespace protobuf {
1155
1156template <>
1157struct is_proto_enum<::operations_research::FlowModelProto_ProblemType> : std::true_type {};
1158template <>
1159inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::FlowModelProto_ProblemType>() {
1160 return ::operations_research::FlowModelProto_ProblemType_descriptor();
1161}
1162
1163} // namespace protobuf
1164} // namespace google
1165
1166// @@protoc_insertion_point(global_scope)
1167
1168#include "google/protobuf/port_undef.inc"
1169
1170#endif // ortools_2fgraph_2fflow_5fproblem_2eproto_2epb_2eh
friend class ::google::protobuf::MessageLite
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
FlowArcProto & operator=(const FlowArcProto &from)
PROTOBUF_CONSTEXPR FlowArcProto(::google::protobuf::internal::ConstantInitialized)
void set_unit_cost(::int64_t value)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::size_t ByteSizeLong() const final
void Swap(FlowArcProto *PROTOBUF_NONNULL other)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
void MergeFrom(const FlowArcProto &from)
void CopyFrom(const FlowArcProto &from)
static const FlowArcProto & default_instance()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::operations_research::FlowNodeProto *PROTOBUF_NONNULL mutable_nodes(int index)
::operations_research::FlowNodeProto *PROTOBUF_NONNULL add_nodes()
friend class ::google::protobuf::MessageLite
::operations_research::FlowModelProto_ProblemType problem_type() const
static constexpr ProblemType ProblemType_MIN
const ::operations_research::FlowNodeProto & nodes(int index) const
void set_problem_type(::operations_research::FlowModelProto_ProblemType value)
const ::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto > & nodes() const
void Swap(FlowModelProto *PROTOBUF_NONNULL other)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::std::string & ProblemType_Name(T value)
void MergeFrom(const FlowModelProto &from)
PROTOBUF_CONSTEXPR FlowModelProto(::google::protobuf::internal::ConstantInitialized)
::operations_research::FlowArcProto *PROTOBUF_NONNULL add_arcs()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static constexpr ProblemType ProblemType_MAX
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
static constexpr int ProblemType_ARRAYSIZE
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL ProblemType_descriptor()
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
const ::operations_research::FlowArcProto & arcs(int index) const
static constexpr int kIndexInFileMessages
void CopyFrom(const FlowModelProto &from)
::google::protobuf::RepeatedPtrField<::operations_research::FlowNodeProto > *PROTOBUF_NONNULL mutable_nodes()
const ::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto > & arcs() const
::google::protobuf::RepeatedPtrField<::operations_research::FlowArcProto > *PROTOBUF_NONNULL mutable_arcs()
friend void swap(FlowModelProto &a, FlowModelProto &b)
FlowModelProto & operator=(const FlowModelProto &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static const FlowModelProto & default_instance()
FlowModelProto_ProblemType ProblemType
::operations_research::FlowArcProto *PROTOBUF_NONNULL mutable_arcs(int index)
static bool ProblemType_IsValid(int value)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::MessageLite
FlowNodeProto(const FlowNodeProto &from)
PROTOBUF_CONSTEXPR FlowNodeProto(::google::protobuf::internal::ConstantInitialized)
void CopyFrom(const FlowNodeProto &from)
void Swap(FlowNodeProto *PROTOBUF_NONNULL other)
FlowNodeProto & operator=(const FlowNodeProto &from)
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto
::absl::string_view GetAnyMessageName()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::FlowModelProto_ProblemType >()
OR-Tools root namespace.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FlowModelProtoDefaultTypeInternal _FlowModelProto_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull FlowNodeProto_class_data_
PROTOBUF_CONSTINIT const uint32_t FlowModelProto_ProblemType_internal_data_[]
bool FlowModelProto_ProblemType_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FlowNodeProtoDefaultTypeInternal _FlowNodeProto_default_instance_
@ FlowModelProto_ProblemType_LINEAR_SUM_ASSIGNMENT
constexpr FlowModelProto_ProblemType FlowModelProto_ProblemType_ProblemType_MIN
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull FlowArcProto_class_data_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL FlowModelProto_ProblemType_descriptor()
bool FlowModelProto_ProblemType_Parse(::absl::string_view name, FlowModelProto_ProblemType *PROTOBUF_NONNULL value)
constexpr FlowModelProto_ProblemType FlowModelProto_ProblemType_ProblemType_MAX
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull FlowModelProto_class_data_
const ::std::string & FlowModelProto_ProblemType_Name(T value)
constexpr int FlowModelProto_ProblemType_ProblemType_ARRAYSIZE
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FlowArcProtoDefaultTypeInternal _FlowArcProto_default_instance_