Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
jobshop_scheduling.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/scheduling/jobshop_scheduling.proto
4// Protobuf C++ Version: 6.33.1
5
6#ifndef ortools_2fscheduling_2fjobshop_5fscheduling_2eproto_2epb_2eh
7#define ortools_2fscheduling_2fjobshop_5fscheduling_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/unknown_field_set.h"
32#include "google/protobuf/wrappers.pb.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_2fscheduling_2fjobshop_5fscheduling_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_2fscheduling_2fjobshop_5fscheduling_2eproto;
55} // extern "C"
56namespace operations_research {
57namespace scheduling {
58namespace jssp {
59class AssignedJob;
62OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AssignedJob_class_data_;
63class AssignedTask;
66OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AssignedTask_class_data_;
67class Job;
70OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Job_class_data_;
71class JobPrecedence;
74OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JobPrecedence_class_data_;
78OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JsspInputProblem_class_data_;
82OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JsspOutputSolution_class_data_;
83class Machine;
86OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Machine_class_data_;
87class Task;
90OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Task_class_data_;
94OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull TransitionTimeMatrix_class_data_;
95} // namespace jssp
96} // namespace scheduling
97} // namespace operations_research
98namespace google {
99namespace protobuf {
100} // namespace protobuf
101} // namespace google
102
103namespace operations_research {
104namespace scheduling {
105namespace jssp {
106
107// ===================================================================
108
109
110// -------------------------------------------------------------------
111
112class OR_PROTO_DLL TransitionTimeMatrix final : public ::google::protobuf::Message
113/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.TransitionTimeMatrix) */ {
114 public:
115 inline TransitionTimeMatrix() : TransitionTimeMatrix(nullptr) {}
116 ~TransitionTimeMatrix() PROTOBUF_FINAL;
118#if defined(PROTOBUF_CUSTOM_VTABLE)
119 void operator delete(TransitionTimeMatrix* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
120 SharedDtor(*msg);
121 ::google::protobuf::internal::SizedDelete(msg, sizeof(TransitionTimeMatrix));
122 }
123#endif
124
125 template <typename = void>
126 explicit PROTOBUF_CONSTEXPR TransitionTimeMatrix(::google::protobuf::internal::ConstantInitialized);
127
128 inline TransitionTimeMatrix(const TransitionTimeMatrix& from) : TransitionTimeMatrix(nullptr, from) {}
129 inline TransitionTimeMatrix(TransitionTimeMatrix&& from) noexcept
130 : TransitionTimeMatrix(nullptr, ::std::move(from)) {}
133 return *this;
134 }
135 inline TransitionTimeMatrix& operator=(TransitionTimeMatrix&& from) noexcept {
136 if (this == &from) return *this;
137 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
138 InternalSwap(&from);
139 } else {
140 CopyFrom(from);
141 }
142 return *this;
143 }
144
145 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
146 ABSL_ATTRIBUTE_LIFETIME_BOUND {
147 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
148 }
149 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
150 ABSL_ATTRIBUTE_LIFETIME_BOUND {
151 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
152 }
153
154 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
155 return GetDescriptor();
157 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
158 return default_instance().GetMetadata().descriptor;
160 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
161 return default_instance().GetMetadata().reflection;
163 static const TransitionTimeMatrix& default_instance() {
164 return *reinterpret_cast<const TransitionTimeMatrix*>(
166 }
167 static constexpr int kIndexInFileMessages = 2;
168 friend void swap(TransitionTimeMatrix& a, TransitionTimeMatrix& b) { a.Swap(&b); }
169 inline void Swap(TransitionTimeMatrix* PROTOBUF_NONNULL other) {
170 if (other == this) return;
171 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
172 InternalSwap(other);
173 } else {
174 ::google::protobuf::internal::GenericSwap(this, other);
175 }
176 }
177 void UnsafeArenaSwap(TransitionTimeMatrix* PROTOBUF_NONNULL other) {
178 if (other == this) return;
179 ABSL_DCHECK(GetArena() == other->GetArena());
180 InternalSwap(other);
181 }
182
183 // implements Message ----------------------------------------------
184
185 TransitionTimeMatrix* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
186 return ::google::protobuf::Message::DefaultConstruct<TransitionTimeMatrix>(arena);
188 using ::google::protobuf::Message::CopyFrom;
189 void CopyFrom(const TransitionTimeMatrix& from);
190 using ::google::protobuf::Message::MergeFrom;
191 void MergeFrom(const TransitionTimeMatrix& from) { TransitionTimeMatrix::MergeImpl(*this, from); }
192
193 private:
194 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
195 const ::google::protobuf::MessageLite& from_msg);
196
197 public:
198 bool IsInitialized() const {
199 return true;
201 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
202 #if defined(PROTOBUF_CUSTOM_VTABLE)
203 private:
204 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
205 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
206 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
207 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
208
209 public:
210 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
211 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
212 ::uint8_t* PROTOBUF_NONNULL target,
213 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
214 return _InternalSerialize(*this, target, stream);
215 }
216 #else // PROTOBUF_CUSTOM_VTABLE
217 ::size_t ByteSizeLong() const final;
218 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
219 ::uint8_t* PROTOBUF_NONNULL target,
220 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
221 #endif // PROTOBUF_CUSTOM_VTABLE
222 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
223
224 private:
225 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
226 static void SharedDtor(MessageLite& self);
227 void InternalSwap(TransitionTimeMatrix* PROTOBUF_NONNULL other);
228 private:
229 template <typename T>
230 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
231 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.TransitionTimeMatrix"; }
232
233 explicit TransitionTimeMatrix(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
234 TransitionTimeMatrix(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const TransitionTimeMatrix& from);
236 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, TransitionTimeMatrix&& from) noexcept
237 : TransitionTimeMatrix(arena) {
238 *this = ::std::move(from);
239 }
240 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
241 static void* PROTOBUF_NONNULL PlacementNew_(
242 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
243 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
244 static constexpr auto InternalNewImpl_();
245
246 public:
247 static constexpr auto InternalGenerateClassData_();
248
249 ::google::protobuf::Metadata GetMetadata() const;
250 // nested types ----------------------------------------------------
251
252 // accessors -------------------------------------------------------
253 enum : int {
254 kTransitionTimeFieldNumber = 1,
255 };
256 // repeated int64 transition_time = 1;
257 int transition_time_size() const;
258 private:
259 int _internal_transition_time_size() const;
260
261 public:
262 void clear_transition_time() ;
263 ::int64_t transition_time(int index) const;
264 void set_transition_time(int index, ::int64_t value);
265 void add_transition_time(::int64_t value);
266 const ::google::protobuf::RepeatedField<::int64_t>& transition_time() const;
267 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_transition_time();
268
269 private:
270 const ::google::protobuf::RepeatedField<::int64_t>& _internal_transition_time() const;
271 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_transition_time();
272
273 public:
274 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.TransitionTimeMatrix)
275 private:
276 class _Internal;
277 friend class ::google::protobuf::internal::TcParser;
278 static const ::google::protobuf::internal::TcParseTable<0, 1,
279 0, 0,
280 2>
281 _table_;
282
283 friend class ::google::protobuf::MessageLite;
284 friend class ::google::protobuf::Arena;
285 template <typename T>
286 friend class ::google::protobuf::Arena::InternalHelper;
287 using InternalArenaConstructable_ = void;
288 using DestructorSkippable_ = void;
289 struct Impl_ {
290 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
291 inline explicit Impl_(
292 ::google::protobuf::internal::InternalVisibility visibility,
293 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
294 inline explicit Impl_(
295 ::google::protobuf::internal::InternalVisibility visibility,
296 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
297 const TransitionTimeMatrix& from_msg);
298 ::google::protobuf::internal::HasBits<1> _has_bits_;
299 ::google::protobuf::internal::CachedSize _cached_size_;
300 ::google::protobuf::RepeatedField<::int64_t> transition_time_;
301 ::google::protobuf::internal::CachedSize _transition_time_cached_byte_size_;
302 PROTOBUF_TSAN_DECLARE_MEMBER
303 };
304 union { Impl_ _impl_; };
305 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
308OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull TransitionTimeMatrix_class_data_;
309// -------------------------------------------------------------------
310
311class OR_PROTO_DLL Task final : public ::google::protobuf::Message
312/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.Task) */ {
313 public:
314 inline Task() : Task(nullptr) {}
315 ~Task() PROTOBUF_FINAL;
316
317#if defined(PROTOBUF_CUSTOM_VTABLE)
318 void operator delete(Task* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
319 SharedDtor(*msg);
320 ::google::protobuf::internal::SizedDelete(msg, sizeof(Task));
321 }
322#endif
323
324 template <typename = void>
325 explicit PROTOBUF_CONSTEXPR Task(::google::protobuf::internal::ConstantInitialized);
326
327 inline Task(const Task& from) : Task(nullptr, from) {}
328 inline Task(Task&& from) noexcept
329 : Task(nullptr, ::std::move(from)) {}
330 inline Task& operator=(const Task& from) {
331 CopyFrom(from);
332 return *this;
334 inline Task& operator=(Task&& from) noexcept {
335 if (this == &from) return *this;
336 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
337 InternalSwap(&from);
338 } else {
339 CopyFrom(from);
340 }
341 return *this;
342 }
343
344 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
345 ABSL_ATTRIBUTE_LIFETIME_BOUND {
346 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
348 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
349 ABSL_ATTRIBUTE_LIFETIME_BOUND {
350 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
352
353 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
354 return GetDescriptor();
355 }
356 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
357 return default_instance().GetMetadata().descriptor;
358 }
359 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
360 return default_instance().GetMetadata().reflection;
361 }
362 static const Task& default_instance() {
363 return *reinterpret_cast<const Task*>(
366 static constexpr int kIndexInFileMessages = 0;
367 friend void swap(Task& a, Task& b) { a.Swap(&b); }
368 inline void Swap(Task* PROTOBUF_NONNULL other) {
369 if (other == this) return;
370 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
371 InternalSwap(other);
372 } else {
373 ::google::protobuf::internal::GenericSwap(this, other);
374 }
375 }
376 void UnsafeArenaSwap(Task* PROTOBUF_NONNULL other) {
377 if (other == this) return;
378 ABSL_DCHECK(GetArena() == other->GetArena());
379 InternalSwap(other);
380 }
381
382 // implements Message ----------------------------------------------
383
384 Task* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
385 return ::google::protobuf::Message::DefaultConstruct<Task>(arena);
386 }
387 using ::google::protobuf::Message::CopyFrom;
388 void CopyFrom(const Task& from);
389 using ::google::protobuf::Message::MergeFrom;
390 void MergeFrom(const Task& from) { Task::MergeImpl(*this, from); }
391
392 private:
393 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
394 const ::google::protobuf::MessageLite& from_msg);
395
396 public:
397 bool IsInitialized() const {
398 return true;
399 }
400 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
401 #if defined(PROTOBUF_CUSTOM_VTABLE)
402 private:
403 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
404 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
405 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
406 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
407
408 public:
409 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
410 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
411 ::uint8_t* PROTOBUF_NONNULL target,
412 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
413 return _InternalSerialize(*this, target, stream);
414 }
415 #else // PROTOBUF_CUSTOM_VTABLE
416 ::size_t ByteSizeLong() const final;
417 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
418 ::uint8_t* PROTOBUF_NONNULL target,
419 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
420 #endif // PROTOBUF_CUSTOM_VTABLE
421 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
422
423 private:
424 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
425 static void SharedDtor(MessageLite& self);
426 void InternalSwap(Task* PROTOBUF_NONNULL other);
427 private:
428 template <typename T>
429 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
430 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.Task"; }
431
432 explicit Task(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
433 Task(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Task& from);
434 Task(
435 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Task&& from) noexcept
436 : Task(arena) {
437 *this = ::std::move(from);
438 }
439 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
440 static void* PROTOBUF_NONNULL PlacementNew_(
441 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
442 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
443 static constexpr auto InternalNewImpl_();
444
445 public:
446 static constexpr auto InternalGenerateClassData_();
447
448 ::google::protobuf::Metadata GetMetadata() const;
449 // nested types ----------------------------------------------------
450
451 // accessors -------------------------------------------------------
452 enum : int {
453 kMachineFieldNumber = 1,
454 kDurationFieldNumber = 2,
455 kCostFieldNumber = 3,
456 };
457 // repeated int32 machine = 1;
458 int machine_size() const;
459 private:
460 int _internal_machine_size() const;
461
462 public:
463 void clear_machine() ;
464 ::int32_t machine(int index) const;
465 void set_machine(int index, ::int32_t value);
466 void add_machine(::int32_t value);
467 const ::google::protobuf::RepeatedField<::int32_t>& machine() const;
468 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL mutable_machine();
469
470 private:
471 const ::google::protobuf::RepeatedField<::int32_t>& _internal_machine() const;
472 ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL _internal_mutable_machine();
473
474 public:
475 // repeated int64 duration = 2;
476 int duration_size() const;
477 private:
478 int _internal_duration_size() const;
479
480 public:
481 void clear_duration() ;
482 ::int64_t duration(int index) const;
483 void set_duration(int index, ::int64_t value);
484 void add_duration(::int64_t value);
485 const ::google::protobuf::RepeatedField<::int64_t>& duration() const;
486 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_duration();
487
488 private:
489 const ::google::protobuf::RepeatedField<::int64_t>& _internal_duration() const;
490 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_duration();
491
492 public:
493 // repeated int64 cost = 3;
494 int cost_size() const;
495 private:
496 int _internal_cost_size() const;
497
498 public:
499 void clear_cost() ;
500 ::int64_t cost(int index) const;
501 void set_cost(int index, ::int64_t value);
502 void add_cost(::int64_t value);
503 const ::google::protobuf::RepeatedField<::int64_t>& cost() const;
504 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_cost();
505
506 private:
507 const ::google::protobuf::RepeatedField<::int64_t>& _internal_cost() const;
508 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_cost();
509
510 public:
511 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.Task)
512 private:
513 class _Internal;
514 friend class ::google::protobuf::internal::TcParser;
515 static const ::google::protobuf::internal::TcParseTable<2, 3,
516 0, 0,
517 2>
518 _table_;
519
520 friend class ::google::protobuf::MessageLite;
521 friend class ::google::protobuf::Arena;
522 template <typename T>
523 friend class ::google::protobuf::Arena::InternalHelper;
524 using InternalArenaConstructable_ = void;
525 using DestructorSkippable_ = void;
526 struct Impl_ {
527 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
528 inline explicit Impl_(
529 ::google::protobuf::internal::InternalVisibility visibility,
530 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
531 inline explicit Impl_(
532 ::google::protobuf::internal::InternalVisibility visibility,
533 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
534 const Task& from_msg);
535 ::google::protobuf::internal::HasBits<1> _has_bits_;
536 ::google::protobuf::internal::CachedSize _cached_size_;
537 ::google::protobuf::RepeatedField<::int32_t> machine_;
538 ::google::protobuf::internal::CachedSize _machine_cached_byte_size_;
539 ::google::protobuf::RepeatedField<::int64_t> duration_;
540 ::google::protobuf::internal::CachedSize _duration_cached_byte_size_;
541 ::google::protobuf::RepeatedField<::int64_t> cost_;
542 ::google::protobuf::internal::CachedSize _cost_cached_byte_size_;
543 PROTOBUF_TSAN_DECLARE_MEMBER
544 };
545 union { Impl_ _impl_; };
546 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
547};
549OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Task_class_data_;
550// -------------------------------------------------------------------
551
552class OR_PROTO_DLL JobPrecedence final : public ::google::protobuf::Message
553/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.JobPrecedence) */ {
554 public:
555 inline JobPrecedence() : JobPrecedence(nullptr) {}
556 ~JobPrecedence() PROTOBUF_FINAL;
557
558#if defined(PROTOBUF_CUSTOM_VTABLE)
559 void operator delete(JobPrecedence* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
560 SharedDtor(*msg);
561 ::google::protobuf::internal::SizedDelete(msg, sizeof(JobPrecedence));
562 }
563#endif
564
565 template <typename = void>
566 explicit PROTOBUF_CONSTEXPR JobPrecedence(::google::protobuf::internal::ConstantInitialized);
567
568 inline JobPrecedence(const JobPrecedence& from) : JobPrecedence(nullptr, from) {}
569 inline JobPrecedence(JobPrecedence&& from) noexcept
570 : JobPrecedence(nullptr, ::std::move(from)) {}
571 inline JobPrecedence& operator=(const JobPrecedence& from) {
572 CopyFrom(from);
573 return *this;
574 }
575 inline JobPrecedence& operator=(JobPrecedence&& from) noexcept {
576 if (this == &from) return *this;
577 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
578 InternalSwap(&from);
579 } else {
580 CopyFrom(from);
581 }
582 return *this;
583 }
584
585 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
586 ABSL_ATTRIBUTE_LIFETIME_BOUND {
587 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
588 }
589 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
590 ABSL_ATTRIBUTE_LIFETIME_BOUND {
591 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
592 }
594 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
595 return GetDescriptor();
596 }
597 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
598 return default_instance().GetMetadata().descriptor;
599 }
600 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
601 return default_instance().GetMetadata().reflection;
602 }
603 static const JobPrecedence& default_instance() {
604 return *reinterpret_cast<const JobPrecedence*>(
606 }
607 static constexpr int kIndexInFileMessages = 4;
608 friend void swap(JobPrecedence& a, JobPrecedence& b) { a.Swap(&b); }
609 inline void Swap(JobPrecedence* PROTOBUF_NONNULL other) {
610 if (other == this) return;
611 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
612 InternalSwap(other);
613 } else {
614 ::google::protobuf::internal::GenericSwap(this, other);
615 }
616 }
617 void UnsafeArenaSwap(JobPrecedence* PROTOBUF_NONNULL other) {
618 if (other == this) return;
619 ABSL_DCHECK(GetArena() == other->GetArena());
620 InternalSwap(other);
622
623 // implements Message ----------------------------------------------
624
625 JobPrecedence* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
626 return ::google::protobuf::Message::DefaultConstruct<JobPrecedence>(arena);
627 }
628 using ::google::protobuf::Message::CopyFrom;
629 void CopyFrom(const JobPrecedence& from);
630 using ::google::protobuf::Message::MergeFrom;
631 void MergeFrom(const JobPrecedence& from) { JobPrecedence::MergeImpl(*this, from); }
632
633 private:
634 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
635 const ::google::protobuf::MessageLite& from_msg);
636
637 public:
638 bool IsInitialized() const {
639 return true;
640 }
641 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
642 #if defined(PROTOBUF_CUSTOM_VTABLE)
643 private:
644 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
645 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
646 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
647 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
648
649 public:
650 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
651 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
652 ::uint8_t* PROTOBUF_NONNULL target,
653 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
654 return _InternalSerialize(*this, target, stream);
655 }
656 #else // PROTOBUF_CUSTOM_VTABLE
657 ::size_t ByteSizeLong() const final;
658 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
659 ::uint8_t* PROTOBUF_NONNULL target,
660 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
661 #endif // PROTOBUF_CUSTOM_VTABLE
662 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
663
664 private:
665 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
666 static void SharedDtor(MessageLite& self);
667 void InternalSwap(JobPrecedence* PROTOBUF_NONNULL other);
668 private:
669 template <typename T>
670 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
671 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.JobPrecedence"; }
672
673 explicit JobPrecedence(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
674 JobPrecedence(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const JobPrecedence& from);
676 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, JobPrecedence&& from) noexcept
677 : JobPrecedence(arena) {
678 *this = ::std::move(from);
679 }
680 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
681 static void* PROTOBUF_NONNULL PlacementNew_(
682 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
683 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
684 static constexpr auto InternalNewImpl_();
685
686 public:
687 static constexpr auto InternalGenerateClassData_();
688
689 ::google::protobuf::Metadata GetMetadata() const;
690 // nested types ----------------------------------------------------
691
692 // accessors -------------------------------------------------------
693 enum : int {
694 kFirstJobIndexFieldNumber = 1,
695 kSecondJobIndexFieldNumber = 2,
696 kMinDelayFieldNumber = 3,
697 };
698 // int32 first_job_index = 1;
700 ::int32_t first_job_index() const;
701 void set_first_job_index(::int32_t value);
702
703 private:
704 ::int32_t _internal_first_job_index() const;
705 void _internal_set_first_job_index(::int32_t value);
706
707 public:
708 // int32 second_job_index = 2;
710 ::int32_t second_job_index() const;
711 void set_second_job_index(::int32_t value);
712
713 private:
714 ::int32_t _internal_second_job_index() const;
715 void _internal_set_second_job_index(::int32_t value);
716
717 public:
718 // int64 min_delay = 3;
719 void clear_min_delay() ;
720 ::int64_t min_delay() const;
721 void set_min_delay(::int64_t value);
722
723 private:
724 ::int64_t _internal_min_delay() const;
725 void _internal_set_min_delay(::int64_t value);
726
727 public:
728 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.JobPrecedence)
729 private:
730 class _Internal;
731 friend class ::google::protobuf::internal::TcParser;
732 static const ::google::protobuf::internal::TcParseTable<2, 3,
733 0, 0,
734 2>
735 _table_;
736
737 friend class ::google::protobuf::MessageLite;
738 friend class ::google::protobuf::Arena;
739 template <typename T>
740 friend class ::google::protobuf::Arena::InternalHelper;
741 using InternalArenaConstructable_ = void;
742 using DestructorSkippable_ = void;
743 struct Impl_ {
744 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
745 inline explicit Impl_(
746 ::google::protobuf::internal::InternalVisibility visibility,
747 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
748 inline explicit Impl_(
749 ::google::protobuf::internal::InternalVisibility visibility,
750 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
751 const JobPrecedence& from_msg);
752 ::google::protobuf::internal::HasBits<1> _has_bits_;
753 ::google::protobuf::internal::CachedSize _cached_size_;
754 ::int32_t first_job_index_;
755 ::int32_t second_job_index_;
756 ::int64_t min_delay_;
757 PROTOBUF_TSAN_DECLARE_MEMBER
758 };
759 union { Impl_ _impl_; };
760 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
761};
762
763OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JobPrecedence_class_data_;
764// -------------------------------------------------------------------
765
766class OR_PROTO_DLL AssignedTask final : public ::google::protobuf::Message
767/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.AssignedTask) */ {
768 public:
769 inline AssignedTask() : AssignedTask(nullptr) {}
770 ~AssignedTask() PROTOBUF_FINAL;
772#if defined(PROTOBUF_CUSTOM_VTABLE)
773 void operator delete(AssignedTask* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
774 SharedDtor(*msg);
775 ::google::protobuf::internal::SizedDelete(msg, sizeof(AssignedTask));
776 }
777#endif
778
779 template <typename = void>
780 explicit PROTOBUF_CONSTEXPR AssignedTask(::google::protobuf::internal::ConstantInitialized);
781
782 inline AssignedTask(const AssignedTask& from) : AssignedTask(nullptr, from) {}
783 inline AssignedTask(AssignedTask&& from) noexcept
784 : AssignedTask(nullptr, ::std::move(from)) {}
785 inline AssignedTask& operator=(const AssignedTask& from) {
786 CopyFrom(from);
787 return *this;
789 inline AssignedTask& operator=(AssignedTask&& from) noexcept {
790 if (this == &from) return *this;
791 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
792 InternalSwap(&from);
793 } else {
794 CopyFrom(from);
795 }
796 return *this;
797 }
798
799 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
800 ABSL_ATTRIBUTE_LIFETIME_BOUND {
801 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
802 }
803 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
804 ABSL_ATTRIBUTE_LIFETIME_BOUND {
805 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
806 }
807
808 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
809 return GetDescriptor();
810 }
811 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
812 return default_instance().GetMetadata().descriptor;
814 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
815 return default_instance().GetMetadata().reflection;
817 static const AssignedTask& default_instance() {
818 return *reinterpret_cast<const AssignedTask*>(
820 }
821 static constexpr int kIndexInFileMessages = 6;
822 friend void swap(AssignedTask& a, AssignedTask& b) { a.Swap(&b); }
823 inline void Swap(AssignedTask* PROTOBUF_NONNULL other) {
824 if (other == this) return;
825 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
826 InternalSwap(other);
827 } else {
828 ::google::protobuf::internal::GenericSwap(this, other);
829 }
830 }
831 void UnsafeArenaSwap(AssignedTask* PROTOBUF_NONNULL other) {
832 if (other == this) return;
833 ABSL_DCHECK(GetArena() == other->GetArena());
834 InternalSwap(other);
835 }
837 // implements Message ----------------------------------------------
838
839 AssignedTask* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
840 return ::google::protobuf::Message::DefaultConstruct<AssignedTask>(arena);
841 }
842 using ::google::protobuf::Message::CopyFrom;
843 void CopyFrom(const AssignedTask& from);
844 using ::google::protobuf::Message::MergeFrom;
845 void MergeFrom(const AssignedTask& from) { AssignedTask::MergeImpl(*this, from); }
846
847 private:
848 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
849 const ::google::protobuf::MessageLite& from_msg);
851 public:
852 bool IsInitialized() const {
853 return true;
854 }
855 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
856 #if defined(PROTOBUF_CUSTOM_VTABLE)
857 private:
858 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
859 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
860 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
861 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
862
863 public:
864 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
865 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
866 ::uint8_t* PROTOBUF_NONNULL target,
867 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
868 return _InternalSerialize(*this, target, stream);
869 }
870 #else // PROTOBUF_CUSTOM_VTABLE
871 ::size_t ByteSizeLong() const final;
872 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
873 ::uint8_t* PROTOBUF_NONNULL target,
874 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
875 #endif // PROTOBUF_CUSTOM_VTABLE
876 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
877
878 private:
879 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
880 static void SharedDtor(MessageLite& self);
881 void InternalSwap(AssignedTask* PROTOBUF_NONNULL other);
882 private:
883 template <typename T>
884 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
885 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.AssignedTask"; }
886
887 explicit AssignedTask(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
888 AssignedTask(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const AssignedTask& from);
890 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, AssignedTask&& from) noexcept
891 : AssignedTask(arena) {
892 *this = ::std::move(from);
893 }
894 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
895 static void* PROTOBUF_NONNULL PlacementNew_(
896 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
897 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
898 static constexpr auto InternalNewImpl_();
899
900 public:
901 static constexpr auto InternalGenerateClassData_();
902
903 ::google::protobuf::Metadata GetMetadata() const;
904 // nested types ----------------------------------------------------
905
906 // accessors -------------------------------------------------------
907 enum : int {
908 kStartTimeFieldNumber = 2,
909 kAlternativeIndexFieldNumber = 1,
910 };
911 // int64 start_time = 2;
912 void clear_start_time() ;
913 ::int64_t start_time() const;
914 void set_start_time(::int64_t value);
915
916 private:
917 ::int64_t _internal_start_time() const;
918 void _internal_set_start_time(::int64_t value);
919
920 public:
921 // int32 alternative_index = 1;
923 ::int32_t alternative_index() const;
924 void set_alternative_index(::int32_t value);
925
926 private:
927 ::int32_t _internal_alternative_index() const;
928 void _internal_set_alternative_index(::int32_t value);
929
930 public:
931 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.AssignedTask)
932 private:
933 class _Internal;
934 friend class ::google::protobuf::internal::TcParser;
935 static const ::google::protobuf::internal::TcParseTable<1, 2,
936 0, 0,
937 2>
938 _table_;
940 friend class ::google::protobuf::MessageLite;
941 friend class ::google::protobuf::Arena;
942 template <typename T>
943 friend class ::google::protobuf::Arena::InternalHelper;
944 using InternalArenaConstructable_ = void;
945 using DestructorSkippable_ = void;
946 struct Impl_ {
947 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
948 inline explicit Impl_(
949 ::google::protobuf::internal::InternalVisibility visibility,
950 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
951 inline explicit Impl_(
952 ::google::protobuf::internal::InternalVisibility visibility,
953 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
954 const AssignedTask& from_msg);
955 ::google::protobuf::internal::HasBits<1> _has_bits_;
956 ::google::protobuf::internal::CachedSize _cached_size_;
957 ::int64_t start_time_;
958 ::int32_t alternative_index_;
959 PROTOBUF_TSAN_DECLARE_MEMBER
960 };
961 union { Impl_ _impl_; };
962 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
963};
964
965OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AssignedTask_class_data_;
966// -------------------------------------------------------------------
968class OR_PROTO_DLL Machine final : public ::google::protobuf::Message
969/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.Machine) */ {
970 public:
971 inline Machine() : Machine(nullptr) {}
972 ~Machine() PROTOBUF_FINAL;
973
974#if defined(PROTOBUF_CUSTOM_VTABLE)
975 void operator delete(Machine* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
976 SharedDtor(*msg);
977 ::google::protobuf::internal::SizedDelete(msg, sizeof(Machine));
978 }
979#endif
980
981 template <typename = void>
982 explicit PROTOBUF_CONSTEXPR Machine(::google::protobuf::internal::ConstantInitialized);
983
984 inline Machine(const Machine& from) : Machine(nullptr, from) {}
985 inline Machine(Machine&& from) noexcept
986 : Machine(nullptr, ::std::move(from)) {}
987 inline Machine& operator=(const Machine& from) {
988 CopyFrom(from);
989 return *this;
991 inline Machine& operator=(Machine&& from) noexcept {
992 if (this == &from) return *this;
993 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
994 InternalSwap(&from);
995 } else {
996 CopyFrom(from);
998 return *this;
999 }
1000
1001 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1002 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1003 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1004 }
1005 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1006 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1007 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1008 }
1009
1010 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1012 }
1013 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1014 return default_instance().GetMetadata().descriptor;
1015 }
1016 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1017 return default_instance().GetMetadata().reflection;
1018 }
1019 static const Machine& default_instance() {
1020 return *reinterpret_cast<const Machine*>(
1023 static constexpr int kIndexInFileMessages = 3;
1024 friend void swap(Machine& a, Machine& b) { a.Swap(&b); }
1025 inline void Swap(Machine* PROTOBUF_NONNULL other) {
1026 if (other == this) return;
1027 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1028 InternalSwap(other);
1029 } else {
1030 ::google::protobuf::internal::GenericSwap(this, other);
1032 }
1033 void UnsafeArenaSwap(Machine* PROTOBUF_NONNULL other) {
1034 if (other == this) return;
1035 ABSL_DCHECK(GetArena() == other->GetArena());
1036 InternalSwap(other);
1037 }
1038
1039 // implements Message ----------------------------------------------
1040
1041 Machine* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1042 return ::google::protobuf::Message::DefaultConstruct<Machine>(arena);
1043 }
1044 using ::google::protobuf::Message::CopyFrom;
1045 void CopyFrom(const Machine& from);
1046 using ::google::protobuf::Message::MergeFrom;
1047 void MergeFrom(const Machine& from) { Machine::MergeImpl(*this, from); }
1048
1049 private:
1050 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1051 const ::google::protobuf::MessageLite& from_msg);
1052
1053 public:
1054 bool IsInitialized() const {
1055 return true;
1056 }
1057 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1058 #if defined(PROTOBUF_CUSTOM_VTABLE)
1059 private:
1060 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1061 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1062 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1063 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1064
1065 public:
1066 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1067 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1068 ::uint8_t* PROTOBUF_NONNULL target,
1069 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1070 return _InternalSerialize(*this, target, stream);
1071 }
1072 #else // PROTOBUF_CUSTOM_VTABLE
1073 ::size_t ByteSizeLong() const final;
1074 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1075 ::uint8_t* PROTOBUF_NONNULL target,
1076 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1077 #endif // PROTOBUF_CUSTOM_VTABLE
1078 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1079
1080 private:
1081 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1082 static void SharedDtor(MessageLite& self);
1083 void InternalSwap(Machine* PROTOBUF_NONNULL other);
1084 private:
1085 template <typename T>
1086 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1087 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.Machine"; }
1088
1089 explicit Machine(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1090 Machine(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Machine& from);
1091 Machine(
1092 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Machine&& from) noexcept
1093 : Machine(arena) {
1094 *this = ::std::move(from);
1095 }
1096 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1097 static void* PROTOBUF_NONNULL PlacementNew_(
1098 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1099 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1100 static constexpr auto InternalNewImpl_();
1101
1102 public:
1103 static constexpr auto InternalGenerateClassData_();
1104
1105 ::google::protobuf::Metadata GetMetadata() const;
1106 // nested types ----------------------------------------------------
1107
1108 // accessors -------------------------------------------------------
1109 enum : int {
1110 kNameFieldNumber = 16,
1111 kTransitionTimeMatrixFieldNumber = 1,
1112 };
1113 // string name = 16;
1114 void clear_name() ;
1115 const ::std::string& name() const;
1116 template <typename Arg_ = const ::std::string&, typename... Args_>
1117 void set_name(Arg_&& arg, Args_... args);
1118 ::std::string* PROTOBUF_NONNULL mutable_name();
1119 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
1120 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
1121
1122 private:
1123 const ::std::string& _internal_name() const;
1124 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
1125 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
1126
1127 public:
1128 // .operations_research.scheduling.jssp.TransitionTimeMatrix transition_time_matrix = 1;
1129 bool has_transition_time_matrix() const;
1131 const ::operations_research::scheduling::jssp::TransitionTimeMatrix& transition_time_matrix() const;
1137
1138 private:
1139 const ::operations_research::scheduling::jssp::TransitionTimeMatrix& _internal_transition_time_matrix() const;
1140 ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NONNULL _internal_mutable_transition_time_matrix();
1141
1142 public:
1143 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.Machine)
1144 private:
1145 class _Internal;
1146 friend class ::google::protobuf::internal::TcParser;
1147 static const ::google::protobuf::internal::TcParseTable<1, 2,
1148 1, 56,
1149 2>
1150 _table_;
1151
1152 friend class ::google::protobuf::MessageLite;
1153 friend class ::google::protobuf::Arena;
1154 template <typename T>
1155 friend class ::google::protobuf::Arena::InternalHelper;
1156 using InternalArenaConstructable_ = void;
1157 using DestructorSkippable_ = void;
1158 struct Impl_ {
1159 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1160 inline explicit Impl_(
1161 ::google::protobuf::internal::InternalVisibility visibility,
1162 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1163 inline explicit Impl_(
1164 ::google::protobuf::internal::InternalVisibility visibility,
1165 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1166 const Machine& from_msg);
1167 ::google::protobuf::internal::HasBits<1> _has_bits_;
1168 ::google::protobuf::internal::CachedSize _cached_size_;
1169 ::google::protobuf::internal::ArenaStringPtr name_;
1170 ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NULLABLE transition_time_matrix_;
1171 PROTOBUF_TSAN_DECLARE_MEMBER
1172 };
1173 union { Impl_ _impl_; };
1174 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
1175};
1176
1177OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Machine_class_data_;
1178// -------------------------------------------------------------------
1180class OR_PROTO_DLL Job final : public ::google::protobuf::Message
1181/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.Job) */ {
1182 public:
1183 inline Job() : Job(nullptr) {}
1184 ~Job() PROTOBUF_FINAL;
1185
1186#if defined(PROTOBUF_CUSTOM_VTABLE)
1187 void operator delete(Job* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1188 SharedDtor(*msg);
1189 ::google::protobuf::internal::SizedDelete(msg, sizeof(Job));
1191#endif
1192
1193 template <typename = void>
1194 explicit PROTOBUF_CONSTEXPR Job(::google::protobuf::internal::ConstantInitialized);
1195
1196 inline Job(const Job& from) : Job(nullptr, from) {}
1197 inline Job(Job&& from) noexcept
1198 : Job(nullptr, ::std::move(from)) {}
1199 inline Job& operator=(const Job& from) {
1200 CopyFrom(from);
1201 return *this;
1202 }
1203 inline Job& operator=(Job&& from) noexcept {
1204 if (this == &from) return *this;
1205 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1206 InternalSwap(&from);
1207 } else {
1208 CopyFrom(from);
1209 }
1210 return *this;
1211 }
1212
1213 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1214 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1215 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1216 }
1217 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1218 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1219 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1221
1222 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1223 return GetDescriptor();
1225 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1226 return default_instance().GetMetadata().descriptor;
1227 }
1228 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1229 return default_instance().GetMetadata().reflection;
1230 }
1231 static const Job& default_instance() {
1232 return *reinterpret_cast<const Job*>(
1234 }
1235 static constexpr int kIndexInFileMessages = 1;
1236 friend void swap(Job& a, Job& b) { a.Swap(&b); }
1237 inline void Swap(Job* PROTOBUF_NONNULL other) {
1238 if (other == this) return;
1239 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1240 InternalSwap(other);
1241 } else {
1242 ::google::protobuf::internal::GenericSwap(this, other);
1245 void UnsafeArenaSwap(Job* PROTOBUF_NONNULL other) {
1246 if (other == this) return;
1247 ABSL_DCHECK(GetArena() == other->GetArena());
1248 InternalSwap(other);
1249 }
1250
1251 // implements Message ----------------------------------------------
1253 Job* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1254 return ::google::protobuf::Message::DefaultConstruct<Job>(arena);
1255 }
1256 using ::google::protobuf::Message::CopyFrom;
1257 void CopyFrom(const Job& from);
1258 using ::google::protobuf::Message::MergeFrom;
1259 void MergeFrom(const Job& from) { Job::MergeImpl(*this, from); }
1261 private:
1262 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1263 const ::google::protobuf::MessageLite& from_msg);
1264
1265 public:
1266 bool IsInitialized() const {
1267 return true;
1268 }
1269 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1270 #if defined(PROTOBUF_CUSTOM_VTABLE)
1271 private:
1272 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1273 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1274 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1275 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1276
1277 public:
1278 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1279 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1280 ::uint8_t* PROTOBUF_NONNULL target,
1281 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1282 return _InternalSerialize(*this, target, stream);
1283 }
1284 #else // PROTOBUF_CUSTOM_VTABLE
1285 ::size_t ByteSizeLong() const final;
1286 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1287 ::uint8_t* PROTOBUF_NONNULL target,
1288 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1289 #endif // PROTOBUF_CUSTOM_VTABLE
1290 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1291
1292 private:
1293 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1294 static void SharedDtor(MessageLite& self);
1295 void InternalSwap(Job* PROTOBUF_NONNULL other);
1296 private:
1297 template <typename T>
1298 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1299 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.Job"; }
1300
1301 explicit Job(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1302 Job(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Job& from);
1303 Job(
1304 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Job&& from) noexcept
1305 : Job(arena) {
1306 *this = ::std::move(from);
1307 }
1308 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1309 static void* PROTOBUF_NONNULL PlacementNew_(
1310 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1311 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1312 static constexpr auto InternalNewImpl_();
1313
1314 public:
1315 static constexpr auto InternalGenerateClassData_();
1316
1317 ::google::protobuf::Metadata GetMetadata() const;
1318 // nested types ----------------------------------------------------
1319
1320 // accessors -------------------------------------------------------
1321 enum : int {
1322 kTasksFieldNumber = 1,
1323 kNameFieldNumber = 16,
1324 kEarliestStartFieldNumber = 2,
1325 kLatestEndFieldNumber = 7,
1326 kEarlyDueDateFieldNumber = 3,
1327 kLateDueDateFieldNumber = 4,
1328 kEarlinessCostPerTimeUnitFieldNumber = 5,
1331 // repeated .operations_research.scheduling.jssp.Task tasks = 1;
1332 int tasks_size() const;
1333 private:
1334 int _internal_tasks_size() const;
1336 public:
1337 void clear_tasks() ;
1339 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>* PROTOBUF_NONNULL mutable_tasks();
1340
1341 private:
1342 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>& _internal_tasks() const;
1343 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>* PROTOBUF_NONNULL _internal_mutable_tasks();
1344 public:
1345 const ::operations_research::scheduling::jssp::Task& tasks(int index) const;
1347 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>& tasks() const;
1348 // string name = 16;
1349 void clear_name() ;
1350 const ::std::string& name() const;
1351 template <typename Arg_ = const ::std::string&, typename... Args_>
1352 void set_name(Arg_&& arg, Args_... args);
1353 ::std::string* PROTOBUF_NONNULL mutable_name();
1354 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
1355 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
1356
1357 private:
1358 const ::std::string& _internal_name() const;
1359 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
1360 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
1361
1362 public:
1363 // .google.protobuf.Int64Value earliest_start = 2;
1364 bool has_earliest_start() const;
1365 void clear_earliest_start() ;
1366 const ::google::protobuf::Int64Value& earliest_start() const;
1367 [[nodiscard]] ::google::protobuf::Int64Value* PROTOBUF_NULLABLE release_earliest_start();
1368 ::google::protobuf::Int64Value* PROTOBUF_NONNULL mutable_earliest_start();
1369 void set_allocated_earliest_start(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value);
1370 void unsafe_arena_set_allocated_earliest_start(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value);
1371 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE unsafe_arena_release_earliest_start();
1372
1373 private:
1374 const ::google::protobuf::Int64Value& _internal_earliest_start() const;
1375 ::google::protobuf::Int64Value* PROTOBUF_NONNULL _internal_mutable_earliest_start();
1376
1377 public:
1378 // .google.protobuf.Int64Value latest_end = 7;
1379 bool has_latest_end() const;
1380 void clear_latest_end() ;
1381 const ::google::protobuf::Int64Value& latest_end() const;
1382 [[nodiscard]] ::google::protobuf::Int64Value* PROTOBUF_NULLABLE release_latest_end();
1383 ::google::protobuf::Int64Value* PROTOBUF_NONNULL mutable_latest_end();
1384 void set_allocated_latest_end(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value);
1385 void unsafe_arena_set_allocated_latest_end(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value);
1386 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE unsafe_arena_release_latest_end();
1387
1388 private:
1389 const ::google::protobuf::Int64Value& _internal_latest_end() const;
1390 ::google::protobuf::Int64Value* PROTOBUF_NONNULL _internal_mutable_latest_end();
1391
1392 public:
1393 // int64 early_due_date = 3;
1394 void clear_early_due_date() ;
1395 ::int64_t early_due_date() const;
1396 void set_early_due_date(::int64_t value);
1397
1398 private:
1399 ::int64_t _internal_early_due_date() const;
1400 void _internal_set_early_due_date(::int64_t value);
1401
1402 public:
1403 // int64 late_due_date = 4;
1404 void clear_late_due_date() ;
1405 ::int64_t late_due_date() const;
1406 void set_late_due_date(::int64_t value);
1407
1408 private:
1409 ::int64_t _internal_late_due_date() const;
1410 void _internal_set_late_due_date(::int64_t value);
1411
1412 public:
1413 // int64 earliness_cost_per_time_unit = 5;
1415 ::int64_t earliness_cost_per_time_unit() const;
1416 void set_earliness_cost_per_time_unit(::int64_t value);
1417
1418 private:
1419 ::int64_t _internal_earliness_cost_per_time_unit() const;
1420 void _internal_set_earliness_cost_per_time_unit(::int64_t value);
1421
1422 public:
1423 // int64 lateness_cost_per_time_unit = 6;
1425 ::int64_t lateness_cost_per_time_unit() const;
1426 void set_lateness_cost_per_time_unit(::int64_t value);
1427
1428 private:
1429 ::int64_t _internal_lateness_cost_per_time_unit() const;
1430 void _internal_set_lateness_cost_per_time_unit(::int64_t value);
1431
1432 public:
1433 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.Job)
1434 private:
1435 class _Internal;
1436 friend class ::google::protobuf::internal::TcParser;
1437 static const ::google::protobuf::internal::TcParseTable<3, 8,
1438 3, 60,
1439 2>
1440 _table_;
1441
1442 friend class ::google::protobuf::MessageLite;
1443 friend class ::google::protobuf::Arena;
1444 template <typename T>
1445 friend class ::google::protobuf::Arena::InternalHelper;
1446 using InternalArenaConstructable_ = void;
1447 using DestructorSkippable_ = void;
1448 struct Impl_ {
1449 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1450 inline explicit Impl_(
1451 ::google::protobuf::internal::InternalVisibility visibility,
1452 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1453 inline explicit Impl_(
1454 ::google::protobuf::internal::InternalVisibility visibility,
1455 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1456 const Job& from_msg);
1457 ::google::protobuf::internal::HasBits<1> _has_bits_;
1458 ::google::protobuf::internal::CachedSize _cached_size_;
1459 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::Task > tasks_;
1460 ::google::protobuf::internal::ArenaStringPtr name_;
1461 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE earliest_start_;
1462 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE latest_end_;
1463 ::int64_t early_due_date_;
1464 ::int64_t late_due_date_;
1465 ::int64_t earliness_cost_per_time_unit_;
1466 ::int64_t lateness_cost_per_time_unit_;
1467 PROTOBUF_TSAN_DECLARE_MEMBER
1468 };
1469 union { Impl_ _impl_; };
1470 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
1471};
1472
1473OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull Job_class_data_;
1474// -------------------------------------------------------------------
1475
1476class OR_PROTO_DLL AssignedJob final : public ::google::protobuf::Message
1477/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.AssignedJob) */ {
1478 public:
1479 inline AssignedJob() : AssignedJob(nullptr) {}
1480 ~AssignedJob() PROTOBUF_FINAL;
1481
1482#if defined(PROTOBUF_CUSTOM_VTABLE)
1483 void operator delete(AssignedJob* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1484 SharedDtor(*msg);
1485 ::google::protobuf::internal::SizedDelete(msg, sizeof(AssignedJob));
1486 }
1487#endif
1488
1489 template <typename = void>
1490 explicit PROTOBUF_CONSTEXPR AssignedJob(::google::protobuf::internal::ConstantInitialized);
1491
1492 inline AssignedJob(const AssignedJob& from) : AssignedJob(nullptr, from) {}
1493 inline AssignedJob(AssignedJob&& from) noexcept
1494 : AssignedJob(nullptr, ::std::move(from)) {}
1495 inline AssignedJob& operator=(const AssignedJob& from) {
1496 CopyFrom(from);
1497 return *this;
1499 inline AssignedJob& operator=(AssignedJob&& from) noexcept {
1500 if (this == &from) return *this;
1501 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1502 InternalSwap(&from);
1503 } else {
1504 CopyFrom(from);
1505 }
1506 return *this;
1508
1509 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1510 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1511 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1512 }
1513 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1514 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1515 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1516 }
1518 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1519 return GetDescriptor();
1520 }
1521 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1522 return default_instance().GetMetadata().descriptor;
1523 }
1524 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1525 return default_instance().GetMetadata().reflection;
1527 static const AssignedJob& default_instance() {
1528 return *reinterpret_cast<const AssignedJob*>(
1530 }
1531 static constexpr int kIndexInFileMessages = 7;
1532 friend void swap(AssignedJob& a, AssignedJob& b) { a.Swap(&b); }
1533 inline void Swap(AssignedJob* PROTOBUF_NONNULL other) {
1534 if (other == this) return;
1535 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1536 InternalSwap(other);
1537 } else {
1538 ::google::protobuf::internal::GenericSwap(this, other);
1541 void UnsafeArenaSwap(AssignedJob* PROTOBUF_NONNULL other) {
1542 if (other == this) return;
1543 ABSL_DCHECK(GetArena() == other->GetArena());
1544 InternalSwap(other);
1545 }
1546
1547 // implements Message ----------------------------------------------
1548
1549 AssignedJob* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1550 return ::google::protobuf::Message::DefaultConstruct<AssignedJob>(arena);
1551 }
1552 using ::google::protobuf::Message::CopyFrom;
1553 void CopyFrom(const AssignedJob& from);
1554 using ::google::protobuf::Message::MergeFrom;
1555 void MergeFrom(const AssignedJob& from) { AssignedJob::MergeImpl(*this, from); }
1556
1557 private:
1558 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1559 const ::google::protobuf::MessageLite& from_msg);
1560
1561 public:
1562 bool IsInitialized() const {
1563 return true;
1564 }
1565 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1566 #if defined(PROTOBUF_CUSTOM_VTABLE)
1567 private:
1568 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1569 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1570 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1571 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1572
1573 public:
1574 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1575 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1576 ::uint8_t* PROTOBUF_NONNULL target,
1577 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1578 return _InternalSerialize(*this, target, stream);
1579 }
1580 #else // PROTOBUF_CUSTOM_VTABLE
1581 ::size_t ByteSizeLong() const final;
1582 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1583 ::uint8_t* PROTOBUF_NONNULL target,
1584 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1585 #endif // PROTOBUF_CUSTOM_VTABLE
1586 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1587
1588 private:
1589 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1590 static void SharedDtor(MessageLite& self);
1591 void InternalSwap(AssignedJob* PROTOBUF_NONNULL other);
1592 private:
1593 template <typename T>
1595 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.AssignedJob"; }
1596
1597 explicit AssignedJob(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1598 AssignedJob(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const AssignedJob& from);
1600 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, AssignedJob&& from) noexcept
1601 : AssignedJob(arena) {
1602 *this = ::std::move(from);
1603 }
1604 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1605 static void* PROTOBUF_NONNULL PlacementNew_(
1606 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1607 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1608 static constexpr auto InternalNewImpl_();
1609
1610 public:
1611 static constexpr auto InternalGenerateClassData_();
1612
1613 ::google::protobuf::Metadata GetMetadata() const;
1614 // nested types ----------------------------------------------------
1615
1616 // accessors -------------------------------------------------------
1617 enum : int {
1618 kTasksFieldNumber = 1,
1619 kDueDateCostFieldNumber = 2,
1620 kSumOfTaskCostsFieldNumber = 3,
1621 };
1622 // repeated .operations_research.scheduling.jssp.AssignedTask tasks = 1;
1623 int tasks_size() const;
1624 private:
1625 int _internal_tasks_size() const;
1627 public:
1630 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>* PROTOBUF_NONNULL mutable_tasks();
1631
1632 private:
1633 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>& _internal_tasks() const;
1634 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>* PROTOBUF_NONNULL _internal_mutable_tasks();
1635 public:
1636 const ::operations_research::scheduling::jssp::AssignedTask& tasks(int index) const;
1638 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>& tasks() const;
1639 // int64 due_date_cost = 2;
1640 void clear_due_date_cost() ;
1641 ::int64_t due_date_cost() const;
1642 void set_due_date_cost(::int64_t value);
1643
1644 private:
1645 ::int64_t _internal_due_date_cost() const;
1646 void _internal_set_due_date_cost(::int64_t value);
1647
1648 public:
1649 // int64 sum_of_task_costs = 3;
1651 ::int64_t sum_of_task_costs() const;
1652 void set_sum_of_task_costs(::int64_t value);
1653
1654 private:
1655 ::int64_t _internal_sum_of_task_costs() const;
1656 void _internal_set_sum_of_task_costs(::int64_t value);
1657
1658 public:
1659 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.AssignedJob)
1660 private:
1661 class _Internal;
1662 friend class ::google::protobuf::internal::TcParser;
1663 static const ::google::protobuf::internal::TcParseTable<2, 3,
1664 1, 0,
1665 2>
1666 _table_;
1667
1668 friend class ::google::protobuf::MessageLite;
1669 friend class ::google::protobuf::Arena;
1670 template <typename T>
1671 friend class ::google::protobuf::Arena::InternalHelper;
1672 using InternalArenaConstructable_ = void;
1673 using DestructorSkippable_ = void;
1674 struct Impl_ {
1675 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1676 inline explicit Impl_(
1677 ::google::protobuf::internal::InternalVisibility visibility,
1678 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1679 inline explicit Impl_(
1680 ::google::protobuf::internal::InternalVisibility visibility,
1681 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1682 const AssignedJob& from_msg);
1683 ::google::protobuf::internal::HasBits<1> _has_bits_;
1684 ::google::protobuf::internal::CachedSize _cached_size_;
1685 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::AssignedTask > tasks_;
1686 ::int64_t due_date_cost_;
1687 ::int64_t sum_of_task_costs_;
1688 PROTOBUF_TSAN_DECLARE_MEMBER
1689 };
1690 union { Impl_ _impl_; };
1691 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
1692};
1693
1694OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull AssignedJob_class_data_;
1695// -------------------------------------------------------------------
1696
1697class OR_PROTO_DLL JsspOutputSolution final : public ::google::protobuf::Message
1698/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.JsspOutputSolution) */ {
1699 public:
1700 inline JsspOutputSolution() : JsspOutputSolution(nullptr) {}
1701 ~JsspOutputSolution() PROTOBUF_FINAL;
1702
1703#if defined(PROTOBUF_CUSTOM_VTABLE)
1704 void operator delete(JsspOutputSolution* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1705 SharedDtor(*msg);
1706 ::google::protobuf::internal::SizedDelete(msg, sizeof(JsspOutputSolution));
1707 }
1708#endif
1710 template <typename = void>
1711 explicit PROTOBUF_CONSTEXPR JsspOutputSolution(::google::protobuf::internal::ConstantInitialized);
1712
1713 inline JsspOutputSolution(const JsspOutputSolution& from) : JsspOutputSolution(nullptr, from) {}
1714 inline JsspOutputSolution(JsspOutputSolution&& from) noexcept
1715 : JsspOutputSolution(nullptr, ::std::move(from)) {}
1716 inline JsspOutputSolution& operator=(const JsspOutputSolution& from) {
1717 CopyFrom(from);
1718 return *this;
1719 }
1721 if (this == &from) return *this;
1722 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1723 InternalSwap(&from);
1724 } else {
1726 }
1727 return *this;
1728 }
1730 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1731 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1732 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1733 }
1734 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1735 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1736 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1737 }
1738
1739 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1740 return GetDescriptor();
1741 }
1742 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1743 return default_instance().GetMetadata().descriptor;
1744 }
1745 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1746 return default_instance().GetMetadata().reflection;
1747 }
1749 return *reinterpret_cast<const JsspOutputSolution*>(
1752 static constexpr int kIndexInFileMessages = 8;
1753 friend void swap(JsspOutputSolution& a, JsspOutputSolution& b) { a.Swap(&b); }
1754 inline void Swap(JsspOutputSolution* PROTOBUF_NONNULL other) {
1755 if (other == this) return;
1756 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1757 InternalSwap(other);
1758 } else {
1759 ::google::protobuf::internal::GenericSwap(this, other);
1760 }
1762 void UnsafeArenaSwap(JsspOutputSolution* PROTOBUF_NONNULL other) {
1763 if (other == this) return;
1764 ABSL_DCHECK(GetArena() == other->GetArena());
1765 InternalSwap(other);
1766 }
1767
1768 // implements Message ----------------------------------------------
1769
1770 JsspOutputSolution* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1771 return ::google::protobuf::Message::DefaultConstruct<JsspOutputSolution>(arena);
1772 }
1773 using ::google::protobuf::Message::CopyFrom;
1774 void CopyFrom(const JsspOutputSolution& from);
1775 using ::google::protobuf::Message::MergeFrom;
1776 void MergeFrom(const JsspOutputSolution& from) { JsspOutputSolution::MergeImpl(*this, from); }
1777
1778 private:
1779 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1780 const ::google::protobuf::MessageLite& from_msg);
1781
1782 public:
1783 bool IsInitialized() const {
1784 return true;
1786 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1787 #if defined(PROTOBUF_CUSTOM_VTABLE)
1788 private:
1789 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1790 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1791 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1792 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1793
1794 public:
1795 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1796 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1797 ::uint8_t* PROTOBUF_NONNULL target,
1798 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1799 return _InternalSerialize(*this, target, stream);
1800 }
1801 #else // PROTOBUF_CUSTOM_VTABLE
1802 ::size_t ByteSizeLong() const final;
1803 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1804 ::uint8_t* PROTOBUF_NONNULL target,
1805 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1806 #endif // PROTOBUF_CUSTOM_VTABLE
1807 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1808
1809 private:
1810 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1811 static void SharedDtor(MessageLite& self);
1812 void InternalSwap(JsspOutputSolution* PROTOBUF_NONNULL other);
1813 private:
1814 template <typename T>
1815 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1816 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.JsspOutputSolution"; }
1817
1818 explicit JsspOutputSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1819 JsspOutputSolution(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const JsspOutputSolution& from);
1821 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, JsspOutputSolution&& from) noexcept
1822 : JsspOutputSolution(arena) {
1823 *this = ::std::move(from);
1824 }
1825 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1826 static void* PROTOBUF_NONNULL PlacementNew_(
1827 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1828 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1829 static constexpr auto InternalNewImpl_();
1830
1831 public:
1832 static constexpr auto InternalGenerateClassData_();
1833
1834 ::google::protobuf::Metadata GetMetadata() const;
1835 // nested types ----------------------------------------------------
1836
1837 // accessors -------------------------------------------------------
1838 enum : int {
1839 kJobsFieldNumber = 1,
1840 kMakespanCostFieldNumber = 2,
1841 kTotalCostFieldNumber = 3,
1842 };
1843 // repeated .operations_research.scheduling.jssp.AssignedJob jobs = 1;
1844 int jobs_size() const;
1845 private:
1846 int _internal_jobs_size() const;
1847
1848 public:
1849 void clear_jobs() ;
1851 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>* PROTOBUF_NONNULL mutable_jobs();
1852
1853 private:
1854 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>& _internal_jobs() const;
1855 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>* PROTOBUF_NONNULL _internal_mutable_jobs();
1856 public:
1857 const ::operations_research::scheduling::jssp::AssignedJob& jobs(int index) const;
1859 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>& jobs() const;
1860 // int64 makespan_cost = 2;
1861 void clear_makespan_cost() ;
1862 ::int64_t makespan_cost() const;
1863 void set_makespan_cost(::int64_t value);
1864
1865 private:
1866 ::int64_t _internal_makespan_cost() const;
1867 void _internal_set_makespan_cost(::int64_t value);
1868
1869 public:
1870 // int64 total_cost = 3;
1871 void clear_total_cost() ;
1872 ::int64_t total_cost() const;
1873 void set_total_cost(::int64_t value);
1874
1875 private:
1876 ::int64_t _internal_total_cost() const;
1877 void _internal_set_total_cost(::int64_t value);
1878
1879 public:
1880 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.JsspOutputSolution)
1881 private:
1882 class _Internal;
1883 friend class ::google::protobuf::internal::TcParser;
1884 static const ::google::protobuf::internal::TcParseTable<2, 3,
1885 1, 0,
1886 2>
1887 _table_;
1888
1889 friend class ::google::protobuf::MessageLite;
1890 friend class ::google::protobuf::Arena;
1891 template <typename T>
1892 friend class ::google::protobuf::Arena::InternalHelper;
1893 using InternalArenaConstructable_ = void;
1894 using DestructorSkippable_ = void;
1895 struct Impl_ {
1896 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1897 inline explicit Impl_(
1898 ::google::protobuf::internal::InternalVisibility visibility,
1899 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1900 inline explicit Impl_(
1901 ::google::protobuf::internal::InternalVisibility visibility,
1902 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1903 const JsspOutputSolution& from_msg);
1904 ::google::protobuf::internal::HasBits<1> _has_bits_;
1905 ::google::protobuf::internal::CachedSize _cached_size_;
1906 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::AssignedJob > jobs_;
1907 ::int64_t makespan_cost_;
1908 ::int64_t total_cost_;
1909 PROTOBUF_TSAN_DECLARE_MEMBER
1910 };
1911 union { Impl_ _impl_; };
1912 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
1913};
1914
1915OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JsspOutputSolution_class_data_;
1916// -------------------------------------------------------------------
1917
1918class OR_PROTO_DLL JsspInputProblem final : public ::google::protobuf::Message
1919/* @@protoc_insertion_point(class_definition:operations_research.scheduling.jssp.JsspInputProblem) */ {
1920 public:
1921 inline JsspInputProblem() : JsspInputProblem(nullptr) {}
1922 ~JsspInputProblem() PROTOBUF_FINAL;
1923
1924#if defined(PROTOBUF_CUSTOM_VTABLE)
1925 void operator delete(JsspInputProblem* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1926 SharedDtor(*msg);
1927 ::google::protobuf::internal::SizedDelete(msg, sizeof(JsspInputProblem));
1929#endif
1930
1931 template <typename = void>
1932 explicit PROTOBUF_CONSTEXPR JsspInputProblem(::google::protobuf::internal::ConstantInitialized);
1933
1934 inline JsspInputProblem(const JsspInputProblem& from) : JsspInputProblem(nullptr, from) {}
1935 inline JsspInputProblem(JsspInputProblem&& from) noexcept
1936 : JsspInputProblem(nullptr, ::std::move(from)) {}
1937 inline JsspInputProblem& operator=(const JsspInputProblem& from) {
1938 CopyFrom(from);
1939 return *this;
1940 }
1941 inline JsspInputProblem& operator=(JsspInputProblem&& from) noexcept {
1942 if (this == &from) return *this;
1943 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1944 InternalSwap(&from);
1945 } else {
1946 CopyFrom(from);
1948 return *this;
1949 }
1950
1951 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1952 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1953 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1954 }
1955 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1956 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1957 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1958 }
1959
1960 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1962 }
1963 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1964 return default_instance().GetMetadata().descriptor;
1966 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1967 return default_instance().GetMetadata().reflection;
1968 }
1969 static const JsspInputProblem& default_instance() {
1970 return *reinterpret_cast<const JsspInputProblem*>(
1972 }
1973 static constexpr int kIndexInFileMessages = 5;
1974 friend void swap(JsspInputProblem& a, JsspInputProblem& b) { a.Swap(&b); }
1975 inline void Swap(JsspInputProblem* PROTOBUF_NONNULL other) {
1976 if (other == this) return;
1977 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1978 InternalSwap(other);
1979 } else {
1980 ::google::protobuf::internal::GenericSwap(this, other);
1981 }
1982 }
1983 void UnsafeArenaSwap(JsspInputProblem* PROTOBUF_NONNULL other) {
1984 if (other == this) return;
1985 ABSL_DCHECK(GetArena() == other->GetArena());
1986 InternalSwap(other);
1987 }
1988
1989 // implements Message ----------------------------------------------
1990
1991 JsspInputProblem* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1992 return ::google::protobuf::Message::DefaultConstruct<JsspInputProblem>(arena);
1994 using ::google::protobuf::Message::CopyFrom;
1995 void CopyFrom(const JsspInputProblem& from);
1996 using ::google::protobuf::Message::MergeFrom;
1997 void MergeFrom(const JsspInputProblem& from) { JsspInputProblem::MergeImpl(*this, from); }
1998
1999 private:
2000 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
2001 const ::google::protobuf::MessageLite& from_msg);
2002
2003 public:
2004 bool IsInitialized() const {
2005 return true;
2006 }
2007 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
2008 #if defined(PROTOBUF_CUSTOM_VTABLE)
2009 private:
2010 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
2011 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2012 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
2013 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
2015 public:
2016 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
2017 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2018 ::uint8_t* PROTOBUF_NONNULL target,
2019 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2020 return _InternalSerialize(*this, target, stream);
2021 }
2022 #else // PROTOBUF_CUSTOM_VTABLE
2023 ::size_t ByteSizeLong() const final;
2024 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
2025 ::uint8_t* PROTOBUF_NONNULL target,
2026 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
2027 #endif // PROTOBUF_CUSTOM_VTABLE
2028 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
2029
2030 private:
2031 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2032 static void SharedDtor(MessageLite& self);
2033 void InternalSwap(JsspInputProblem* PROTOBUF_NONNULL other);
2034 private:
2035 template <typename T>
2036 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
2037 static ::absl::string_view FullMessageName() { return "operations_research.scheduling.jssp.JsspInputProblem"; }
2039 explicit JsspInputProblem(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2040 JsspInputProblem(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const JsspInputProblem& from);
2042 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, JsspInputProblem&& from) noexcept
2043 : JsspInputProblem(arena) {
2044 *this = ::std::move(from);
2045 }
2046 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
2047 static void* PROTOBUF_NONNULL PlacementNew_(
2048 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2049 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2050 static constexpr auto InternalNewImpl_();
2051
2052 public:
2053 static constexpr auto InternalGenerateClassData_();
2054
2055 ::google::protobuf::Metadata GetMetadata() const;
2056 // nested types ----------------------------------------------------
2057
2058 // accessors -------------------------------------------------------
2059 enum : int {
2060 kJobsFieldNumber = 1,
2061 kMachinesFieldNumber = 2,
2062 kPrecedencesFieldNumber = 3,
2063 kNameFieldNumber = 16,
2064 kScalingFactorFieldNumber = 5,
2065 kMakespanCostPerTimeUnitFieldNumber = 4,
2066 kSeedFieldNumber = 24,
2067 };
2068 // repeated .operations_research.scheduling.jssp.Job jobs = 1;
2069 int jobs_size() const;
2070 private:
2071 int _internal_jobs_size() const;
2073 public:
2074 void clear_jobs() ;
2076 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>* PROTOBUF_NONNULL mutable_jobs();
2077
2078 private:
2079 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>& _internal_jobs() const;
2080 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>* PROTOBUF_NONNULL _internal_mutable_jobs();
2081 public:
2082 const ::operations_research::scheduling::jssp::Job& jobs(int index) const;
2084 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>& jobs() const;
2085 // repeated .operations_research.scheduling.jssp.Machine machines = 2;
2086 int machines_size() const;
2087 private:
2088 int _internal_machines_size() const;
2089
2090 public:
2091 void clear_machines() ;
2093 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>* PROTOBUF_NONNULL mutable_machines();
2094
2095 private:
2096 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>& _internal_machines() const;
2097 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>* PROTOBUF_NONNULL _internal_mutable_machines();
2098 public:
2099 const ::operations_research::scheduling::jssp::Machine& machines(int index) const;
2101 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>& machines() const;
2102 // repeated .operations_research.scheduling.jssp.JobPrecedence precedences = 3;
2103 int precedences_size() const;
2104 private:
2105 int _internal_precedences_size() const;
2106
2107 public:
2108 void clear_precedences() ;
2110 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>* PROTOBUF_NONNULL mutable_precedences();
2111
2112 private:
2113 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>& _internal_precedences() const;
2114 ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>* PROTOBUF_NONNULL _internal_mutable_precedences();
2115 public:
2116 const ::operations_research::scheduling::jssp::JobPrecedence& precedences(int index) const;
2118 const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>& precedences() const;
2119 // string name = 16;
2120 void clear_name() ;
2121 const ::std::string& name() const;
2122 template <typename Arg_ = const ::std::string&, typename... Args_>
2123 void set_name(Arg_&& arg, Args_... args);
2124 ::std::string* PROTOBUF_NONNULL mutable_name();
2125 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
2126 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
2127
2128 private:
2129 const ::std::string& _internal_name() const;
2130 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
2131 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
2132
2133 public:
2134 // .google.protobuf.DoubleValue scaling_factor = 5;
2135 bool has_scaling_factor() const;
2136 void clear_scaling_factor() ;
2137 const ::google::protobuf::DoubleValue& scaling_factor() const;
2138 [[nodiscard]] ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE release_scaling_factor();
2139 ::google::protobuf::DoubleValue* PROTOBUF_NONNULL mutable_scaling_factor();
2140 void set_allocated_scaling_factor(::google::protobuf::DoubleValue* PROTOBUF_NULLABLE value);
2141 void unsafe_arena_set_allocated_scaling_factor(::google::protobuf::DoubleValue* PROTOBUF_NULLABLE value);
2142 ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE unsafe_arena_release_scaling_factor();
2143
2144 private:
2145 const ::google::protobuf::DoubleValue& _internal_scaling_factor() const;
2146 ::google::protobuf::DoubleValue* PROTOBUF_NONNULL _internal_mutable_scaling_factor();
2147
2148 public:
2149 // int64 makespan_cost_per_time_unit = 4;
2151 ::int64_t makespan_cost_per_time_unit() const;
2152 void set_makespan_cost_per_time_unit(::int64_t value);
2153
2154 private:
2155 ::int64_t _internal_makespan_cost_per_time_unit() const;
2156 void _internal_set_makespan_cost_per_time_unit(::int64_t value);
2157
2158 public:
2159 // int32 seed = 24;
2160 void clear_seed() ;
2161 ::int32_t seed() const;
2162 void set_seed(::int32_t value);
2163
2164 private:
2165 ::int32_t _internal_seed() const;
2166 void _internal_set_seed(::int32_t value);
2167
2168 public:
2169 // @@protoc_insertion_point(class_scope:operations_research.scheduling.jssp.JsspInputProblem)
2170 private:
2171 class _Internal;
2172 friend class ::google::protobuf::internal::TcParser;
2173 static const ::google::protobuf::internal::TcParseTable<3, 7,
2174 4, 65,
2175 2>
2176 _table_;
2177
2178 friend class ::google::protobuf::MessageLite;
2179 friend class ::google::protobuf::Arena;
2180 template <typename T>
2181 friend class ::google::protobuf::Arena::InternalHelper;
2182 using InternalArenaConstructable_ = void;
2183 using DestructorSkippable_ = void;
2184 struct Impl_ {
2185 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
2186 inline explicit Impl_(
2187 ::google::protobuf::internal::InternalVisibility visibility,
2188 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2189 inline explicit Impl_(
2190 ::google::protobuf::internal::InternalVisibility visibility,
2191 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2192 const JsspInputProblem& from_msg);
2193 ::google::protobuf::internal::HasBits<1> _has_bits_;
2194 ::google::protobuf::internal::CachedSize _cached_size_;
2195 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::Job > jobs_;
2196 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::Machine > machines_;
2197 ::google::protobuf::RepeatedPtrField< ::operations_research::scheduling::jssp::JobPrecedence > precedences_;
2198 ::google::protobuf::internal::ArenaStringPtr name_;
2199 ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE scaling_factor_;
2200 ::int64_t makespan_cost_per_time_unit_;
2201 ::int32_t seed_;
2202 PROTOBUF_TSAN_DECLARE_MEMBER
2203 };
2204 union { Impl_ _impl_; };
2205 friend struct ::TableStruct_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto;
2206};
2207
2208OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull JsspInputProblem_class_data_;
2209
2210// ===================================================================
2211
2212
2213
2215// ===================================================================
2216
2217
2218#ifdef __GNUC__
2219#pragma GCC diagnostic push
2220#pragma GCC diagnostic ignored "-Wstrict-aliasing"
2221#endif // __GNUC__
2222// -------------------------------------------------------------------
2223
2224// Task
2225
2226// repeated int32 machine = 1;
2227inline int Task::_internal_machine_size() const {
2228 return _internal_machine().size();
2229}
2230inline int Task::machine_size() const {
2231 return _internal_machine_size();
2232}
2233inline void Task::clear_machine() {
2234 ::google::protobuf::internal::TSanWrite(&_impl_);
2235 _impl_.machine_.Clear();
2236 ClearHasBitForRepeated(_impl_._has_bits_[0],
2237 0x00000001U);
2238}
2239inline ::int32_t Task::machine(int index) const {
2240 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Task.machine)
2241 return _internal_machine().Get(index);
2242}
2243inline void Task::set_machine(int index, ::int32_t value) {
2244 _internal_mutable_machine()->Set(index, value);
2245 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Task.machine)
2247inline void Task::add_machine(::int32_t value) {
2248 ::google::protobuf::internal::TSanWrite(&_impl_);
2249 _internal_mutable_machine()->Add(value);
2250 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2251 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.Task.machine)
2253inline const ::google::protobuf::RepeatedField<::int32_t>& Task::machine() const
2254 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2255 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.Task.machine)
2256 return _internal_machine();
2257}
2258inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL Task::mutable_machine()
2259 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2260 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2261 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.Task.machine)
2262 ::google::protobuf::internal::TSanWrite(&_impl_);
2263 return _internal_mutable_machine();
2264}
2265inline const ::google::protobuf::RepeatedField<::int32_t>&
2266Task::_internal_machine() const {
2267 ::google::protobuf::internal::TSanRead(&_impl_);
2268 return _impl_.machine_;
2269}
2270inline ::google::protobuf::RepeatedField<::int32_t>* PROTOBUF_NONNULL
2271Task::_internal_mutable_machine() {
2272 ::google::protobuf::internal::TSanRead(&_impl_);
2273 return &_impl_.machine_;
2274}
2275
2276// repeated int64 duration = 2;
2277inline int Task::_internal_duration_size() const {
2278 return _internal_duration().size();
2279}
2280inline int Task::duration_size() const {
2281 return _internal_duration_size();
2282}
2283inline void Task::clear_duration() {
2284 ::google::protobuf::internal::TSanWrite(&_impl_);
2285 _impl_.duration_.Clear();
2286 ClearHasBitForRepeated(_impl_._has_bits_[0],
2287 0x00000002U);
2288}
2289inline ::int64_t Task::duration(int index) const {
2290 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Task.duration)
2291 return _internal_duration().Get(index);
2292}
2293inline void Task::set_duration(int index, ::int64_t value) {
2294 _internal_mutable_duration()->Set(index, value);
2295 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Task.duration)
2297inline void Task::add_duration(::int64_t value) {
2298 ::google::protobuf::internal::TSanWrite(&_impl_);
2299 _internal_mutable_duration()->Add(value);
2300 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
2301 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.Task.duration)
2303inline const ::google::protobuf::RepeatedField<::int64_t>& Task::duration() const
2304 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2305 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.Task.duration)
2306 return _internal_duration();
2307}
2308inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL Task::mutable_duration()
2309 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2310 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
2311 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.Task.duration)
2312 ::google::protobuf::internal::TSanWrite(&_impl_);
2313 return _internal_mutable_duration();
2314}
2315inline const ::google::protobuf::RepeatedField<::int64_t>&
2316Task::_internal_duration() const {
2317 ::google::protobuf::internal::TSanRead(&_impl_);
2318 return _impl_.duration_;
2319}
2320inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
2321Task::_internal_mutable_duration() {
2322 ::google::protobuf::internal::TSanRead(&_impl_);
2323 return &_impl_.duration_;
2324}
2325
2326// repeated int64 cost = 3;
2327inline int Task::_internal_cost_size() const {
2328 return _internal_cost().size();
2329}
2330inline int Task::cost_size() const {
2331 return _internal_cost_size();
2332}
2333inline void Task::clear_cost() {
2334 ::google::protobuf::internal::TSanWrite(&_impl_);
2335 _impl_.cost_.Clear();
2336 ClearHasBitForRepeated(_impl_._has_bits_[0],
2337 0x00000004U);
2338}
2339inline ::int64_t Task::cost(int index) const {
2340 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Task.cost)
2341 return _internal_cost().Get(index);
2342}
2343inline void Task::set_cost(int index, ::int64_t value) {
2344 _internal_mutable_cost()->Set(index, value);
2345 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Task.cost)
2347inline void Task::add_cost(::int64_t value) {
2348 ::google::protobuf::internal::TSanWrite(&_impl_);
2349 _internal_mutable_cost()->Add(value);
2350 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
2351 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.Task.cost)
2353inline const ::google::protobuf::RepeatedField<::int64_t>& Task::cost() const
2354 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2355 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.Task.cost)
2356 return _internal_cost();
2357}
2358inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL Task::mutable_cost()
2359 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2360 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
2361 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.Task.cost)
2362 ::google::protobuf::internal::TSanWrite(&_impl_);
2363 return _internal_mutable_cost();
2364}
2365inline const ::google::protobuf::RepeatedField<::int64_t>&
2366Task::_internal_cost() const {
2367 ::google::protobuf::internal::TSanRead(&_impl_);
2368 return _impl_.cost_;
2369}
2370inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
2371Task::_internal_mutable_cost() {
2372 ::google::protobuf::internal::TSanRead(&_impl_);
2373 return &_impl_.cost_;
2374}
2375
2376// -------------------------------------------------------------------
2377
2378// Job
2379
2380// repeated .operations_research.scheduling.jssp.Task tasks = 1;
2381inline int Job::_internal_tasks_size() const {
2382 return _internal_tasks().size();
2383}
2384inline int Job::tasks_size() const {
2385 return _internal_tasks_size();
2386}
2387inline void Job::clear_tasks() {
2388 ::google::protobuf::internal::TSanWrite(&_impl_);
2389 _impl_.tasks_.Clear();
2390 ClearHasBitForRepeated(_impl_._has_bits_[0],
2391 0x00000001U);
2392}
2393inline ::operations_research::scheduling::jssp::Task* PROTOBUF_NONNULL Job::mutable_tasks(int index)
2394 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2395 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Job.tasks)
2396 return _internal_mutable_tasks()->Mutable(index);
2397}
2398inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>* PROTOBUF_NONNULL Job::mutable_tasks()
2399 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2400 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2401 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.Job.tasks)
2402 ::google::protobuf::internal::TSanWrite(&_impl_);
2403 return _internal_mutable_tasks();
2404}
2405inline const ::operations_research::scheduling::jssp::Task& Job::tasks(int index) const
2406 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2407 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.tasks)
2408 return _internal_tasks().Get(index);
2409}
2410inline ::operations_research::scheduling::jssp::Task* PROTOBUF_NONNULL Job::add_tasks()
2411 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2412 ::google::protobuf::internal::TSanWrite(&_impl_);
2414 _internal_mutable_tasks()->InternalAddWithArena(
2415 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
2416 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2417 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.Job.tasks)
2418 return _add;
2420inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>& Job::tasks() const
2421 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2422 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.Job.tasks)
2423 return _internal_tasks();
2425inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>&
2426Job::_internal_tasks() const {
2427 ::google::protobuf::internal::TSanRead(&_impl_);
2428 return _impl_.tasks_;
2429}
2430inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task>* PROTOBUF_NONNULL
2431Job::_internal_mutable_tasks() {
2432 ::google::protobuf::internal::TSanRead(&_impl_);
2433 return &_impl_.tasks_;
2435
2436// .google.protobuf.Int64Value earliest_start = 2;
2437inline bool Job::has_earliest_start() const {
2438 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
2439 PROTOBUF_ASSUME(!value || _impl_.earliest_start_ != nullptr);
2440 return value;
2441}
2442inline const ::google::protobuf::Int64Value& Job::_internal_earliest_start() const {
2443 ::google::protobuf::internal::TSanRead(&_impl_);
2444 const ::google::protobuf::Int64Value* p = _impl_.earliest_start_;
2445 return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Int64Value&>(::google::protobuf::_Int64Value_default_instance_);
2446}
2447inline const ::google::protobuf::Int64Value& Job::earliest_start() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2448 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.earliest_start)
2449 return _internal_earliest_start();
2450}
2452 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE value) {
2453 ::google::protobuf::internal::TSanWrite(&_impl_);
2454 if (GetArena() == nullptr) {
2455 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.earliest_start_);
2456 }
2457 _impl_.earliest_start_ = reinterpret_cast<::google::protobuf::Int64Value*>(value);
2458 if (value != nullptr) {
2459 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2460 } else {
2461 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2462 }
2463 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.scheduling.jssp.Job.earliest_start)
2464}
2465inline ::google::protobuf::Int64Value* PROTOBUF_NULLABLE Job::release_earliest_start() {
2466 ::google::protobuf::internal::TSanWrite(&_impl_);
2467
2468 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2469 ::google::protobuf::Int64Value* released = _impl_.earliest_start_;
2470 _impl_.earliest_start_ = nullptr;
2471 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2472 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2473 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2474 if (GetArena() == nullptr) {
2475 delete old;
2476 }
2477 } else {
2478 if (GetArena() != nullptr) {
2479 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2480 }
2481 }
2482 return released;
2483}
2484inline ::google::protobuf::Int64Value* PROTOBUF_NULLABLE Job::unsafe_arena_release_earliest_start() {
2485 ::google::protobuf::internal::TSanWrite(&_impl_);
2486 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.Job.earliest_start)
2487
2488 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2489 ::google::protobuf::Int64Value* temp = _impl_.earliest_start_;
2490 _impl_.earliest_start_ = nullptr;
2491 return temp;
2492}
2493inline ::google::protobuf::Int64Value* PROTOBUF_NONNULL Job::_internal_mutable_earliest_start() {
2494 ::google::protobuf::internal::TSanWrite(&_impl_);
2495 if (_impl_.earliest_start_ == nullptr) {
2496 auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Int64Value>(GetArena());
2497 _impl_.earliest_start_ = reinterpret_cast<::google::protobuf::Int64Value*>(p);
2499 return _impl_.earliest_start_;
2500}
2501inline ::google::protobuf::Int64Value* PROTOBUF_NONNULL Job::mutable_earliest_start()
2502 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2503 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2504 ::google::protobuf::Int64Value* _msg = _internal_mutable_earliest_start();
2505 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Job.earliest_start)
2506 return _msg;
2507}
2508inline void Job::set_allocated_earliest_start(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value) {
2509 ::google::protobuf::Arena* message_arena = GetArena();
2510 ::google::protobuf::internal::TSanWrite(&_impl_);
2511 if (message_arena == nullptr) {
2512 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.earliest_start_);
2513 }
2514
2515 if (value != nullptr) {
2516 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2517 if (message_arena != submessage_arena) {
2518 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2519 }
2520 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2521 } else {
2522 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2523 }
2524
2525 _impl_.earliest_start_ = reinterpret_cast<::google::protobuf::Int64Value*>(value);
2526 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.Job.earliest_start)
2527}
2528
2529// int64 early_due_date = 3;
2530inline void Job::clear_early_due_date() {
2531 ::google::protobuf::internal::TSanWrite(&_impl_);
2532 _impl_.early_due_date_ = ::int64_t{0};
2533 ClearHasBit(_impl_._has_bits_[0],
2534 0x00000010U);
2535}
2536inline ::int64_t Job::early_due_date() const {
2537 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.early_due_date)
2538 return _internal_early_due_date();
2539}
2540inline void Job::set_early_due_date(::int64_t value) {
2541 _internal_set_early_due_date(value);
2542 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
2543 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Job.early_due_date)
2545inline ::int64_t Job::_internal_early_due_date() const {
2546 ::google::protobuf::internal::TSanRead(&_impl_);
2547 return _impl_.early_due_date_;
2548}
2549inline void Job::_internal_set_early_due_date(::int64_t value) {
2550 ::google::protobuf::internal::TSanWrite(&_impl_);
2551 _impl_.early_due_date_ = value;
2552}
2553
2554// int64 late_due_date = 4;
2555inline void Job::clear_late_due_date() {
2556 ::google::protobuf::internal::TSanWrite(&_impl_);
2557 _impl_.late_due_date_ = ::int64_t{0};
2558 ClearHasBit(_impl_._has_bits_[0],
2559 0x00000020U);
2560}
2561inline ::int64_t Job::late_due_date() const {
2562 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.late_due_date)
2563 return _internal_late_due_date();
2564}
2565inline void Job::set_late_due_date(::int64_t value) {
2566 _internal_set_late_due_date(value);
2567 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
2568 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Job.late_due_date)
2570inline ::int64_t Job::_internal_late_due_date() const {
2571 ::google::protobuf::internal::TSanRead(&_impl_);
2572 return _impl_.late_due_date_;
2573}
2574inline void Job::_internal_set_late_due_date(::int64_t value) {
2575 ::google::protobuf::internal::TSanWrite(&_impl_);
2576 _impl_.late_due_date_ = value;
2577}
2578
2579// int64 earliness_cost_per_time_unit = 5;
2581 ::google::protobuf::internal::TSanWrite(&_impl_);
2582 _impl_.earliness_cost_per_time_unit_ = ::int64_t{0};
2583 ClearHasBit(_impl_._has_bits_[0],
2584 0x00000040U);
2585}
2586inline ::int64_t Job::earliness_cost_per_time_unit() const {
2587 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.earliness_cost_per_time_unit)
2588 return _internal_earliness_cost_per_time_unit();
2589}
2590inline void Job::set_earliness_cost_per_time_unit(::int64_t value) {
2591 _internal_set_earliness_cost_per_time_unit(value);
2592 SetHasBit(_impl_._has_bits_[0], 0x00000040U);
2593 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Job.earliness_cost_per_time_unit)
2595inline ::int64_t Job::_internal_earliness_cost_per_time_unit() const {
2596 ::google::protobuf::internal::TSanRead(&_impl_);
2597 return _impl_.earliness_cost_per_time_unit_;
2598}
2599inline void Job::_internal_set_earliness_cost_per_time_unit(::int64_t value) {
2600 ::google::protobuf::internal::TSanWrite(&_impl_);
2601 _impl_.earliness_cost_per_time_unit_ = value;
2602}
2603
2604// int64 lateness_cost_per_time_unit = 6;
2606 ::google::protobuf::internal::TSanWrite(&_impl_);
2607 _impl_.lateness_cost_per_time_unit_ = ::int64_t{0};
2608 ClearHasBit(_impl_._has_bits_[0],
2609 0x00000080U);
2610}
2611inline ::int64_t Job::lateness_cost_per_time_unit() const {
2612 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.lateness_cost_per_time_unit)
2613 return _internal_lateness_cost_per_time_unit();
2614}
2615inline void Job::set_lateness_cost_per_time_unit(::int64_t value) {
2616 _internal_set_lateness_cost_per_time_unit(value);
2617 SetHasBit(_impl_._has_bits_[0], 0x00000080U);
2618 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Job.lateness_cost_per_time_unit)
2620inline ::int64_t Job::_internal_lateness_cost_per_time_unit() const {
2621 ::google::protobuf::internal::TSanRead(&_impl_);
2622 return _impl_.lateness_cost_per_time_unit_;
2623}
2624inline void Job::_internal_set_lateness_cost_per_time_unit(::int64_t value) {
2625 ::google::protobuf::internal::TSanWrite(&_impl_);
2626 _impl_.lateness_cost_per_time_unit_ = value;
2627}
2628
2629// .google.protobuf.Int64Value latest_end = 7;
2630inline bool Job::has_latest_end() const {
2631 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
2632 PROTOBUF_ASSUME(!value || _impl_.latest_end_ != nullptr);
2633 return value;
2634}
2635inline const ::google::protobuf::Int64Value& Job::_internal_latest_end() const {
2636 ::google::protobuf::internal::TSanRead(&_impl_);
2637 const ::google::protobuf::Int64Value* p = _impl_.latest_end_;
2638 return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Int64Value&>(::google::protobuf::_Int64Value_default_instance_);
2639}
2640inline const ::google::protobuf::Int64Value& Job::latest_end() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2641 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.latest_end)
2642 return _internal_latest_end();
2643}
2645 ::google::protobuf::Int64Value* PROTOBUF_NULLABLE value) {
2646 ::google::protobuf::internal::TSanWrite(&_impl_);
2647 if (GetArena() == nullptr) {
2648 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.latest_end_);
2649 }
2650 _impl_.latest_end_ = reinterpret_cast<::google::protobuf::Int64Value*>(value);
2651 if (value != nullptr) {
2652 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
2653 } else {
2654 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
2655 }
2656 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.scheduling.jssp.Job.latest_end)
2657}
2658inline ::google::protobuf::Int64Value* PROTOBUF_NULLABLE Job::release_latest_end() {
2659 ::google::protobuf::internal::TSanWrite(&_impl_);
2660
2661 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
2662 ::google::protobuf::Int64Value* released = _impl_.latest_end_;
2663 _impl_.latest_end_ = nullptr;
2664 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2665 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2666 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2667 if (GetArena() == nullptr) {
2668 delete old;
2669 }
2670 } else {
2671 if (GetArena() != nullptr) {
2672 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2673 }
2674 }
2675 return released;
2676}
2677inline ::google::protobuf::Int64Value* PROTOBUF_NULLABLE Job::unsafe_arena_release_latest_end() {
2678 ::google::protobuf::internal::TSanWrite(&_impl_);
2679 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.Job.latest_end)
2680
2681 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
2682 ::google::protobuf::Int64Value* temp = _impl_.latest_end_;
2683 _impl_.latest_end_ = nullptr;
2684 return temp;
2685}
2686inline ::google::protobuf::Int64Value* PROTOBUF_NONNULL Job::_internal_mutable_latest_end() {
2687 ::google::protobuf::internal::TSanWrite(&_impl_);
2688 if (_impl_.latest_end_ == nullptr) {
2689 auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Int64Value>(GetArena());
2690 _impl_.latest_end_ = reinterpret_cast<::google::protobuf::Int64Value*>(p);
2692 return _impl_.latest_end_;
2693}
2694inline ::google::protobuf::Int64Value* PROTOBUF_NONNULL Job::mutable_latest_end()
2695 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2696 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
2697 ::google::protobuf::Int64Value* _msg = _internal_mutable_latest_end();
2698 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Job.latest_end)
2699 return _msg;
2700}
2701inline void Job::set_allocated_latest_end(::google::protobuf::Int64Value* PROTOBUF_NULLABLE value) {
2702 ::google::protobuf::Arena* message_arena = GetArena();
2703 ::google::protobuf::internal::TSanWrite(&_impl_);
2704 if (message_arena == nullptr) {
2705 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.latest_end_);
2706 }
2707
2708 if (value != nullptr) {
2709 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2710 if (message_arena != submessage_arena) {
2711 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2712 }
2713 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
2714 } else {
2715 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
2716 }
2717
2718 _impl_.latest_end_ = reinterpret_cast<::google::protobuf::Int64Value*>(value);
2719 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.Job.latest_end)
2720}
2721
2722// string name = 16;
2723inline void Job::clear_name() {
2724 ::google::protobuf::internal::TSanWrite(&_impl_);
2725 _impl_.name_.ClearToEmpty();
2726 ClearHasBit(_impl_._has_bits_[0],
2727 0x00000002U);
2728}
2729inline const ::std::string& Job::name() const
2730 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2731 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Job.name)
2732 return _internal_name();
2733}
2734template <typename Arg_, typename... Args_>
2735PROTOBUF_ALWAYS_INLINE void Job::set_name(Arg_&& arg, Args_... args) {
2736 ::google::protobuf::internal::TSanWrite(&_impl_);
2737 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2738 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
2739 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Job.name)
2740}
2741inline ::std::string* PROTOBUF_NONNULL Job::mutable_name()
2742 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2743 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2744 ::std::string* _s = _internal_mutable_name();
2745 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Job.name)
2746 return _s;
2747}
2748inline const ::std::string& Job::_internal_name() const {
2749 ::google::protobuf::internal::TSanRead(&_impl_);
2750 return _impl_.name_.Get();
2751}
2752inline void Job::_internal_set_name(const ::std::string& value) {
2753 ::google::protobuf::internal::TSanWrite(&_impl_);
2754 _impl_.name_.Set(value, GetArena());
2756inline ::std::string* PROTOBUF_NONNULL Job::_internal_mutable_name() {
2757 ::google::protobuf::internal::TSanWrite(&_impl_);
2758 return _impl_.name_.Mutable( GetArena());
2759}
2760inline ::std::string* PROTOBUF_NULLABLE Job::release_name() {
2761 ::google::protobuf::internal::TSanWrite(&_impl_);
2762 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.Job.name)
2763 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
2764 return nullptr;
2765 }
2766 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2767 auto* released = _impl_.name_.Release();
2768 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
2769 _impl_.name_.Set("", GetArena());
2770 }
2771 return released;
2772}
2773inline void Job::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
2774 ::google::protobuf::internal::TSanWrite(&_impl_);
2775 if (value != nullptr) {
2776 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2777 } else {
2778 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2779 }
2780 _impl_.name_.SetAllocated(value, GetArena());
2781 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
2782 _impl_.name_.Set("", GetArena());
2783 }
2784 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.Job.name)
2785}
2786
2787// -------------------------------------------------------------------
2788
2789// TransitionTimeMatrix
2790
2791// repeated int64 transition_time = 1;
2792inline int TransitionTimeMatrix::_internal_transition_time_size() const {
2793 return _internal_transition_time().size();
2794}
2796 return _internal_transition_time_size();
2797}
2799 ::google::protobuf::internal::TSanWrite(&_impl_);
2800 _impl_.transition_time_.Clear();
2801 ClearHasBitForRepeated(_impl_._has_bits_[0],
2802 0x00000001U);
2803}
2804inline ::int64_t TransitionTimeMatrix::transition_time(int index) const {
2805 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.TransitionTimeMatrix.transition_time)
2806 return _internal_transition_time().Get(index);
2807}
2808inline void TransitionTimeMatrix::set_transition_time(int index, ::int64_t value) {
2809 _internal_mutable_transition_time()->Set(index, value);
2810 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.TransitionTimeMatrix.transition_time)
2811}
2812inline void TransitionTimeMatrix::add_transition_time(::int64_t value) {
2813 ::google::protobuf::internal::TSanWrite(&_impl_);
2814 _internal_mutable_transition_time()->Add(value);
2815 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2816 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.TransitionTimeMatrix.transition_time)
2817}
2818inline const ::google::protobuf::RepeatedField<::int64_t>& TransitionTimeMatrix::transition_time() const
2819 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2820 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.TransitionTimeMatrix.transition_time)
2821 return _internal_transition_time();
2822}
2823inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL TransitionTimeMatrix::mutable_transition_time()
2824 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2825 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2826 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.TransitionTimeMatrix.transition_time)
2827 ::google::protobuf::internal::TSanWrite(&_impl_);
2828 return _internal_mutable_transition_time();
2829}
2830inline const ::google::protobuf::RepeatedField<::int64_t>&
2831TransitionTimeMatrix::_internal_transition_time() const {
2832 ::google::protobuf::internal::TSanRead(&_impl_);
2833 return _impl_.transition_time_;
2834}
2835inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
2836TransitionTimeMatrix::_internal_mutable_transition_time() {
2837 ::google::protobuf::internal::TSanRead(&_impl_);
2838 return &_impl_.transition_time_;
2839}
2840
2841// -------------------------------------------------------------------
2842
2843// Machine
2844
2845// .operations_research.scheduling.jssp.TransitionTimeMatrix transition_time_matrix = 1;
2846inline bool Machine::has_transition_time_matrix() const {
2847 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
2848 PROTOBUF_ASSUME(!value || _impl_.transition_time_matrix_ != nullptr);
2849 return value;
2850}
2852 ::google::protobuf::internal::TSanWrite(&_impl_);
2853 if (_impl_.transition_time_matrix_ != nullptr) _impl_.transition_time_matrix_->Clear();
2854 ClearHasBit(_impl_._has_bits_[0],
2855 0x00000002U);
2856}
2857inline const ::operations_research::scheduling::jssp::TransitionTimeMatrix& Machine::_internal_transition_time_matrix() const {
2858 ::google::protobuf::internal::TSanRead(&_impl_);
2859 const ::operations_research::scheduling::jssp::TransitionTimeMatrix* p = _impl_.transition_time_matrix_;
2861}
2862inline const ::operations_research::scheduling::jssp::TransitionTimeMatrix& Machine::transition_time_matrix() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2863 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Machine.transition_time_matrix)
2864 return _internal_transition_time_matrix();
2865}
2868 ::google::protobuf::internal::TSanWrite(&_impl_);
2869 if (GetArena() == nullptr) {
2870 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.transition_time_matrix_);
2871 }
2872 _impl_.transition_time_matrix_ = reinterpret_cast<::operations_research::scheduling::jssp::TransitionTimeMatrix*>(value);
2873 if (value != nullptr) {
2874 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2875 } else {
2876 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2877 }
2878 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.scheduling.jssp.Machine.transition_time_matrix)
2879}
2880inline ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NULLABLE Machine::release_transition_time_matrix() {
2881 ::google::protobuf::internal::TSanWrite(&_impl_);
2883 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2885 _impl_.transition_time_matrix_ = nullptr;
2886 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2887 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2888 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2889 if (GetArena() == nullptr) {
2890 delete old;
2891 }
2892 } else {
2893 if (GetArena() != nullptr) {
2894 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2895 }
2897 return released;
2898}
2899inline ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NULLABLE Machine::unsafe_arena_release_transition_time_matrix() {
2900 ::google::protobuf::internal::TSanWrite(&_impl_);
2901 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.Machine.transition_time_matrix)
2902
2903 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2905 _impl_.transition_time_matrix_ = nullptr;
2906 return temp;
2907}
2908inline ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NONNULL Machine::_internal_mutable_transition_time_matrix() {
2909 ::google::protobuf::internal::TSanWrite(&_impl_);
2910 if (_impl_.transition_time_matrix_ == nullptr) {
2911 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::scheduling::jssp::TransitionTimeMatrix>(GetArena());
2912 _impl_.transition_time_matrix_ = reinterpret_cast<::operations_research::scheduling::jssp::TransitionTimeMatrix*>(p);
2913 }
2914 return _impl_.transition_time_matrix_;
2916inline ::operations_research::scheduling::jssp::TransitionTimeMatrix* PROTOBUF_NONNULL Machine::mutable_transition_time_matrix()
2917 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2918 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2919 ::operations_research::scheduling::jssp::TransitionTimeMatrix* _msg = _internal_mutable_transition_time_matrix();
2920 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Machine.transition_time_matrix)
2921 return _msg;
2922}
2924 ::google::protobuf::Arena* message_arena = GetArena();
2925 ::google::protobuf::internal::TSanWrite(&_impl_);
2926 if (message_arena == nullptr) {
2927 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.transition_time_matrix_);
2928 }
2929
2930 if (value != nullptr) {
2931 ::google::protobuf::Arena* submessage_arena = value->GetArena();
2932 if (message_arena != submessage_arena) {
2933 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2934 }
2935 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2936 } else {
2937 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2938 }
2940 _impl_.transition_time_matrix_ = reinterpret_cast<::operations_research::scheduling::jssp::TransitionTimeMatrix*>(value);
2941 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.Machine.transition_time_matrix)
2942}
2943
2944// string name = 16;
2945inline void Machine::clear_name() {
2946 ::google::protobuf::internal::TSanWrite(&_impl_);
2947 _impl_.name_.ClearToEmpty();
2948 ClearHasBit(_impl_._has_bits_[0],
2949 0x00000001U);
2950}
2951inline const ::std::string& Machine::name() const
2952 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2953 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.Machine.name)
2954 return _internal_name();
2955}
2956template <typename Arg_, typename... Args_>
2957PROTOBUF_ALWAYS_INLINE void Machine::set_name(Arg_&& arg, Args_... args) {
2958 ::google::protobuf::internal::TSanWrite(&_impl_);
2959 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2960 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
2961 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.Machine.name)
2962}
2963inline ::std::string* PROTOBUF_NONNULL Machine::mutable_name()
2964 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2965 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2966 ::std::string* _s = _internal_mutable_name();
2967 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.Machine.name)
2968 return _s;
2969}
2970inline const ::std::string& Machine::_internal_name() const {
2971 ::google::protobuf::internal::TSanRead(&_impl_);
2972 return _impl_.name_.Get();
2974inline void Machine::_internal_set_name(const ::std::string& value) {
2975 ::google::protobuf::internal::TSanWrite(&_impl_);
2976 _impl_.name_.Set(value, GetArena());
2977}
2978inline ::std::string* PROTOBUF_NONNULL Machine::_internal_mutable_name() {
2979 ::google::protobuf::internal::TSanWrite(&_impl_);
2980 return _impl_.name_.Mutable( GetArena());
2981}
2982inline ::std::string* PROTOBUF_NULLABLE Machine::release_name() {
2983 ::google::protobuf::internal::TSanWrite(&_impl_);
2984 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.Machine.name)
2985 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
2986 return nullptr;
2987 }
2988 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2989 auto* released = _impl_.name_.Release();
2990 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
2991 _impl_.name_.Set("", GetArena());
2992 }
2993 return released;
2994}
2995inline void Machine::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
2996 ::google::protobuf::internal::TSanWrite(&_impl_);
2997 if (value != nullptr) {
2998 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2999 } else {
3000 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
3001 }
3002 _impl_.name_.SetAllocated(value, GetArena());
3003 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
3004 _impl_.name_.Set("", GetArena());
3005 }
3006 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.Machine.name)
3007}
3008
3009// -------------------------------------------------------------------
3010
3011// JobPrecedence
3012
3013// int32 first_job_index = 1;
3015 ::google::protobuf::internal::TSanWrite(&_impl_);
3016 _impl_.first_job_index_ = 0;
3017 ClearHasBit(_impl_._has_bits_[0],
3018 0x00000001U);
3019}
3020inline ::int32_t JobPrecedence::first_job_index() const {
3021 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JobPrecedence.first_job_index)
3022 return _internal_first_job_index();
3023}
3024inline void JobPrecedence::set_first_job_index(::int32_t value) {
3025 _internal_set_first_job_index(value);
3026 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
3027 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JobPrecedence.first_job_index)
3028}
3029inline ::int32_t JobPrecedence::_internal_first_job_index() const {
3030 ::google::protobuf::internal::TSanRead(&_impl_);
3031 return _impl_.first_job_index_;
3032}
3033inline void JobPrecedence::_internal_set_first_job_index(::int32_t value) {
3034 ::google::protobuf::internal::TSanWrite(&_impl_);
3035 _impl_.first_job_index_ = value;
3036}
3038// int32 second_job_index = 2;
3040 ::google::protobuf::internal::TSanWrite(&_impl_);
3041 _impl_.second_job_index_ = 0;
3042 ClearHasBit(_impl_._has_bits_[0],
3043 0x00000002U);
3044}
3045inline ::int32_t JobPrecedence::second_job_index() const {
3046 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JobPrecedence.second_job_index)
3047 return _internal_second_job_index();
3048}
3049inline void JobPrecedence::set_second_job_index(::int32_t value) {
3050 _internal_set_second_job_index(value);
3051 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3052 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JobPrecedence.second_job_index)
3053}
3054inline ::int32_t JobPrecedence::_internal_second_job_index() const {
3055 ::google::protobuf::internal::TSanRead(&_impl_);
3056 return _impl_.second_job_index_;
3057}
3058inline void JobPrecedence::_internal_set_second_job_index(::int32_t value) {
3059 ::google::protobuf::internal::TSanWrite(&_impl_);
3060 _impl_.second_job_index_ = value;
3061}
3063// int64 min_delay = 3;
3064inline void JobPrecedence::clear_min_delay() {
3065 ::google::protobuf::internal::TSanWrite(&_impl_);
3066 _impl_.min_delay_ = ::int64_t{0};
3067 ClearHasBit(_impl_._has_bits_[0],
3068 0x00000004U);
3069}
3070inline ::int64_t JobPrecedence::min_delay() const {
3071 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JobPrecedence.min_delay)
3072 return _internal_min_delay();
3073}
3074inline void JobPrecedence::set_min_delay(::int64_t value) {
3075 _internal_set_min_delay(value);
3076 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3077 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JobPrecedence.min_delay)
3078}
3079inline ::int64_t JobPrecedence::_internal_min_delay() const {
3080 ::google::protobuf::internal::TSanRead(&_impl_);
3081 return _impl_.min_delay_;
3082}
3083inline void JobPrecedence::_internal_set_min_delay(::int64_t value) {
3084 ::google::protobuf::internal::TSanWrite(&_impl_);
3085 _impl_.min_delay_ = value;
3086}
3088// -------------------------------------------------------------------
3089
3090// JsspInputProblem
3092// repeated .operations_research.scheduling.jssp.Job jobs = 1;
3093inline int JsspInputProblem::_internal_jobs_size() const {
3094 return _internal_jobs().size();
3095}
3096inline int JsspInputProblem::jobs_size() const {
3097 return _internal_jobs_size();
3098}
3099inline void JsspInputProblem::clear_jobs() {
3100 ::google::protobuf::internal::TSanWrite(&_impl_);
3101 _impl_.jobs_.Clear();
3102 ClearHasBitForRepeated(_impl_._has_bits_[0],
3103 0x00000001U);
3104}
3105inline ::operations_research::scheduling::jssp::Job* PROTOBUF_NONNULL JsspInputProblem::mutable_jobs(int index)
3106 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3107 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspInputProblem.jobs)
3108 return _internal_mutable_jobs()->Mutable(index);
3109}
3110inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>* PROTOBUF_NONNULL JsspInputProblem::mutable_jobs()
3111 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3112 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3113 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.JsspInputProblem.jobs)
3114 ::google::protobuf::internal::TSanWrite(&_impl_);
3115 return _internal_mutable_jobs();
3116}
3117inline const ::operations_research::scheduling::jssp::Job& JsspInputProblem::jobs(int index) const
3118 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3119 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.jobs)
3120 return _internal_jobs().Get(index);
3121}
3122inline ::operations_research::scheduling::jssp::Job* PROTOBUF_NONNULL JsspInputProblem::add_jobs()
3123 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3124 ::google::protobuf::internal::TSanWrite(&_impl_);
3126 _internal_mutable_jobs()->InternalAddWithArena(
3127 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
3128 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3129 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.JsspInputProblem.jobs)
3130 return _add;
3131}
3132inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>& JsspInputProblem::jobs() const
3133 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3134 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.JsspInputProblem.jobs)
3135 return _internal_jobs();
3136}
3137inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>&
3138JsspInputProblem::_internal_jobs() const {
3139 ::google::protobuf::internal::TSanRead(&_impl_);
3140 return _impl_.jobs_;
3141}
3142inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job>* PROTOBUF_NONNULL
3143JsspInputProblem::_internal_mutable_jobs() {
3144 ::google::protobuf::internal::TSanRead(&_impl_);
3145 return &_impl_.jobs_;
3146}
3147
3148// repeated .operations_research.scheduling.jssp.Machine machines = 2;
3149inline int JsspInputProblem::_internal_machines_size() const {
3150 return _internal_machines().size();
3151}
3152inline int JsspInputProblem::machines_size() const {
3153 return _internal_machines_size();
3154}
3156 ::google::protobuf::internal::TSanWrite(&_impl_);
3157 _impl_.machines_.Clear();
3158 ClearHasBitForRepeated(_impl_._has_bits_[0],
3159 0x00000002U);
3160}
3161inline ::operations_research::scheduling::jssp::Machine* PROTOBUF_NONNULL JsspInputProblem::mutable_machines(int index)
3162 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3163 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspInputProblem.machines)
3164 return _internal_mutable_machines()->Mutable(index);
3165}
3166inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>* PROTOBUF_NONNULL JsspInputProblem::mutable_machines()
3167 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3168 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
3169 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.JsspInputProblem.machines)
3170 ::google::protobuf::internal::TSanWrite(&_impl_);
3171 return _internal_mutable_machines();
3172}
3173inline const ::operations_research::scheduling::jssp::Machine& JsspInputProblem::machines(int index) const
3174 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3175 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.machines)
3176 return _internal_machines().Get(index);
3177}
3178inline ::operations_research::scheduling::jssp::Machine* PROTOBUF_NONNULL JsspInputProblem::add_machines()
3179 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3180 ::google::protobuf::internal::TSanWrite(&_impl_);
3182 _internal_mutable_machines()->InternalAddWithArena(
3183 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
3184 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
3185 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.JsspInputProblem.machines)
3186 return _add;
3187}
3188inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>& JsspInputProblem::machines() const
3189 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3190 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.JsspInputProblem.machines)
3191 return _internal_machines();
3192}
3193inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>&
3194JsspInputProblem::_internal_machines() const {
3195 ::google::protobuf::internal::TSanRead(&_impl_);
3196 return _impl_.machines_;
3197}
3198inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine>* PROTOBUF_NONNULL
3199JsspInputProblem::_internal_mutable_machines() {
3200 ::google::protobuf::internal::TSanRead(&_impl_);
3201 return &_impl_.machines_;
3202}
3203
3204// repeated .operations_research.scheduling.jssp.JobPrecedence precedences = 3;
3205inline int JsspInputProblem::_internal_precedences_size() const {
3206 return _internal_precedences().size();
3207}
3208inline int JsspInputProblem::precedences_size() const {
3209 return _internal_precedences_size();
3210}
3212 ::google::protobuf::internal::TSanWrite(&_impl_);
3213 _impl_.precedences_.Clear();
3214 ClearHasBitForRepeated(_impl_._has_bits_[0],
3215 0x00000004U);
3216}
3217inline ::operations_research::scheduling::jssp::JobPrecedence* PROTOBUF_NONNULL JsspInputProblem::mutable_precedences(int index)
3218 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3219 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspInputProblem.precedences)
3220 return _internal_mutable_precedences()->Mutable(index);
3221}
3222inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>* PROTOBUF_NONNULL JsspInputProblem::mutable_precedences()
3223 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3224 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
3225 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.JsspInputProblem.precedences)
3226 ::google::protobuf::internal::TSanWrite(&_impl_);
3227 return _internal_mutable_precedences();
3228}
3229inline const ::operations_research::scheduling::jssp::JobPrecedence& JsspInputProblem::precedences(int index) const
3230 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3231 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.precedences)
3232 return _internal_precedences().Get(index);
3233}
3234inline ::operations_research::scheduling::jssp::JobPrecedence* PROTOBUF_NONNULL JsspInputProblem::add_precedences()
3235 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3236 ::google::protobuf::internal::TSanWrite(&_impl_);
3238 _internal_mutable_precedences()->InternalAddWithArena(
3239 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
3240 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000004U);
3241 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.JsspInputProblem.precedences)
3242 return _add;
3243}
3244inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>& JsspInputProblem::precedences() const
3245 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3246 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.JsspInputProblem.precedences)
3247 return _internal_precedences();
3248}
3249inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>&
3250JsspInputProblem::_internal_precedences() const {
3251 ::google::protobuf::internal::TSanRead(&_impl_);
3252 return _impl_.precedences_;
3253}
3254inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence>* PROTOBUF_NONNULL
3255JsspInputProblem::_internal_mutable_precedences() {
3256 ::google::protobuf::internal::TSanRead(&_impl_);
3257 return &_impl_.precedences_;
3258}
3259
3260// int64 makespan_cost_per_time_unit = 4;
3262 ::google::protobuf::internal::TSanWrite(&_impl_);
3263 _impl_.makespan_cost_per_time_unit_ = ::int64_t{0};
3264 ClearHasBit(_impl_._has_bits_[0],
3265 0x00000020U);
3266}
3267inline ::int64_t JsspInputProblem::makespan_cost_per_time_unit() const {
3268 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.makespan_cost_per_time_unit)
3269 return _internal_makespan_cost_per_time_unit();
3270}
3271inline void JsspInputProblem::set_makespan_cost_per_time_unit(::int64_t value) {
3272 _internal_set_makespan_cost_per_time_unit(value);
3273 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
3274 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JsspInputProblem.makespan_cost_per_time_unit)
3275}
3276inline ::int64_t JsspInputProblem::_internal_makespan_cost_per_time_unit() const {
3277 ::google::protobuf::internal::TSanRead(&_impl_);
3278 return _impl_.makespan_cost_per_time_unit_;
3280inline void JsspInputProblem::_internal_set_makespan_cost_per_time_unit(::int64_t value) {
3281 ::google::protobuf::internal::TSanWrite(&_impl_);
3282 _impl_.makespan_cost_per_time_unit_ = value;
3283}
3284
3285// .google.protobuf.DoubleValue scaling_factor = 5;
3286inline bool JsspInputProblem::has_scaling_factor() const {
3287 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000010U);
3288 PROTOBUF_ASSUME(!value || _impl_.scaling_factor_ != nullptr);
3289 return value;
3290}
3291inline const ::google::protobuf::DoubleValue& JsspInputProblem::_internal_scaling_factor() const {
3292 ::google::protobuf::internal::TSanRead(&_impl_);
3293 const ::google::protobuf::DoubleValue* p = _impl_.scaling_factor_;
3294 return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::DoubleValue&>(::google::protobuf::_DoubleValue_default_instance_);
3295}
3296inline const ::google::protobuf::DoubleValue& JsspInputProblem::scaling_factor() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3297 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.scaling_factor)
3298 return _internal_scaling_factor();
3299}
3301 ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE value) {
3302 ::google::protobuf::internal::TSanWrite(&_impl_);
3303 if (GetArena() == nullptr) {
3304 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.scaling_factor_);
3305 }
3306 _impl_.scaling_factor_ = reinterpret_cast<::google::protobuf::DoubleValue*>(value);
3307 if (value != nullptr) {
3308 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
3309 } else {
3310 ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
3311 }
3312 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.scheduling.jssp.JsspInputProblem.scaling_factor)
3313}
3314inline ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE JsspInputProblem::release_scaling_factor() {
3315 ::google::protobuf::internal::TSanWrite(&_impl_);
3316
3317 ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
3318 ::google::protobuf::DoubleValue* released = _impl_.scaling_factor_;
3319 _impl_.scaling_factor_ = nullptr;
3320 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3321 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3322 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3323 if (GetArena() == nullptr) {
3324 delete old;
3325 }
3326 } else {
3327 if (GetArena() != nullptr) {
3328 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3329 }
3330 }
3331 return released;
3333inline ::google::protobuf::DoubleValue* PROTOBUF_NULLABLE JsspInputProblem::unsafe_arena_release_scaling_factor() {
3334 ::google::protobuf::internal::TSanWrite(&_impl_);
3335 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.JsspInputProblem.scaling_factor)
3336
3337 ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
3338 ::google::protobuf::DoubleValue* temp = _impl_.scaling_factor_;
3339 _impl_.scaling_factor_ = nullptr;
3340 return temp;
3341}
3342inline ::google::protobuf::DoubleValue* PROTOBUF_NONNULL JsspInputProblem::_internal_mutable_scaling_factor() {
3343 ::google::protobuf::internal::TSanWrite(&_impl_);
3344 if (_impl_.scaling_factor_ == nullptr) {
3345 auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::DoubleValue>(GetArena());
3346 _impl_.scaling_factor_ = reinterpret_cast<::google::protobuf::DoubleValue*>(p);
3347 }
3348 return _impl_.scaling_factor_;
3349}
3350inline ::google::protobuf::DoubleValue* PROTOBUF_NONNULL JsspInputProblem::mutable_scaling_factor()
3351 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3352 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
3353 ::google::protobuf::DoubleValue* _msg = _internal_mutable_scaling_factor();
3354 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspInputProblem.scaling_factor)
3355 return _msg;
3356}
3357inline void JsspInputProblem::set_allocated_scaling_factor(::google::protobuf::DoubleValue* PROTOBUF_NULLABLE value) {
3358 ::google::protobuf::Arena* message_arena = GetArena();
3359 ::google::protobuf::internal::TSanWrite(&_impl_);
3360 if (message_arena == nullptr) {
3361 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.scaling_factor_);
3362 }
3363
3364 if (value != nullptr) {
3365 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
3366 if (message_arena != submessage_arena) {
3367 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3369 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
3370 } else {
3371 ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
3372 }
3373
3374 _impl_.scaling_factor_ = reinterpret_cast<::google::protobuf::DoubleValue*>(value);
3375 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.JsspInputProblem.scaling_factor)
3376}
3377
3378// int32 seed = 24;
3379inline void JsspInputProblem::clear_seed() {
3380 ::google::protobuf::internal::TSanWrite(&_impl_);
3381 _impl_.seed_ = 0;
3382 ClearHasBit(_impl_._has_bits_[0],
3383 0x00000040U);
3384}
3385inline ::int32_t JsspInputProblem::seed() const {
3386 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.seed)
3387 return _internal_seed();
3388}
3389inline void JsspInputProblem::set_seed(::int32_t value) {
3390 _internal_set_seed(value);
3391 SetHasBit(_impl_._has_bits_[0], 0x00000040U);
3392 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JsspInputProblem.seed)
3393}
3394inline ::int32_t JsspInputProblem::_internal_seed() const {
3395 ::google::protobuf::internal::TSanRead(&_impl_);
3396 return _impl_.seed_;
3398inline void JsspInputProblem::_internal_set_seed(::int32_t value) {
3399 ::google::protobuf::internal::TSanWrite(&_impl_);
3400 _impl_.seed_ = value;
3401}
3402
3403// string name = 16;
3404inline void JsspInputProblem::clear_name() {
3405 ::google::protobuf::internal::TSanWrite(&_impl_);
3406 _impl_.name_.ClearToEmpty();
3407 ClearHasBit(_impl_._has_bits_[0],
3408 0x00000008U);
3409}
3410inline const ::std::string& JsspInputProblem::name() const
3411 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3412 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspInputProblem.name)
3413 return _internal_name();
3414}
3415template <typename Arg_, typename... Args_>
3416PROTOBUF_ALWAYS_INLINE void JsspInputProblem::set_name(Arg_&& arg, Args_... args) {
3417 ::google::protobuf::internal::TSanWrite(&_impl_);
3418 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
3419 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
3420 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JsspInputProblem.name)
3421}
3422inline ::std::string* PROTOBUF_NONNULL JsspInputProblem::mutable_name()
3423 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3424 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
3425 ::std::string* _s = _internal_mutable_name();
3426 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspInputProblem.name)
3427 return _s;
3429inline const ::std::string& JsspInputProblem::_internal_name() const {
3430 ::google::protobuf::internal::TSanRead(&_impl_);
3431 return _impl_.name_.Get();
3432}
3433inline void JsspInputProblem::_internal_set_name(const ::std::string& value) {
3434 ::google::protobuf::internal::TSanWrite(&_impl_);
3435 _impl_.name_.Set(value, GetArena());
3436}
3437inline ::std::string* PROTOBUF_NONNULL JsspInputProblem::_internal_mutable_name() {
3438 ::google::protobuf::internal::TSanWrite(&_impl_);
3439 return _impl_.name_.Mutable( GetArena());
3441inline ::std::string* PROTOBUF_NULLABLE JsspInputProblem::release_name() {
3442 ::google::protobuf::internal::TSanWrite(&_impl_);
3443 // @@protoc_insertion_point(field_release:operations_research.scheduling.jssp.JsspInputProblem.name)
3444 if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
3445 return nullptr;
3446 }
3447 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
3448 auto* released = _impl_.name_.Release();
3449 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
3450 _impl_.name_.Set("", GetArena());
3451 }
3452 return released;
3453}
3454inline void JsspInputProblem::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
3455 ::google::protobuf::internal::TSanWrite(&_impl_);
3456 if (value != nullptr) {
3457 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
3458 } else {
3459 ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
3460 }
3461 _impl_.name_.SetAllocated(value, GetArena());
3462 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
3463 _impl_.name_.Set("", GetArena());
3464 }
3465 // @@protoc_insertion_point(field_set_allocated:operations_research.scheduling.jssp.JsspInputProblem.name)
3466}
3467
3468// -------------------------------------------------------------------
3469
3470// AssignedTask
3471
3472// int32 alternative_index = 1;
3474 ::google::protobuf::internal::TSanWrite(&_impl_);
3475 _impl_.alternative_index_ = 0;
3476 ClearHasBit(_impl_._has_bits_[0],
3477 0x00000002U);
3478}
3479inline ::int32_t AssignedTask::alternative_index() const {
3480 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.AssignedTask.alternative_index)
3481 return _internal_alternative_index();
3482}
3483inline void AssignedTask::set_alternative_index(::int32_t value) {
3484 _internal_set_alternative_index(value);
3485 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3486 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.AssignedTask.alternative_index)
3487}
3488inline ::int32_t AssignedTask::_internal_alternative_index() const {
3489 ::google::protobuf::internal::TSanRead(&_impl_);
3490 return _impl_.alternative_index_;
3491}
3492inline void AssignedTask::_internal_set_alternative_index(::int32_t value) {
3493 ::google::protobuf::internal::TSanWrite(&_impl_);
3494 _impl_.alternative_index_ = value;
3495}
3496
3497// int64 start_time = 2;
3499 ::google::protobuf::internal::TSanWrite(&_impl_);
3500 _impl_.start_time_ = ::int64_t{0};
3501 ClearHasBit(_impl_._has_bits_[0],
3502 0x00000001U);
3503}
3504inline ::int64_t AssignedTask::start_time() const {
3505 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.AssignedTask.start_time)
3506 return _internal_start_time();
3507}
3508inline void AssignedTask::set_start_time(::int64_t value) {
3509 _internal_set_start_time(value);
3510 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
3511 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.AssignedTask.start_time)
3512}
3513inline ::int64_t AssignedTask::_internal_start_time() const {
3514 ::google::protobuf::internal::TSanRead(&_impl_);
3515 return _impl_.start_time_;
3516}
3517inline void AssignedTask::_internal_set_start_time(::int64_t value) {
3518 ::google::protobuf::internal::TSanWrite(&_impl_);
3519 _impl_.start_time_ = value;
3520}
3521
3522// -------------------------------------------------------------------
3524// AssignedJob
3525
3526// repeated .operations_research.scheduling.jssp.AssignedTask tasks = 1;
3527inline int AssignedJob::_internal_tasks_size() const {
3528 return _internal_tasks().size();
3529}
3530inline int AssignedJob::tasks_size() const {
3531 return _internal_tasks_size();
3532}
3533inline void AssignedJob::clear_tasks() {
3534 ::google::protobuf::internal::TSanWrite(&_impl_);
3535 _impl_.tasks_.Clear();
3536 ClearHasBitForRepeated(_impl_._has_bits_[0],
3537 0x00000001U);
3538}
3539inline ::operations_research::scheduling::jssp::AssignedTask* PROTOBUF_NONNULL AssignedJob::mutable_tasks(int index)
3540 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3541 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.AssignedJob.tasks)
3542 return _internal_mutable_tasks()->Mutable(index);
3543}
3544inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>* PROTOBUF_NONNULL AssignedJob::mutable_tasks()
3545 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3546 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3547 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.AssignedJob.tasks)
3548 ::google::protobuf::internal::TSanWrite(&_impl_);
3549 return _internal_mutable_tasks();
3551inline const ::operations_research::scheduling::jssp::AssignedTask& AssignedJob::tasks(int index) const
3552 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3553 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.AssignedJob.tasks)
3554 return _internal_tasks().Get(index);
3555}
3556inline ::operations_research::scheduling::jssp::AssignedTask* PROTOBUF_NONNULL AssignedJob::add_tasks()
3557 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3558 ::google::protobuf::internal::TSanWrite(&_impl_);
3560 _internal_mutable_tasks()->InternalAddWithArena(
3561 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
3562 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3563 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.AssignedJob.tasks)
3564 return _add;
3565}
3566inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>& AssignedJob::tasks() const
3567 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3568 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.AssignedJob.tasks)
3569 return _internal_tasks();
3570}
3571inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>&
3572AssignedJob::_internal_tasks() const {
3573 ::google::protobuf::internal::TSanRead(&_impl_);
3574 return _impl_.tasks_;
3575}
3576inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask>* PROTOBUF_NONNULL
3577AssignedJob::_internal_mutable_tasks() {
3578 ::google::protobuf::internal::TSanRead(&_impl_);
3579 return &_impl_.tasks_;
3580}
3581
3582// int64 due_date_cost = 2;
3584 ::google::protobuf::internal::TSanWrite(&_impl_);
3585 _impl_.due_date_cost_ = ::int64_t{0};
3586 ClearHasBit(_impl_._has_bits_[0],
3587 0x00000002U);
3588}
3589inline ::int64_t AssignedJob::due_date_cost() const {
3590 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.AssignedJob.due_date_cost)
3591 return _internal_due_date_cost();
3592}
3593inline void AssignedJob::set_due_date_cost(::int64_t value) {
3594 _internal_set_due_date_cost(value);
3595 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3596 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.AssignedJob.due_date_cost)
3597}
3598inline ::int64_t AssignedJob::_internal_due_date_cost() const {
3599 ::google::protobuf::internal::TSanRead(&_impl_);
3600 return _impl_.due_date_cost_;
3601}
3602inline void AssignedJob::_internal_set_due_date_cost(::int64_t value) {
3603 ::google::protobuf::internal::TSanWrite(&_impl_);
3604 _impl_.due_date_cost_ = value;
3605}
3606
3607// int64 sum_of_task_costs = 3;
3609 ::google::protobuf::internal::TSanWrite(&_impl_);
3610 _impl_.sum_of_task_costs_ = ::int64_t{0};
3611 ClearHasBit(_impl_._has_bits_[0],
3612 0x00000004U);
3614inline ::int64_t AssignedJob::sum_of_task_costs() const {
3615 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.AssignedJob.sum_of_task_costs)
3616 return _internal_sum_of_task_costs();
3617}
3618inline void AssignedJob::set_sum_of_task_costs(::int64_t value) {
3619 _internal_set_sum_of_task_costs(value);
3620 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3621 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.AssignedJob.sum_of_task_costs)
3622}
3623inline ::int64_t AssignedJob::_internal_sum_of_task_costs() const {
3624 ::google::protobuf::internal::TSanRead(&_impl_);
3625 return _impl_.sum_of_task_costs_;
3626}
3627inline void AssignedJob::_internal_set_sum_of_task_costs(::int64_t value) {
3628 ::google::protobuf::internal::TSanWrite(&_impl_);
3629 _impl_.sum_of_task_costs_ = value;
3630}
3631
3632// -------------------------------------------------------------------
3633
3634// JsspOutputSolution
3635
3636// repeated .operations_research.scheduling.jssp.AssignedJob jobs = 1;
3637inline int JsspOutputSolution::_internal_jobs_size() const {
3638 return _internal_jobs().size();
3639}
3640inline int JsspOutputSolution::jobs_size() const {
3641 return _internal_jobs_size();
3642}
3643inline void JsspOutputSolution::clear_jobs() {
3644 ::google::protobuf::internal::TSanWrite(&_impl_);
3645 _impl_.jobs_.Clear();
3646 ClearHasBitForRepeated(_impl_._has_bits_[0],
3647 0x00000001U);
3648}
3649inline ::operations_research::scheduling::jssp::AssignedJob* PROTOBUF_NONNULL JsspOutputSolution::mutable_jobs(int index)
3650 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3651 // @@protoc_insertion_point(field_mutable:operations_research.scheduling.jssp.JsspOutputSolution.jobs)
3652 return _internal_mutable_jobs()->Mutable(index);
3653}
3654inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>* PROTOBUF_NONNULL JsspOutputSolution::mutable_jobs()
3655 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3656 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3657 // @@protoc_insertion_point(field_mutable_list:operations_research.scheduling.jssp.JsspOutputSolution.jobs)
3658 ::google::protobuf::internal::TSanWrite(&_impl_);
3659 return _internal_mutable_jobs();
3660}
3661inline const ::operations_research::scheduling::jssp::AssignedJob& JsspOutputSolution::jobs(int index) const
3662 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3663 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspOutputSolution.jobs)
3664 return _internal_jobs().Get(index);
3665}
3666inline ::operations_research::scheduling::jssp::AssignedJob* PROTOBUF_NONNULL JsspOutputSolution::add_jobs()
3667 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3668 ::google::protobuf::internal::TSanWrite(&_impl_);
3670 _internal_mutable_jobs()->InternalAddWithArena(
3671 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
3672 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
3673 // @@protoc_insertion_point(field_add:operations_research.scheduling.jssp.JsspOutputSolution.jobs)
3674 return _add;
3676inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>& JsspOutputSolution::jobs() const
3677 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3678 // @@protoc_insertion_point(field_list:operations_research.scheduling.jssp.JsspOutputSolution.jobs)
3679 return _internal_jobs();
3680}
3681inline const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>&
3682JsspOutputSolution::_internal_jobs() const {
3683 ::google::protobuf::internal::TSanRead(&_impl_);
3684 return _impl_.jobs_;
3685}
3686inline ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob>* PROTOBUF_NONNULL
3687JsspOutputSolution::_internal_mutable_jobs() {
3688 ::google::protobuf::internal::TSanRead(&_impl_);
3689 return &_impl_.jobs_;
3690}
3691
3692// int64 makespan_cost = 2;
3694 ::google::protobuf::internal::TSanWrite(&_impl_);
3695 _impl_.makespan_cost_ = ::int64_t{0};
3696 ClearHasBit(_impl_._has_bits_[0],
3697 0x00000002U);
3698}
3699inline ::int64_t JsspOutputSolution::makespan_cost() const {
3700 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspOutputSolution.makespan_cost)
3701 return _internal_makespan_cost();
3702}
3703inline void JsspOutputSolution::set_makespan_cost(::int64_t value) {
3704 _internal_set_makespan_cost(value);
3705 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3706 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JsspOutputSolution.makespan_cost)
3707}
3708inline ::int64_t JsspOutputSolution::_internal_makespan_cost() const {
3709 ::google::protobuf::internal::TSanRead(&_impl_);
3710 return _impl_.makespan_cost_;
3711}
3712inline void JsspOutputSolution::_internal_set_makespan_cost(::int64_t value) {
3713 ::google::protobuf::internal::TSanWrite(&_impl_);
3714 _impl_.makespan_cost_ = value;
3715}
3716
3717// int64 total_cost = 3;
3719 ::google::protobuf::internal::TSanWrite(&_impl_);
3720 _impl_.total_cost_ = ::int64_t{0};
3721 ClearHasBit(_impl_._has_bits_[0],
3722 0x00000004U);
3723}
3724inline ::int64_t JsspOutputSolution::total_cost() const {
3725 // @@protoc_insertion_point(field_get:operations_research.scheduling.jssp.JsspOutputSolution.total_cost)
3726 return _internal_total_cost();
3727}
3728inline void JsspOutputSolution::set_total_cost(::int64_t value) {
3729 _internal_set_total_cost(value);
3730 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3731 // @@protoc_insertion_point(field_set:operations_research.scheduling.jssp.JsspOutputSolution.total_cost)
3732}
3733inline ::int64_t JsspOutputSolution::_internal_total_cost() const {
3734 ::google::protobuf::internal::TSanRead(&_impl_);
3735 return _impl_.total_cost_;
3736}
3737inline void JsspOutputSolution::_internal_set_total_cost(::int64_t value) {
3738 ::google::protobuf::internal::TSanWrite(&_impl_);
3739 _impl_.total_cost_ = value;
3740}
3741
3742#ifdef __GNUC__
3743#pragma GCC diagnostic pop
3744#endif // __GNUC__
3746// @@protoc_insertion_point(namespace_scope)
3747} // namespace jssp
3748} // namespace scheduling
3749} // namespace operations_research
3750
3751
3752// @@protoc_insertion_point(global_scope)
3753
3754#include "google/protobuf/port_undef.inc"
3755
3756#endif // ortools_2fscheduling_2fjobshop_5fscheduling_2eproto_2epb_2eh
void UnsafeArenaSwap(AssignedJob *PROTOBUF_NONNULL other)
AssignedJob *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask > & tasks() const
::operations_research::scheduling::jssp::AssignedTask *PROTOBUF_NONNULL mutable_tasks(int index)
friend void swap(AssignedJob &a, AssignedJob &b)
const ::operations_research::scheduling::jssp::AssignedTask & tasks(int index) const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
void Swap(AssignedJob *PROTOBUF_NONNULL other)
::operations_research::scheduling::jssp::AssignedTask *PROTOBUF_NONNULL add_tasks()
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedTask > *PROTOBUF_NONNULL mutable_tasks()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
AssignedTask *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void Swap(AssignedTask *PROTOBUF_NONNULL other)
friend void swap(AssignedTask &a, AssignedTask &b)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
AssignedTask & operator=(const AssignedTask &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
friend void swap(JobPrecedence &a, JobPrecedence &b)
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
PROTOBUF_CONSTEXPR JobPrecedence(::google::protobuf::internal::ConstantInitialized)
JobPrecedence & operator=(const JobPrecedence &from)
void Swap(JobPrecedence *PROTOBUF_NONNULL other)
Job *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
::operations_research::scheduling::jssp::Task *PROTOBUF_NONNULL add_tasks()
::operations_research::scheduling::jssp::Task *PROTOBUF_NONNULL mutable_tasks(int index)
const ::google::protobuf::Int64Value & earliest_start() const
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task > & tasks() const
void set_name(Arg_ &&arg, Args_... args)
::google::protobuf::Int64Value *PROTOBUF_NULLABLE release_earliest_start()
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
void unsafe_arena_set_allocated_earliest_start(::google::protobuf::Int64Value *PROTOBUF_NULLABLE value)
const ::operations_research::scheduling::jssp::Task & tasks(int index) const
void set_allocated_earliest_start(::google::protobuf::Int64Value *PROTOBUF_NULLABLE value)
::std::string *PROTOBUF_NONNULL mutable_name()
::google::protobuf::Int64Value *PROTOBUF_NULLABLE unsafe_arena_release_earliest_start()
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Task > *PROTOBUF_NONNULL mutable_tasks()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void set_allocated_latest_end(::google::protobuf::Int64Value *PROTOBUF_NULLABLE value)
void unsafe_arena_set_allocated_latest_end(::google::protobuf::Int64Value *PROTOBUF_NULLABLE value)
::google::protobuf::Int64Value *PROTOBUF_NONNULL mutable_latest_end()
::google::protobuf::Int64Value *PROTOBUF_NULLABLE release_latest_end()
const ::google::protobuf::Int64Value & latest_end() const
::std::string *PROTOBUF_NULLABLE release_name()
::google::protobuf::Int64Value *PROTOBUF_NULLABLE unsafe_arena_release_latest_end()
::google::protobuf::Int64Value *PROTOBUF_NONNULL mutable_earliest_start()
const ::operations_research::scheduling::jssp::Machine & machines(int index) const
::operations_research::scheduling::jssp::JobPrecedence *PROTOBUF_NONNULL mutable_precedences(int index)
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence > & precedences() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
const ::operations_research::scheduling::jssp::JobPrecedence & precedences(int index) const
void set_allocated_scaling_factor(::google::protobuf::DoubleValue *PROTOBUF_NULLABLE value)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::scheduling::jssp::Machine *PROTOBUF_NONNULL add_machines()
::google::protobuf::DoubleValue *PROTOBUF_NONNULL mutable_scaling_factor()
::operations_research::scheduling::jssp::JobPrecedence *PROTOBUF_NONNULL add_precedences()
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
void UnsafeArenaSwap(JsspInputProblem *PROTOBUF_NONNULL other)
::google::protobuf::DoubleValue *PROTOBUF_NULLABLE unsafe_arena_release_scaling_factor()
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job > *PROTOBUF_NONNULL mutable_jobs()
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine > *PROTOBUF_NONNULL mutable_machines()
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Job > & jobs() const
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::Machine > & machines() const
::operations_research::scheduling::jssp::Job *PROTOBUF_NONNULL add_jobs()
::operations_research::scheduling::jssp::Job *PROTOBUF_NONNULL mutable_jobs(int index)
const ::operations_research::scheduling::jssp::Job & jobs(int index) const
::google::protobuf::DoubleValue *PROTOBUF_NULLABLE release_scaling_factor()
friend void swap(JsspInputProblem &a, JsspInputProblem &b)
void unsafe_arena_set_allocated_scaling_factor(::google::protobuf::DoubleValue *PROTOBUF_NULLABLE value)
::operations_research::scheduling::jssp::Machine *PROTOBUF_NONNULL mutable_machines(int index)
void Swap(JsspInputProblem *PROTOBUF_NONNULL other)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::JobPrecedence > *PROTOBUF_NONNULL mutable_precedences()
const ::google::protobuf::DoubleValue & scaling_factor() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::scheduling::jssp::AssignedJob *PROTOBUF_NONNULL add_jobs()
void Swap(JsspOutputSolution *PROTOBUF_NONNULL other)
::operations_research::scheduling::jssp::AssignedJob *PROTOBUF_NONNULL mutable_jobs(int index)
JsspOutputSolution & operator=(const JsspOutputSolution &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
const ::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob > & jobs() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::google::protobuf::RepeatedPtrField<::operations_research::scheduling::jssp::AssignedJob > *PROTOBUF_NONNULL mutable_jobs()
const ::operations_research::scheduling::jssp::AssignedJob & jobs(int index) const
void UnsafeArenaSwap(JsspOutputSolution *PROTOBUF_NONNULL other)
::operations_research::scheduling::jssp::TransitionTimeMatrix *PROTOBUF_NONNULL mutable_transition_time_matrix()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::scheduling::jssp::TransitionTimeMatrix *PROTOBUF_NULLABLE unsafe_arena_release_transition_time_matrix()
void set_name(Arg_ &&arg, Args_... args)
::operations_research::scheduling::jssp::TransitionTimeMatrix *PROTOBUF_NULLABLE release_transition_time_matrix()
void set_allocated_transition_time_matrix(::operations_research::scheduling::jssp::TransitionTimeMatrix *PROTOBUF_NULLABLE value)
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
const ::operations_research::scheduling::jssp::TransitionTimeMatrix & transition_time_matrix() const
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void unsafe_arena_set_allocated_transition_time_matrix(::operations_research::scheduling::jssp::TransitionTimeMatrix *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
Machine *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
const ::google::protobuf::RepeatedField<::int64_t > & duration() const
PROTOBUF_CONSTEXPR Task(::google::protobuf::internal::ConstantInitialized)
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_cost()
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_duration()
const ::google::protobuf::RepeatedField<::int64_t > & cost() const
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
const ::google::protobuf::RepeatedField<::int32_t > & machine() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::google::protobuf::RepeatedField<::int32_t > *PROTOBUF_NONNULL mutable_machine()
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
PROTOBUF_CONSTEXPR TransitionTimeMatrix(::google::protobuf::internal::ConstantInitialized)
void Swap(TransitionTimeMatrix *PROTOBUF_NONNULL other)
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_transition_time()
const ::google::protobuf::RepeatedField<::int64_t > & transition_time() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
TransitionTimeMatrix & operator=(const TransitionTimeMatrix &from)
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fscheduling_2fjobshop_5fscheduling_2eproto
::absl::string_view GetAnyMessageName()
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull JsspInputProblem_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull JobPrecedence_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MachineDefaultTypeInternal _Machine_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull TransitionTimeMatrix_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 JobPrecedenceDefaultTypeInternal _JobPrecedence_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TransitionTimeMatrixDefaultTypeInternal _TransitionTimeMatrix_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Job_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull AssignedJob_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 JsspInputProblemDefaultTypeInternal _JsspInputProblem_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Machine_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TaskDefaultTypeInternal _Task_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Task_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AssignedJobDefaultTypeInternal _AssignedJob_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 JobDefaultTypeInternal _Job_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull JsspOutputSolution_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 JsspOutputSolutionDefaultTypeInternal _JsspOutputSolution_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AssignedTaskDefaultTypeInternal _AssignedTask_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull AssignedTask_class_data_
OR-Tools root namespace.