OR-Tools  9.2
rcpsp.pb.cc
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: ortools/scheduling/rcpsp.proto
3
5
6#include <algorithm>
7
8#include <google/protobuf/io/coded_stream.h>
9#include <google/protobuf/extension_set.h>
10#include <google/protobuf/wire_format_lite.h>
11#include <google/protobuf/descriptor.h>
12#include <google/protobuf/generated_message_reflection.h>
13#include <google/protobuf/reflection_ops.h>
14#include <google/protobuf/wire_format.h>
15// @@protoc_insertion_point(includes)
16#include <google/protobuf/port_def.inc>
17
18PROTOBUF_PRAGMA_INIT_SEG
19namespace operations_research {
20namespace scheduling {
21namespace rcpsp {
23 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
24 : max_capacity_(0)
25 , min_capacity_(0)
26 , renewable_(false)
27 , unit_cost_(0){}
30 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
32 union {
34 };
35};
36PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ResourceDefaultTypeInternal _Resource_default_instance_;
38 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
39 : demands_()
40 , _demands_cached_byte_size_(0)
41 , resources_()
42 , _resources_cached_byte_size_(0)
43 , duration_(0){}
46 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
48 union {
50 };
51};
52PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RecipeDefaultTypeInternal _Recipe_default_instance_;
54 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
55 : min_delays_()
56 , _min_delays_cached_byte_size_(0){}
59 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
61 union {
63 };
64};
65PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PerRecipeDelaysDefaultTypeInternal _PerRecipeDelays_default_instance_;
67 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
68 : recipe_delays_(){}
71 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
73 union {
75 };
76};
78constexpr Task::Task(
79 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
80 : successors_()
81 , _successors_cached_byte_size_(0)
82 , recipes_()
83 , successor_delays_(){}
86 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
88 union {
90 };
91};
92PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT TaskDefaultTypeInternal _Task_default_instance_;
94 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
95 : resources_()
96 , tasks_()
97 , basedata_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
98 , name_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
99 , is_consumer_producer_(false)
100 , is_resource_investment_(false)
101 , is_rcpsp_max_(false)
102 , deadline_(0)
103 , horizon_(0)
104 , release_date_(0)
105 , tardiness_cost_(0)
106 , mpm_time_(0)
107 , seed_(int64_t{0})
108 , due_date_(0){}
111 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
113 union {
115 };
116};
117PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RcpspProblemDefaultTypeInternal _RcpspProblem_default_instance_;
118} // namespace rcpsp
119} // namespace scheduling
120} // namespace operations_research
121static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fscheduling_2frcpsp_2eproto[6];
122static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_ortools_2fscheduling_2frcpsp_2eproto = nullptr;
123static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_ortools_2fscheduling_2frcpsp_2eproto = nullptr;
124
126 ~0u, // no _has_bits_
127 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _internal_metadata_),
128 ~0u, // no _extensions_
129 ~0u, // no _oneof_case_
130 ~0u, // no _weak_field_map_
131 ~0u, // no _inlined_string_donated_
132 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, max_capacity_),
133 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, min_capacity_),
134 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, renewable_),
135 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, unit_cost_),
136 ~0u, // no _has_bits_
137 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, _internal_metadata_),
138 ~0u, // no _extensions_
139 ~0u, // no _oneof_case_
140 ~0u, // no _weak_field_map_
141 ~0u, // no _inlined_string_donated_
142 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, duration_),
143 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, demands_),
144 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, resources_),
145 ~0u, // no _has_bits_
146 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerRecipeDelays, _internal_metadata_),
147 ~0u, // no _extensions_
148 ~0u, // no _oneof_case_
149 ~0u, // no _weak_field_map_
150 ~0u, // no _inlined_string_donated_
151 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerRecipeDelays, min_delays_),
152 ~0u, // no _has_bits_
153 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerSuccessorDelays, _internal_metadata_),
154 ~0u, // no _extensions_
155 ~0u, // no _oneof_case_
156 ~0u, // no _weak_field_map_
157 ~0u, // no _inlined_string_donated_
158 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerSuccessorDelays, recipe_delays_),
159 ~0u, // no _has_bits_
160 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, _internal_metadata_),
161 ~0u, // no _extensions_
162 ~0u, // no _oneof_case_
163 ~0u, // no _weak_field_map_
164 ~0u, // no _inlined_string_donated_
165 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, successors_),
166 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, recipes_),
167 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, successor_delays_),
168 ~0u, // no _has_bits_
169 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _internal_metadata_),
170 ~0u, // no _extensions_
171 ~0u, // no _oneof_case_
172 ~0u, // no _weak_field_map_
173 ~0u, // no _inlined_string_donated_
174 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, resources_),
175 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, tasks_),
176 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, is_consumer_producer_),
177 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, is_resource_investment_),
178 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, is_rcpsp_max_),
179 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, deadline_),
180 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, horizon_),
181 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, release_date_),
182 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, tardiness_cost_),
183 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, mpm_time_),
184 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, seed_),
185 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, basedata_),
186 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, due_date_),
187 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, name_),
188};
189static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
196};
197
198static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
199 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_Resource_default_instance_),
200 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_Recipe_default_instance_),
201 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_PerRecipeDelays_default_instance_),
202 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_PerSuccessorDelays_default_instance_),
203 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_Task_default_instance_),
204 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::scheduling::rcpsp::_RcpspProblem_default_instance_),
205};
206
207const char descriptor_table_protodef_ortools_2fscheduling_2frcpsp_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
208 "\n\036ortools/scheduling/rcpsp.proto\022$operat"
209 "ions_research.scheduling.rcpsp\"\\\n\010Resour"
210 "ce\022\024\n\014max_capacity\030\001 \001(\005\022\024\n\014min_capacity"
211 "\030\002 \001(\005\022\021\n\trenewable\030\003 \001(\010\022\021\n\tunit_cost\030\004"
212 " \001(\005\">\n\006Recipe\022\020\n\010duration\030\001 \001(\005\022\017\n\007dema"
213 "nds\030\002 \003(\005\022\021\n\tresources\030\003 \003(\005\"%\n\017PerRecip"
214 "eDelays\022\022\n\nmin_delays\030\001 \003(\005\"b\n\022PerSucces"
215 "sorDelays\022L\n\rrecipe_delays\030\001 \003(\01325.opera"
216 "tions_research.scheduling.rcpsp.PerRecip"
217 "eDelays\"\255\001\n\004Task\022\022\n\nsuccessors\030\001 \003(\005\022=\n\007"
218 "recipes\030\002 \003(\0132,.operations_research.sche"
219 "duling.rcpsp.Recipe\022R\n\020successor_delays\030"
220 "\003 \003(\01328.operations_research.scheduling.r"
221 "cpsp.PerSuccessorDelays\"\203\003\n\014RcpspProblem"
222 "\022A\n\tresources\030\001 \003(\0132..operations_researc"
223 "h.scheduling.rcpsp.Resource\0229\n\005tasks\030\002 \003"
224 "(\0132*.operations_research.scheduling.rcps"
225 "p.Task\022\034\n\024is_consumer_producer\030\003 \001(\010\022\036\n\026"
226 "is_resource_investment\030\004 \001(\010\022\024\n\014is_rcpsp"
227 "_max\030\005 \001(\010\022\020\n\010deadline\030\006 \001(\005\022\017\n\007horizon\030"
228 "\007 \001(\005\022\024\n\014release_date\030\010 \001(\005\022\026\n\016tardiness"
229 "_cost\030\t \001(\005\022\020\n\010mpm_time\030\n \001(\005\022\014\n\004seed\030\013 "
230 "\001(\003\022\020\n\010basedata\030\014 \001(\t\022\020\n\010due_date\030\r \001(\005\022"
231 "\014\n\004name\030\016 \001(\tBI\n#com.google.ortools.sche"
232 "duling.rcpspP\001\252\002\037Google.OrTools.Scheduli"
233 "ng.Rcpspb\006proto3"
234 ;
235static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fscheduling_2frcpsp_2eproto_once;
236const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fscheduling_2frcpsp_2eproto = {
237 false, false, 1016, descriptor_table_protodef_ortools_2fscheduling_2frcpsp_2eproto, "ortools/scheduling/rcpsp.proto",
241};
242PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_ortools_2fscheduling_2frcpsp_2eproto_getter() {
244}
245
246// Force running AddDescriptors() at dynamic initialization time.
247PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_ortools_2fscheduling_2frcpsp_2eproto(&descriptor_table_ortools_2fscheduling_2frcpsp_2eproto);
248namespace operations_research {
249namespace scheduling {
250namespace rcpsp {
251
252// ===================================================================
253
255 public:
256};
257
258Resource::Resource(::PROTOBUF_NAMESPACE_ID::Arena* arena,
259 bool is_message_owned)
260 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
261 SharedCtor();
262 if (!is_message_owned) {
263 RegisterArenaDtor(arena);
264 }
265 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Resource)
266}
268 : ::PROTOBUF_NAMESPACE_ID::Message() {
269 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
270 ::memcpy(&max_capacity_, &from.max_capacity_,
271 static_cast<size_t>(reinterpret_cast<char*>(&unit_cost_) -
272 reinterpret_cast<char*>(&max_capacity_)) + sizeof(unit_cost_));
273 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.Resource)
274}
275
276inline void Resource::SharedCtor() {
277::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
278 reinterpret_cast<char*>(&max_capacity_) - reinterpret_cast<char*>(this)),
279 0, static_cast<size_t>(reinterpret_cast<char*>(&unit_cost_) -
280 reinterpret_cast<char*>(&max_capacity_)) + sizeof(unit_cost_));
281}
282
284 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Resource)
285 if (GetArenaForAllocation() != nullptr) return;
286 SharedDtor();
287 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
288}
289
290inline void Resource::SharedDtor() {
291 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
292}
293
294void Resource::ArenaDtor(void* object) {
295 Resource* _this = reinterpret_cast< Resource* >(object);
296 (void)_this;
297}
298void Resource::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
299}
300void Resource::SetCachedSize(int size) const {
301 _cached_size_.Set(size);
302}
303
305// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Resource)
306 uint32_t cached_has_bits = 0;
307 // Prevent compiler warnings about cached_has_bits being unused
308 (void) cached_has_bits;
309
310 ::memset(&max_capacity_, 0, static_cast<size_t>(
311 reinterpret_cast<char*>(&unit_cost_) -
312 reinterpret_cast<char*>(&max_capacity_)) + sizeof(unit_cost_));
313 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
314}
315
316const char* Resource::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
317#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
318 while (!ctx->Done(&ptr)) {
319 uint32_t tag;
320 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
321 switch (tag >> 3) {
322 // int32 max_capacity = 1;
323 case 1:
324 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
325 max_capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
326 CHK_(ptr);
327 } else
328 goto handle_unusual;
329 continue;
330 // int32 min_capacity = 2;
331 case 2:
332 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
333 min_capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
334 CHK_(ptr);
335 } else
336 goto handle_unusual;
337 continue;
338 // bool renewable = 3;
339 case 3:
340 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
341 renewable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
342 CHK_(ptr);
343 } else
344 goto handle_unusual;
345 continue;
346 // int32 unit_cost = 4;
347 case 4:
348 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
349 unit_cost_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
350 CHK_(ptr);
351 } else
352 goto handle_unusual;
353 continue;
354 default:
355 goto handle_unusual;
356 } // switch
357 handle_unusual:
358 if ((tag == 0) || ((tag & 7) == 4)) {
359 CHK_(ptr);
360 ctx->SetLastTag(tag);
361 goto message_done;
362 }
363 ptr = UnknownFieldParse(
364 tag,
365 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
366 ptr, ctx);
367 CHK_(ptr != nullptr);
368 } // while
369message_done:
370 return ptr;
371failure:
372 ptr = nullptr;
373 goto message_done;
374#undef CHK_
375}
376
378 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
379 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Resource)
380 uint32_t cached_has_bits = 0;
381 (void) cached_has_bits;
382
383 // int32 max_capacity = 1;
384 if (this->_internal_max_capacity() != 0) {
385 target = stream->EnsureSpace(target);
386 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_max_capacity(), target);
387 }
388
389 // int32 min_capacity = 2;
390 if (this->_internal_min_capacity() != 0) {
391 target = stream->EnsureSpace(target);
392 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_min_capacity(), target);
393 }
394
395 // bool renewable = 3;
396 if (this->_internal_renewable() != 0) {
397 target = stream->EnsureSpace(target);
398 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_renewable(), target);
399 }
400
401 // int32 unit_cost = 4;
402 if (this->_internal_unit_cost() != 0) {
403 target = stream->EnsureSpace(target);
404 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_unit_cost(), target);
405 }
406
407 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
408 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
409 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
410 }
411 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Resource)
412 return target;
413}
414
416// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Resource)
417 size_t total_size = 0;
418
419 uint32_t cached_has_bits = 0;
420 // Prevent compiler warnings about cached_has_bits being unused
421 (void) cached_has_bits;
422
423 // int32 max_capacity = 1;
424 if (this->_internal_max_capacity() != 0) {
425 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_max_capacity());
426 }
427
428 // int32 min_capacity = 2;
429 if (this->_internal_min_capacity() != 0) {
430 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_min_capacity());
431 }
432
433 // bool renewable = 3;
434 if (this->_internal_renewable() != 0) {
435 total_size += 1 + 1;
436 }
437
438 // int32 unit_cost = 4;
439 if (this->_internal_unit_cost() != 0) {
440 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_unit_cost());
441 }
442
443 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
444}
445
446const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Resource::_class_data_ = {
447 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
448 Resource::MergeImpl
449};
450const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Resource::GetClassData() const { return &_class_data_; }
451
452void Resource::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
453 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
454 static_cast<Resource *>(to)->MergeFrom(
455 static_cast<const Resource &>(from));
456}
457
458
459void Resource::MergeFrom(const Resource& from) {
460// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Resource)
461 GOOGLE_DCHECK_NE(&from, this);
462 uint32_t cached_has_bits = 0;
463 (void) cached_has_bits;
464
465 if (from._internal_max_capacity() != 0) {
466 _internal_set_max_capacity(from._internal_max_capacity());
467 }
468 if (from._internal_min_capacity() != 0) {
469 _internal_set_min_capacity(from._internal_min_capacity());
470 }
471 if (from._internal_renewable() != 0) {
472 _internal_set_renewable(from._internal_renewable());
473 }
474 if (from._internal_unit_cost() != 0) {
475 _internal_set_unit_cost(from._internal_unit_cost());
476 }
477 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
478}
479
480void Resource::CopyFrom(const Resource& from) {
481// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Resource)
482 if (&from == this) return;
483 Clear();
484 MergeFrom(from);
485}
486
488 return true;
489}
490
491void Resource::InternalSwap(Resource* other) {
492 using std::swap;
493 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
494 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
495 PROTOBUF_FIELD_OFFSET(Resource, unit_cost_)
496 + sizeof(Resource::unit_cost_)
497 - PROTOBUF_FIELD_OFFSET(Resource, max_capacity_)>(
498 reinterpret_cast<char*>(&max_capacity_),
499 reinterpret_cast<char*>(&other->max_capacity_));
500}
501
502::PROTOBUF_NAMESPACE_ID::Metadata Resource::GetMetadata() const {
503 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
506}
507
508// ===================================================================
509
511 public:
512};
513
514Recipe::Recipe(::PROTOBUF_NAMESPACE_ID::Arena* arena,
515 bool is_message_owned)
516 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
517 demands_(arena),
518 resources_(arena) {
519 SharedCtor();
520 if (!is_message_owned) {
521 RegisterArenaDtor(arena);
522 }
523 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Recipe)
524}
526 : ::PROTOBUF_NAMESPACE_ID::Message(),
527 demands_(from.demands_),
528 resources_(from.resources_) {
529 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
530 duration_ = from.duration_;
531 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.Recipe)
532}
533
534inline void Recipe::SharedCtor() {
535duration_ = 0;
536}
537
539 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Recipe)
540 if (GetArenaForAllocation() != nullptr) return;
541 SharedDtor();
542 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
543}
544
545inline void Recipe::SharedDtor() {
546 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
547}
548
549void Recipe::ArenaDtor(void* object) {
550 Recipe* _this = reinterpret_cast< Recipe* >(object);
551 (void)_this;
552}
553void Recipe::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
554}
555void Recipe::SetCachedSize(int size) const {
556 _cached_size_.Set(size);
557}
558
560// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Recipe)
561 uint32_t cached_has_bits = 0;
562 // Prevent compiler warnings about cached_has_bits being unused
563 (void) cached_has_bits;
564
565 demands_.Clear();
566 resources_.Clear();
567 duration_ = 0;
568 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
569}
570
571const char* Recipe::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
572#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
573 while (!ctx->Done(&ptr)) {
574 uint32_t tag;
575 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
576 switch (tag >> 3) {
577 // int32 duration = 1;
578 case 1:
579 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
580 duration_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
581 CHK_(ptr);
582 } else
583 goto handle_unusual;
584 continue;
585 // repeated int32 demands = 2;
586 case 2:
587 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
588 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_demands(), ptr, ctx);
589 CHK_(ptr);
590 } else if (static_cast<uint8_t>(tag) == 16) {
591 _internal_add_demands(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
592 CHK_(ptr);
593 } else
594 goto handle_unusual;
595 continue;
596 // repeated int32 resources = 3;
597 case 3:
598 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
599 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_resources(), ptr, ctx);
600 CHK_(ptr);
601 } else if (static_cast<uint8_t>(tag) == 24) {
602 _internal_add_resources(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
603 CHK_(ptr);
604 } else
605 goto handle_unusual;
606 continue;
607 default:
608 goto handle_unusual;
609 } // switch
610 handle_unusual:
611 if ((tag == 0) || ((tag & 7) == 4)) {
612 CHK_(ptr);
613 ctx->SetLastTag(tag);
614 goto message_done;
615 }
616 ptr = UnknownFieldParse(
617 tag,
618 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
619 ptr, ctx);
620 CHK_(ptr != nullptr);
621 } // while
622message_done:
623 return ptr;
624failure:
625 ptr = nullptr;
626 goto message_done;
627#undef CHK_
628}
629
631 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
632 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Recipe)
633 uint32_t cached_has_bits = 0;
634 (void) cached_has_bits;
635
636 // int32 duration = 1;
637 if (this->_internal_duration() != 0) {
638 target = stream->EnsureSpace(target);
639 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_duration(), target);
640 }
641
642 // repeated int32 demands = 2;
643 {
644 int byte_size = _demands_cached_byte_size_.load(std::memory_order_relaxed);
645 if (byte_size > 0) {
646 target = stream->WriteInt32Packed(
647 2, _internal_demands(), byte_size, target);
648 }
649 }
650
651 // repeated int32 resources = 3;
652 {
653 int byte_size = _resources_cached_byte_size_.load(std::memory_order_relaxed);
654 if (byte_size > 0) {
655 target = stream->WriteInt32Packed(
656 3, _internal_resources(), byte_size, target);
657 }
658 }
659
660 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
661 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
662 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
663 }
664 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Recipe)
665 return target;
666}
667
668size_t Recipe::ByteSizeLong() const {
669// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Recipe)
670 size_t total_size = 0;
671
672 uint32_t cached_has_bits = 0;
673 // Prevent compiler warnings about cached_has_bits being unused
674 (void) cached_has_bits;
675
676 // repeated int32 demands = 2;
677 {
678 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
679 Int32Size(this->demands_);
680 if (data_size > 0) {
681 total_size += 1 +
682 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
683 static_cast<int32_t>(data_size));
684 }
685 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
686 _demands_cached_byte_size_.store(cached_size,
687 std::memory_order_relaxed);
688 total_size += data_size;
689 }
690
691 // repeated int32 resources = 3;
692 {
693 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
694 Int32Size(this->resources_);
695 if (data_size > 0) {
696 total_size += 1 +
697 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
698 static_cast<int32_t>(data_size));
699 }
700 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
701 _resources_cached_byte_size_.store(cached_size,
702 std::memory_order_relaxed);
703 total_size += data_size;
704 }
705
706 // int32 duration = 1;
707 if (this->_internal_duration() != 0) {
708 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_duration());
709 }
710
711 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
712}
713
714const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Recipe::_class_data_ = {
715 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
716 Recipe::MergeImpl
717};
718const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Recipe::GetClassData() const { return &_class_data_; }
719
720void Recipe::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
721 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
722 static_cast<Recipe *>(to)->MergeFrom(
723 static_cast<const Recipe &>(from));
724}
725
726
727void Recipe::MergeFrom(const Recipe& from) {
728// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Recipe)
729 GOOGLE_DCHECK_NE(&from, this);
730 uint32_t cached_has_bits = 0;
731 (void) cached_has_bits;
732
733 demands_.MergeFrom(from.demands_);
734 resources_.MergeFrom(from.resources_);
735 if (from._internal_duration() != 0) {
736 _internal_set_duration(from._internal_duration());
737 }
738 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
739}
740
741void Recipe::CopyFrom(const Recipe& from) {
742// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Recipe)
743 if (&from == this) return;
744 Clear();
745 MergeFrom(from);
746}
747
749 return true;
750}
751
752void Recipe::InternalSwap(Recipe* other) {
753 using std::swap;
754 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
755 demands_.InternalSwap(&other->demands_);
756 resources_.InternalSwap(&other->resources_);
757 swap(duration_, other->duration_);
758}
759
760::PROTOBUF_NAMESPACE_ID::Metadata Recipe::GetMetadata() const {
761 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
764}
765
766// ===================================================================
767
769 public:
770};
771
772PerRecipeDelays::PerRecipeDelays(::PROTOBUF_NAMESPACE_ID::Arena* arena,
773 bool is_message_owned)
774 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
775 min_delays_(arena) {
776 SharedCtor();
777 if (!is_message_owned) {
778 RegisterArenaDtor(arena);
779 }
780 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
781}
783 : ::PROTOBUF_NAMESPACE_ID::Message(),
784 min_delays_(from.min_delays_) {
785 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
786 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
787}
788
789inline void PerRecipeDelays::SharedCtor() {
790}
791
793 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
794 if (GetArenaForAllocation() != nullptr) return;
795 SharedDtor();
796 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
797}
798
799inline void PerRecipeDelays::SharedDtor() {
800 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
801}
802
803void PerRecipeDelays::ArenaDtor(void* object) {
804 PerRecipeDelays* _this = reinterpret_cast< PerRecipeDelays* >(object);
805 (void)_this;
806}
807void PerRecipeDelays::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
808}
809void PerRecipeDelays::SetCachedSize(int size) const {
810 _cached_size_.Set(size);
811}
812
814// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
815 uint32_t cached_has_bits = 0;
816 // Prevent compiler warnings about cached_has_bits being unused
817 (void) cached_has_bits;
818
819 min_delays_.Clear();
820 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
821}
822
823const char* PerRecipeDelays::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
824#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
825 while (!ctx->Done(&ptr)) {
826 uint32_t tag;
827 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
828 switch (tag >> 3) {
829 // repeated int32 min_delays = 1;
830 case 1:
831 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
832 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_min_delays(), ptr, ctx);
833 CHK_(ptr);
834 } else if (static_cast<uint8_t>(tag) == 8) {
835 _internal_add_min_delays(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
836 CHK_(ptr);
837 } else
838 goto handle_unusual;
839 continue;
840 default:
841 goto handle_unusual;
842 } // switch
843 handle_unusual:
844 if ((tag == 0) || ((tag & 7) == 4)) {
845 CHK_(ptr);
846 ctx->SetLastTag(tag);
847 goto message_done;
848 }
849 ptr = UnknownFieldParse(
850 tag,
851 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
852 ptr, ctx);
853 CHK_(ptr != nullptr);
854 } // while
855message_done:
856 return ptr;
857failure:
858 ptr = nullptr;
859 goto message_done;
860#undef CHK_
861}
862
864 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
865 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
866 uint32_t cached_has_bits = 0;
867 (void) cached_has_bits;
868
869 // repeated int32 min_delays = 1;
870 {
871 int byte_size = _min_delays_cached_byte_size_.load(std::memory_order_relaxed);
872 if (byte_size > 0) {
873 target = stream->WriteInt32Packed(
874 1, _internal_min_delays(), byte_size, target);
875 }
876 }
877
878 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
879 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
880 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
881 }
882 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.PerRecipeDelays)
883 return target;
884}
885
887// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
888 size_t total_size = 0;
889
890 uint32_t cached_has_bits = 0;
891 // Prevent compiler warnings about cached_has_bits being unused
892 (void) cached_has_bits;
893
894 // repeated int32 min_delays = 1;
895 {
896 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
897 Int32Size(this->min_delays_);
898 if (data_size > 0) {
899 total_size += 1 +
900 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
901 static_cast<int32_t>(data_size));
902 }
903 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
904 _min_delays_cached_byte_size_.store(cached_size,
905 std::memory_order_relaxed);
906 total_size += data_size;
907 }
908
909 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
910}
911
912const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PerRecipeDelays::_class_data_ = {
913 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
914 PerRecipeDelays::MergeImpl
915};
916const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PerRecipeDelays::GetClassData() const { return &_class_data_; }
917
918void PerRecipeDelays::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
919 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
920 static_cast<PerRecipeDelays *>(to)->MergeFrom(
921 static_cast<const PerRecipeDelays &>(from));
922}
923
924
926// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
927 GOOGLE_DCHECK_NE(&from, this);
928 uint32_t cached_has_bits = 0;
929 (void) cached_has_bits;
930
931 min_delays_.MergeFrom(from.min_delays_);
932 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
933}
934
936// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
937 if (&from == this) return;
938 Clear();
939 MergeFrom(from);
940}
941
943 return true;
944}
945
946void PerRecipeDelays::InternalSwap(PerRecipeDelays* other) {
947 using std::swap;
948 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
949 min_delays_.InternalSwap(&other->min_delays_);
950}
951
952::PROTOBUF_NAMESPACE_ID::Metadata PerRecipeDelays::GetMetadata() const {
953 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
956}
957
958// ===================================================================
959
961 public:
962};
963
964PerSuccessorDelays::PerSuccessorDelays(::PROTOBUF_NAMESPACE_ID::Arena* arena,
965 bool is_message_owned)
966 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
967 recipe_delays_(arena) {
968 SharedCtor();
969 if (!is_message_owned) {
970 RegisterArenaDtor(arena);
971 }
972 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
973}
975 : ::PROTOBUF_NAMESPACE_ID::Message(),
976 recipe_delays_(from.recipe_delays_) {
977 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
978 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
979}
980
981inline void PerSuccessorDelays::SharedCtor() {
982}
983
985 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
986 if (GetArenaForAllocation() != nullptr) return;
987 SharedDtor();
988 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
989}
990
991inline void PerSuccessorDelays::SharedDtor() {
992 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
993}
994
995void PerSuccessorDelays::ArenaDtor(void* object) {
996 PerSuccessorDelays* _this = reinterpret_cast< PerSuccessorDelays* >(object);
997 (void)_this;
998}
999void PerSuccessorDelays::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1000}
1001void PerSuccessorDelays::SetCachedSize(int size) const {
1002 _cached_size_.Set(size);
1003}
1004
1006// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1007 uint32_t cached_has_bits = 0;
1008 // Prevent compiler warnings about cached_has_bits being unused
1009 (void) cached_has_bits;
1010
1011 recipe_delays_.Clear();
1012 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1013}
1014
1015const char* PerSuccessorDelays::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1016#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1017 while (!ctx->Done(&ptr)) {
1018 uint32_t tag;
1019 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1020 switch (tag >> 3) {
1021 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1022 case 1:
1023 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
1024 ptr -= 1;
1025 do {
1026 ptr += 1;
1027 ptr = ctx->ParseMessage(_internal_add_recipe_delays(), ptr);
1028 CHK_(ptr);
1029 if (!ctx->DataAvailable(ptr)) break;
1030 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
1031 } else
1032 goto handle_unusual;
1033 continue;
1034 default:
1035 goto handle_unusual;
1036 } // switch
1037 handle_unusual:
1038 if ((tag == 0) || ((tag & 7) == 4)) {
1039 CHK_(ptr);
1040 ctx->SetLastTag(tag);
1041 goto message_done;
1042 }
1043 ptr = UnknownFieldParse(
1044 tag,
1045 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1046 ptr, ctx);
1047 CHK_(ptr != nullptr);
1048 } // while
1049message_done:
1050 return ptr;
1051failure:
1052 ptr = nullptr;
1053 goto message_done;
1054#undef CHK_
1055}
1056
1058 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1059 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1060 uint32_t cached_has_bits = 0;
1061 (void) cached_has_bits;
1062
1063 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1064 for (unsigned int i = 0,
1065 n = static_cast<unsigned int>(this->_internal_recipe_delays_size()); i < n; i++) {
1066 target = stream->EnsureSpace(target);
1067 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1068 InternalWriteMessage(1, this->_internal_recipe_delays(i), target, stream);
1069 }
1070
1071 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1072 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1073 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1074 }
1075 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1076 return target;
1077}
1078
1080// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1081 size_t total_size = 0;
1082
1083 uint32_t cached_has_bits = 0;
1084 // Prevent compiler warnings about cached_has_bits being unused
1085 (void) cached_has_bits;
1086
1087 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1088 total_size += 1UL * this->_internal_recipe_delays_size();
1089 for (const auto& msg : this->recipe_delays_) {
1090 total_size +=
1091 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1092 }
1093
1094 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1095}
1096
1097const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PerSuccessorDelays::_class_data_ = {
1098 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1099 PerSuccessorDelays::MergeImpl
1100};
1101const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PerSuccessorDelays::GetClassData() const { return &_class_data_; }
1102
1103void PerSuccessorDelays::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1104 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1105 static_cast<PerSuccessorDelays *>(to)->MergeFrom(
1106 static_cast<const PerSuccessorDelays &>(from));
1107}
1108
1109
1111// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1112 GOOGLE_DCHECK_NE(&from, this);
1113 uint32_t cached_has_bits = 0;
1114 (void) cached_has_bits;
1115
1116 recipe_delays_.MergeFrom(from.recipe_delays_);
1117 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1118}
1119
1121// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1122 if (&from == this) return;
1123 Clear();
1124 MergeFrom(from);
1125}
1126
1128 return true;
1129}
1130
1131void PerSuccessorDelays::InternalSwap(PerSuccessorDelays* other) {
1132 using std::swap;
1133 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1134 recipe_delays_.InternalSwap(&other->recipe_delays_);
1135}
1136
1137::PROTOBUF_NAMESPACE_ID::Metadata PerSuccessorDelays::GetMetadata() const {
1138 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1141}
1142
1143// ===================================================================
1144
1146 public:
1147};
1148
1149Task::Task(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1150 bool is_message_owned)
1151 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
1152 successors_(arena),
1153 recipes_(arena),
1154 successor_delays_(arena) {
1155 SharedCtor();
1156 if (!is_message_owned) {
1157 RegisterArenaDtor(arena);
1158 }
1159 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Task)
1160}
1161Task::Task(const Task& from)
1162 : ::PROTOBUF_NAMESPACE_ID::Message(),
1163 successors_(from.successors_),
1164 recipes_(from.recipes_),
1165 successor_delays_(from.successor_delays_) {
1166 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1167 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.Task)
1168}
1169
1170inline void Task::SharedCtor() {
1171}
1172
1174 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Task)
1175 if (GetArenaForAllocation() != nullptr) return;
1176 SharedDtor();
1177 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1178}
1179
1180inline void Task::SharedDtor() {
1181 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1182}
1183
1184void Task::ArenaDtor(void* object) {
1185 Task* _this = reinterpret_cast< Task* >(object);
1186 (void)_this;
1187}
1188void Task::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1189}
1190void Task::SetCachedSize(int size) const {
1191 _cached_size_.Set(size);
1192}
1193
1195// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Task)
1196 uint32_t cached_has_bits = 0;
1197 // Prevent compiler warnings about cached_has_bits being unused
1198 (void) cached_has_bits;
1199
1200 successors_.Clear();
1201 recipes_.Clear();
1202 successor_delays_.Clear();
1203 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1204}
1205
1206const char* Task::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1207#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1208 while (!ctx->Done(&ptr)) {
1209 uint32_t tag;
1210 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1211 switch (tag >> 3) {
1212 // repeated int32 successors = 1;
1213 case 1:
1214 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
1215 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_successors(), ptr, ctx);
1216 CHK_(ptr);
1217 } else if (static_cast<uint8_t>(tag) == 8) {
1218 _internal_add_successors(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
1219 CHK_(ptr);
1220 } else
1221 goto handle_unusual;
1222 continue;
1223 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1224 case 2:
1225 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
1226 ptr -= 1;
1227 do {
1228 ptr += 1;
1229 ptr = ctx->ParseMessage(_internal_add_recipes(), ptr);
1230 CHK_(ptr);
1231 if (!ctx->DataAvailable(ptr)) break;
1232 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
1233 } else
1234 goto handle_unusual;
1235 continue;
1236 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1237 case 3:
1238 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
1239 ptr -= 1;
1240 do {
1241 ptr += 1;
1242 ptr = ctx->ParseMessage(_internal_add_successor_delays(), ptr);
1243 CHK_(ptr);
1244 if (!ctx->DataAvailable(ptr)) break;
1245 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
1246 } else
1247 goto handle_unusual;
1248 continue;
1249 default:
1250 goto handle_unusual;
1251 } // switch
1252 handle_unusual:
1253 if ((tag == 0) || ((tag & 7) == 4)) {
1254 CHK_(ptr);
1255 ctx->SetLastTag(tag);
1256 goto message_done;
1257 }
1258 ptr = UnknownFieldParse(
1259 tag,
1260 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1261 ptr, ctx);
1262 CHK_(ptr != nullptr);
1263 } // while
1264message_done:
1265 return ptr;
1266failure:
1267 ptr = nullptr;
1268 goto message_done;
1269#undef CHK_
1270}
1271
1273 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1274 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Task)
1275 uint32_t cached_has_bits = 0;
1276 (void) cached_has_bits;
1277
1278 // repeated int32 successors = 1;
1279 {
1280 int byte_size = _successors_cached_byte_size_.load(std::memory_order_relaxed);
1281 if (byte_size > 0) {
1282 target = stream->WriteInt32Packed(
1283 1, _internal_successors(), byte_size, target);
1284 }
1285 }
1286
1287 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1288 for (unsigned int i = 0,
1289 n = static_cast<unsigned int>(this->_internal_recipes_size()); i < n; i++) {
1290 target = stream->EnsureSpace(target);
1291 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1292 InternalWriteMessage(2, this->_internal_recipes(i), target, stream);
1293 }
1294
1295 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1296 for (unsigned int i = 0,
1297 n = static_cast<unsigned int>(this->_internal_successor_delays_size()); i < n; i++) {
1298 target = stream->EnsureSpace(target);
1299 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1300 InternalWriteMessage(3, this->_internal_successor_delays(i), target, stream);
1301 }
1302
1303 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1304 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1305 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1306 }
1307 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Task)
1308 return target;
1309}
1310
1311size_t Task::ByteSizeLong() const {
1312// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Task)
1313 size_t total_size = 0;
1314
1315 uint32_t cached_has_bits = 0;
1316 // Prevent compiler warnings about cached_has_bits being unused
1317 (void) cached_has_bits;
1318
1319 // repeated int32 successors = 1;
1320 {
1321 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1322 Int32Size(this->successors_);
1323 if (data_size > 0) {
1324 total_size += 1 +
1325 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
1326 static_cast<int32_t>(data_size));
1327 }
1328 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
1329 _successors_cached_byte_size_.store(cached_size,
1330 std::memory_order_relaxed);
1331 total_size += data_size;
1332 }
1333
1334 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1335 total_size += 1UL * this->_internal_recipes_size();
1336 for (const auto& msg : this->recipes_) {
1337 total_size +=
1338 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1339 }
1340
1341 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1342 total_size += 1UL * this->_internal_successor_delays_size();
1343 for (const auto& msg : this->successor_delays_) {
1344 total_size +=
1345 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1346 }
1347
1348 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1349}
1350
1351const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Task::_class_data_ = {
1352 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1353 Task::MergeImpl
1354};
1355const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Task::GetClassData() const { return &_class_data_; }
1356
1357void Task::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1358 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1359 static_cast<Task *>(to)->MergeFrom(
1360 static_cast<const Task &>(from));
1361}
1362
1363
1364void Task::MergeFrom(const Task& from) {
1365// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Task)
1366 GOOGLE_DCHECK_NE(&from, this);
1367 uint32_t cached_has_bits = 0;
1368 (void) cached_has_bits;
1369
1370 successors_.MergeFrom(from.successors_);
1371 recipes_.MergeFrom(from.recipes_);
1372 successor_delays_.MergeFrom(from.successor_delays_);
1373 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1374}
1375
1376void Task::CopyFrom(const Task& from) {
1377// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Task)
1378 if (&from == this) return;
1379 Clear();
1380 MergeFrom(from);
1381}
1382
1384 return true;
1385}
1386
1387void Task::InternalSwap(Task* other) {
1388 using std::swap;
1389 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1390 successors_.InternalSwap(&other->successors_);
1391 recipes_.InternalSwap(&other->recipes_);
1392 successor_delays_.InternalSwap(&other->successor_delays_);
1393}
1394
1395::PROTOBUF_NAMESPACE_ID::Metadata Task::GetMetadata() const {
1396 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1399}
1400
1401// ===================================================================
1402
1404 public:
1405};
1406
1407RcpspProblem::RcpspProblem(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1408 bool is_message_owned)
1409 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
1410 resources_(arena),
1411 tasks_(arena) {
1412 SharedCtor();
1413 if (!is_message_owned) {
1414 RegisterArenaDtor(arena);
1415 }
1416 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.RcpspProblem)
1417}
1419 : ::PROTOBUF_NAMESPACE_ID::Message(),
1420 resources_(from.resources_),
1421 tasks_(from.tasks_) {
1422 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1423 basedata_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1424 #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
1425 basedata_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
1426 #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
1427 if (!from._internal_basedata().empty()) {
1428 basedata_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_basedata(),
1429 GetArenaForAllocation());
1430 }
1431 name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1432 #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
1433 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
1434 #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
1435 if (!from._internal_name().empty()) {
1436 name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_name(),
1437 GetArenaForAllocation());
1438 }
1439 ::memcpy(&is_consumer_producer_, &from.is_consumer_producer_,
1440 static_cast<size_t>(reinterpret_cast<char*>(&due_date_) -
1441 reinterpret_cast<char*>(&is_consumer_producer_)) + sizeof(due_date_));
1442 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.RcpspProblem)
1443}
1444
1445inline void RcpspProblem::SharedCtor() {
1446basedata_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1447#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
1448 basedata_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
1449#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
1450name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1451#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
1452 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
1453#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
1454::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
1455 reinterpret_cast<char*>(&is_consumer_producer_) - reinterpret_cast<char*>(this)),
1456 0, static_cast<size_t>(reinterpret_cast<char*>(&due_date_) -
1457 reinterpret_cast<char*>(&is_consumer_producer_)) + sizeof(due_date_));
1458}
1459
1461 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.RcpspProblem)
1462 if (GetArenaForAllocation() != nullptr) return;
1463 SharedDtor();
1464 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1465}
1466
1467inline void RcpspProblem::SharedDtor() {
1468 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1469 basedata_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1470 name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1471}
1472
1473void RcpspProblem::ArenaDtor(void* object) {
1474 RcpspProblem* _this = reinterpret_cast< RcpspProblem* >(object);
1475 (void)_this;
1476}
1477void RcpspProblem::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1478}
1479void RcpspProblem::SetCachedSize(int size) const {
1480 _cached_size_.Set(size);
1481}
1482
1484// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.RcpspProblem)
1485 uint32_t cached_has_bits = 0;
1486 // Prevent compiler warnings about cached_has_bits being unused
1487 (void) cached_has_bits;
1488
1489 resources_.Clear();
1490 tasks_.Clear();
1491 basedata_.ClearToEmpty();
1492 name_.ClearToEmpty();
1493 ::memset(&is_consumer_producer_, 0, static_cast<size_t>(
1494 reinterpret_cast<char*>(&due_date_) -
1495 reinterpret_cast<char*>(&is_consumer_producer_)) + sizeof(due_date_));
1496 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1497}
1498
1499const char* RcpspProblem::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1500#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1501 while (!ctx->Done(&ptr)) {
1502 uint32_t tag;
1503 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1504 switch (tag >> 3) {
1505 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
1506 case 1:
1507 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
1508 ptr -= 1;
1509 do {
1510 ptr += 1;
1511 ptr = ctx->ParseMessage(_internal_add_resources(), ptr);
1512 CHK_(ptr);
1513 if (!ctx->DataAvailable(ptr)) break;
1514 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
1515 } else
1516 goto handle_unusual;
1517 continue;
1518 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
1519 case 2:
1520 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
1521 ptr -= 1;
1522 do {
1523 ptr += 1;
1524 ptr = ctx->ParseMessage(_internal_add_tasks(), ptr);
1525 CHK_(ptr);
1526 if (!ctx->DataAvailable(ptr)) break;
1527 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
1528 } else
1529 goto handle_unusual;
1530 continue;
1531 // bool is_consumer_producer = 3;
1532 case 3:
1533 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
1534 is_consumer_producer_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1535 CHK_(ptr);
1536 } else
1537 goto handle_unusual;
1538 continue;
1539 // bool is_resource_investment = 4;
1540 case 4:
1541 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
1542 is_resource_investment_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1543 CHK_(ptr);
1544 } else
1545 goto handle_unusual;
1546 continue;
1547 // bool is_rcpsp_max = 5;
1548 case 5:
1549 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
1550 is_rcpsp_max_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1551 CHK_(ptr);
1552 } else
1553 goto handle_unusual;
1554 continue;
1555 // int32 deadline = 6;
1556 case 6:
1557 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
1558 deadline_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1559 CHK_(ptr);
1560 } else
1561 goto handle_unusual;
1562 continue;
1563 // int32 horizon = 7;
1564 case 7:
1565 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
1566 horizon_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1567 CHK_(ptr);
1568 } else
1569 goto handle_unusual;
1570 continue;
1571 // int32 release_date = 8;
1572 case 8:
1573 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
1574 release_date_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1575 CHK_(ptr);
1576 } else
1577 goto handle_unusual;
1578 continue;
1579 // int32 tardiness_cost = 9;
1580 case 9:
1581 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
1582 tardiness_cost_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1583 CHK_(ptr);
1584 } else
1585 goto handle_unusual;
1586 continue;
1587 // int32 mpm_time = 10;
1588 case 10:
1589 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
1590 mpm_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1591 CHK_(ptr);
1592 } else
1593 goto handle_unusual;
1594 continue;
1595 // int64 seed = 11;
1596 case 11:
1597 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
1598 seed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1599 CHK_(ptr);
1600 } else
1601 goto handle_unusual;
1602 continue;
1603 // string basedata = 12;
1604 case 12:
1605 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
1606 auto str = _internal_mutable_basedata();
1607 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
1608 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.scheduling.rcpsp.RcpspProblem.basedata"));
1609 CHK_(ptr);
1610 } else
1611 goto handle_unusual;
1612 continue;
1613 // int32 due_date = 13;
1614 case 13:
1615 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
1616 due_date_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
1617 CHK_(ptr);
1618 } else
1619 goto handle_unusual;
1620 continue;
1621 // string name = 14;
1622 case 14:
1623 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 114)) {
1624 auto str = _internal_mutable_name();
1625 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
1626 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.scheduling.rcpsp.RcpspProblem.name"));
1627 CHK_(ptr);
1628 } else
1629 goto handle_unusual;
1630 continue;
1631 default:
1632 goto handle_unusual;
1633 } // switch
1634 handle_unusual:
1635 if ((tag == 0) || ((tag & 7) == 4)) {
1636 CHK_(ptr);
1637 ctx->SetLastTag(tag);
1638 goto message_done;
1639 }
1640 ptr = UnknownFieldParse(
1641 tag,
1642 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1643 ptr, ctx);
1644 CHK_(ptr != nullptr);
1645 } // while
1646message_done:
1647 return ptr;
1648failure:
1649 ptr = nullptr;
1650 goto message_done;
1651#undef CHK_
1652}
1653
1655 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1656 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.RcpspProblem)
1657 uint32_t cached_has_bits = 0;
1658 (void) cached_has_bits;
1659
1660 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
1661 for (unsigned int i = 0,
1662 n = static_cast<unsigned int>(this->_internal_resources_size()); i < n; i++) {
1663 target = stream->EnsureSpace(target);
1664 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1665 InternalWriteMessage(1, this->_internal_resources(i), target, stream);
1666 }
1667
1668 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
1669 for (unsigned int i = 0,
1670 n = static_cast<unsigned int>(this->_internal_tasks_size()); i < n; i++) {
1671 target = stream->EnsureSpace(target);
1672 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1673 InternalWriteMessage(2, this->_internal_tasks(i), target, stream);
1674 }
1675
1676 // bool is_consumer_producer = 3;
1677 if (this->_internal_is_consumer_producer() != 0) {
1678 target = stream->EnsureSpace(target);
1679 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_is_consumer_producer(), target);
1680 }
1681
1682 // bool is_resource_investment = 4;
1683 if (this->_internal_is_resource_investment() != 0) {
1684 target = stream->EnsureSpace(target);
1685 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_is_resource_investment(), target);
1686 }
1687
1688 // bool is_rcpsp_max = 5;
1689 if (this->_internal_is_rcpsp_max() != 0) {
1690 target = stream->EnsureSpace(target);
1691 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_is_rcpsp_max(), target);
1692 }
1693
1694 // int32 deadline = 6;
1695 if (this->_internal_deadline() != 0) {
1696 target = stream->EnsureSpace(target);
1697 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_deadline(), target);
1698 }
1699
1700 // int32 horizon = 7;
1701 if (this->_internal_horizon() != 0) {
1702 target = stream->EnsureSpace(target);
1703 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_horizon(), target);
1704 }
1705
1706 // int32 release_date = 8;
1707 if (this->_internal_release_date() != 0) {
1708 target = stream->EnsureSpace(target);
1709 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(8, this->_internal_release_date(), target);
1710 }
1711
1712 // int32 tardiness_cost = 9;
1713 if (this->_internal_tardiness_cost() != 0) {
1714 target = stream->EnsureSpace(target);
1715 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(9, this->_internal_tardiness_cost(), target);
1716 }
1717
1718 // int32 mpm_time = 10;
1719 if (this->_internal_mpm_time() != 0) {
1720 target = stream->EnsureSpace(target);
1721 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(10, this->_internal_mpm_time(), target);
1722 }
1723
1724 // int64 seed = 11;
1725 if (this->_internal_seed() != 0) {
1726 target = stream->EnsureSpace(target);
1727 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(11, this->_internal_seed(), target);
1728 }
1729
1730 // string basedata = 12;
1731 if (!this->_internal_basedata().empty()) {
1732 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
1733 this->_internal_basedata().data(), static_cast<int>(this->_internal_basedata().length()),
1734 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
1735 "operations_research.scheduling.rcpsp.RcpspProblem.basedata");
1736 target = stream->WriteStringMaybeAliased(
1737 12, this->_internal_basedata(), target);
1738 }
1739
1740 // int32 due_date = 13;
1741 if (this->_internal_due_date() != 0) {
1742 target = stream->EnsureSpace(target);
1743 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(13, this->_internal_due_date(), target);
1744 }
1745
1746 // string name = 14;
1747 if (!this->_internal_name().empty()) {
1748 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
1749 this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
1750 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
1751 "operations_research.scheduling.rcpsp.RcpspProblem.name");
1752 target = stream->WriteStringMaybeAliased(
1753 14, this->_internal_name(), target);
1754 }
1755
1756 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1757 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1758 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1759 }
1760 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.RcpspProblem)
1761 return target;
1762}
1763
1765// @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.RcpspProblem)
1766 size_t total_size = 0;
1767
1768 uint32_t cached_has_bits = 0;
1769 // Prevent compiler warnings about cached_has_bits being unused
1770 (void) cached_has_bits;
1771
1772 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
1773 total_size += 1UL * this->_internal_resources_size();
1774 for (const auto& msg : this->resources_) {
1775 total_size +=
1776 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1777 }
1778
1779 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
1780 total_size += 1UL * this->_internal_tasks_size();
1781 for (const auto& msg : this->tasks_) {
1782 total_size +=
1783 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1784 }
1785
1786 // string basedata = 12;
1787 if (!this->_internal_basedata().empty()) {
1788 total_size += 1 +
1789 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
1790 this->_internal_basedata());
1791 }
1792
1793 // string name = 14;
1794 if (!this->_internal_name().empty()) {
1795 total_size += 1 +
1796 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
1797 this->_internal_name());
1798 }
1799
1800 // bool is_consumer_producer = 3;
1801 if (this->_internal_is_consumer_producer() != 0) {
1802 total_size += 1 + 1;
1803 }
1804
1805 // bool is_resource_investment = 4;
1806 if (this->_internal_is_resource_investment() != 0) {
1807 total_size += 1 + 1;
1808 }
1809
1810 // bool is_rcpsp_max = 5;
1811 if (this->_internal_is_rcpsp_max() != 0) {
1812 total_size += 1 + 1;
1813 }
1814
1815 // int32 deadline = 6;
1816 if (this->_internal_deadline() != 0) {
1817 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_deadline());
1818 }
1819
1820 // int32 horizon = 7;
1821 if (this->_internal_horizon() != 0) {
1822 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_horizon());
1823 }
1824
1825 // int32 release_date = 8;
1826 if (this->_internal_release_date() != 0) {
1827 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_release_date());
1828 }
1829
1830 // int32 tardiness_cost = 9;
1831 if (this->_internal_tardiness_cost() != 0) {
1832 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_tardiness_cost());
1833 }
1834
1835 // int32 mpm_time = 10;
1836 if (this->_internal_mpm_time() != 0) {
1837 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_mpm_time());
1838 }
1839
1840 // int64 seed = 11;
1841 if (this->_internal_seed() != 0) {
1842 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_seed());
1843 }
1844
1845 // int32 due_date = 13;
1846 if (this->_internal_due_date() != 0) {
1847 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_due_date());
1848 }
1849
1850 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1851}
1852
1853const ::PROTOBUF_NAMESPACE_ID::Message::ClassData RcpspProblem::_class_data_ = {
1854 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1855 RcpspProblem::MergeImpl
1856};
1857const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*RcpspProblem::GetClassData() const { return &_class_data_; }
1858
1859void RcpspProblem::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1860 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1861 static_cast<RcpspProblem *>(to)->MergeFrom(
1862 static_cast<const RcpspProblem &>(from));
1863}
1864
1865
1867// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.RcpspProblem)
1868 GOOGLE_DCHECK_NE(&from, this);
1869 uint32_t cached_has_bits = 0;
1870 (void) cached_has_bits;
1871
1872 resources_.MergeFrom(from.resources_);
1873 tasks_.MergeFrom(from.tasks_);
1874 if (!from._internal_basedata().empty()) {
1875 _internal_set_basedata(from._internal_basedata());
1876 }
1877 if (!from._internal_name().empty()) {
1878 _internal_set_name(from._internal_name());
1879 }
1880 if (from._internal_is_consumer_producer() != 0) {
1881 _internal_set_is_consumer_producer(from._internal_is_consumer_producer());
1882 }
1883 if (from._internal_is_resource_investment() != 0) {
1884 _internal_set_is_resource_investment(from._internal_is_resource_investment());
1885 }
1886 if (from._internal_is_rcpsp_max() != 0) {
1887 _internal_set_is_rcpsp_max(from._internal_is_rcpsp_max());
1888 }
1889 if (from._internal_deadline() != 0) {
1890 _internal_set_deadline(from._internal_deadline());
1891 }
1892 if (from._internal_horizon() != 0) {
1893 _internal_set_horizon(from._internal_horizon());
1894 }
1895 if (from._internal_release_date() != 0) {
1896 _internal_set_release_date(from._internal_release_date());
1897 }
1898 if (from._internal_tardiness_cost() != 0) {
1899 _internal_set_tardiness_cost(from._internal_tardiness_cost());
1900 }
1901 if (from._internal_mpm_time() != 0) {
1902 _internal_set_mpm_time(from._internal_mpm_time());
1903 }
1904 if (from._internal_seed() != 0) {
1905 _internal_set_seed(from._internal_seed());
1906 }
1907 if (from._internal_due_date() != 0) {
1908 _internal_set_due_date(from._internal_due_date());
1909 }
1910 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1911}
1912
1914// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.RcpspProblem)
1915 if (&from == this) return;
1916 Clear();
1917 MergeFrom(from);
1918}
1919
1921 return true;
1922}
1923
1924void RcpspProblem::InternalSwap(RcpspProblem* other) {
1925 using std::swap;
1926 auto* lhs_arena = GetArenaForAllocation();
1927 auto* rhs_arena = other->GetArenaForAllocation();
1928 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1929 resources_.InternalSwap(&other->resources_);
1930 tasks_.InternalSwap(&other->tasks_);
1931 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
1932 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1933 &basedata_, lhs_arena,
1934 &other->basedata_, rhs_arena
1935 );
1936 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
1937 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1938 &name_, lhs_arena,
1939 &other->name_, rhs_arena
1940 );
1941 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1942 PROTOBUF_FIELD_OFFSET(RcpspProblem, due_date_)
1943 + sizeof(RcpspProblem::due_date_)
1944 - PROTOBUF_FIELD_OFFSET(RcpspProblem, is_consumer_producer_)>(
1945 reinterpret_cast<char*>(&is_consumer_producer_),
1946 reinterpret_cast<char*>(&other->is_consumer_producer_));
1947}
1948
1949::PROTOBUF_NAMESPACE_ID::Metadata RcpspProblem::GetMetadata() const {
1950 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1953}
1954
1955// @@protoc_insertion_point(namespace_scope)
1956} // namespace rcpsp
1957} // namespace scheduling
1958} // namespace operations_research
1959PROTOBUF_NAMESPACE_OPEN
1960template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::Resource* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Resource >(Arena* arena) {
1961 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::Resource >(arena);
1962}
1963template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::Recipe* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Recipe >(Arena* arena) {
1964 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::Recipe >(arena);
1965}
1966template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::PerRecipeDelays* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::PerRecipeDelays >(Arena* arena) {
1967 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::PerRecipeDelays >(arena);
1968}
1969template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::PerSuccessorDelays* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::PerSuccessorDelays >(Arena* arena) {
1970 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::PerSuccessorDelays >(arena);
1971}
1972template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::Task* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Task >(Arena* arena) {
1973 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::Task >(arena);
1974}
1975template<> PROTOBUF_NOINLINE ::operations_research::scheduling::rcpsp::RcpspProblem* Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::RcpspProblem >(Arena* arena) {
1976 return Arena::CreateMessageInternal< ::operations_research::scheduling::rcpsp::RcpspProblem >(arena);
1977}
1978PROTOBUF_NAMESPACE_CLOSE
1979
1980// @@protoc_insertion_point(global_scope)
1981#include <google/protobuf/port_undef.inc>
void MergeFrom(const PerRecipeDelays &from)
Definition: rcpsp.pb.cc:925
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:823
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:813
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:916
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:952
void CopyFrom(const PerRecipeDelays &from)
Definition: rcpsp.pb.cc:935
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:863
void MergeFrom(const PerSuccessorDelays &from)
Definition: rcpsp.pb.cc:1110
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:1015
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:1005
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:1101
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:1137
void CopyFrom(const PerSuccessorDelays &from)
Definition: rcpsp.pb.cc:1120
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:1057
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:1499
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:1483
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:1857
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:1949
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:1654
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:571
friend void swap(Recipe &a, Recipe &b)
Definition: rcpsp.pb.h:323
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:559
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:718
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:760
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:630
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:316
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:304
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:450
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:502
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:377
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: rcpsp.pb.cc:1206
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: rcpsp.pb.cc:1194
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Definition: rcpsp.pb.cc:1355
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: rcpsp.pb.cc:1395
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: rcpsp.pb.cc:1272
void swap(IdMap< K, V > &a, IdMap< K, V > &b)
Definition: id_map.h:262
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ResourceDefaultTypeInternal _Resource_default_instance_
Definition: rcpsp.pb.cc:36
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PerSuccessorDelaysDefaultTypeInternal _PerSuccessorDelays_default_instance_
Definition: rcpsp.pb.cc:77
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT TaskDefaultTypeInternal _Task_default_instance_
Definition: rcpsp.pb.cc:92
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RcpspProblemDefaultTypeInternal _RcpspProblem_default_instance_
Definition: rcpsp.pb.cc:117
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PerRecipeDelaysDefaultTypeInternal _PerRecipeDelays_default_instance_
Definition: rcpsp.pb.cc:65
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RecipeDefaultTypeInternal _Recipe_default_instance_
Definition: rcpsp.pb.cc:52
Collection of objects used to extend the Constraint Solver library.
static constexpr ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fscheduling_2frcpsp_2eproto_once
Definition: rcpsp.pb.cc:235
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::Resource * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Resource >(Arena *arena)
Definition: rcpsp.pb.cc:1960
#define CHK_(x)
PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::RcpspProblem * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::RcpspProblem >(Arena *arena)
Definition: rcpsp.pb.cc:1975
PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::PerSuccessorDelays * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::PerSuccessorDelays >(Arena *arena)
Definition: rcpsp.pb.cc:1969
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fscheduling_2frcpsp_2eproto
Definition: rcpsp.pb.cc:236
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fscheduling_2frcpsp_2eproto[6]
Definition: rcpsp.pb.cc:121
PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::Recipe * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Recipe >(Arena *arena)
Definition: rcpsp.pb.cc:1963
static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const ** file_level_enum_descriptors_ortools_2fscheduling_2frcpsp_2eproto
Definition: rcpsp.pb.cc:122
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
Definition: rcpsp.pb.cc:198
const uint32_t TableStruct_ortools_2fscheduling_2frcpsp_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::PerRecipeDelays * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::PerRecipeDelays >(Arena *arena)
Definition: rcpsp.pb.cc:1966
PROTOBUF_ATTRIBUTE_WEAKconst ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable * descriptor_table_ortools_2fscheduling_2frcpsp_2eproto_getter()
Definition: rcpsp.pb.cc:242
static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2fscheduling_2frcpsp_2eproto
Definition: rcpsp.pb.cc:123
PROTOBUF_NOINLINE::operations_research::scheduling::rcpsp::Task * Arena::CreateMaybeMessage< ::operations_research::scheduling::rcpsp::Task >(Arena *arena)
Definition: rcpsp.pb.cc:1972