Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
parameters.pb.cc
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/math_opt/parameters.proto
4// Protobuf C++ Version: 6.33.1
5
7
8#include <algorithm>
9#include <type_traits>
10#include "google/protobuf/io/coded_stream.h"
11#include "google/protobuf/generated_message_tctable_impl.h"
12#include "google/protobuf/extension_set.h"
13#include "google/protobuf/generated_message_util.h"
14#include "google/protobuf/wire_format_lite.h"
15#include "google/protobuf/descriptor.h"
16#include "google/protobuf/generated_message_reflection.h"
17#include "google/protobuf/reflection_ops.h"
18#include "google/protobuf/wire_format.h"
19// @@protoc_insertion_point(includes)
20
21// Must be included last.
22#include "google/protobuf/port_def.inc"
23PROTOBUF_PRAGMA_INIT_SEG
24namespace _pb = ::google::protobuf;
26namespace _fl = ::google::protobuf::internal::field_layout;
27namespace operations_research {
28namespace math_opt {
29
30inline constexpr StrictnessProto::Impl_::Impl_(
31 ::_pbi::ConstantInitialized) noexcept
32 : _cached_size_{0},
33 bad_parameter_{false} {}
34
35template <typename>
36PROTOBUF_CONSTEXPR StrictnessProto::StrictnessProto(::_pbi::ConstantInitialized)
37#if defined(PROTOBUF_CUSTOM_VTABLE)
38 : ::google::protobuf::Message(StrictnessProto_class_data_.base()),
39#else // PROTOBUF_CUSTOM_VTABLE
40 : ::google::protobuf::Message(),
41#endif // PROTOBUF_CUSTOM_VTABLE
42 _impl_(::_pbi::ConstantInitialized()) {
43}
51
52PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
54
55inline constexpr SolverInitializerProto::Impl_::Impl_(
56 ::_pbi::ConstantInitialized) noexcept
57 : _cached_size_{0},
58 gurobi_{nullptr},
59 xpress_{nullptr} {}
60
61template <typename>
62PROTOBUF_CONSTEXPR SolverInitializerProto::SolverInitializerProto(::_pbi::ConstantInitialized)
63#if defined(PROTOBUF_CUSTOM_VTABLE)
64 : ::google::protobuf::Message(SolverInitializerProto_class_data_.base()),
65#else // PROTOBUF_CUSTOM_VTABLE
66 : ::google::protobuf::Message(),
67#endif // PROTOBUF_CUSTOM_VTABLE
68 _impl_(::_pbi::ConstantInitialized()) {
69}
77
78PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
80
81inline constexpr SolveParametersProto::Impl_::Impl_(
82 ::_pbi::ConstantInitialized) noexcept
83 : _cached_size_{0},
84 time_limit_{nullptr},
85 gscip_{nullptr},
86 gurobi_{nullptr},
87 glop_{nullptr},
88 cp_sat_{nullptr},
89 pdlp_{nullptr},
90 osqp_{nullptr},
91 glpk_{nullptr},
92 highs_{nullptr},
93 xpress_{nullptr},
94 iteration_limit_{::int64_t{0}},
95 enable_output_{false},
96 threads_{0},
97 random_seed_{0},
98 lp_algorithm_{static_cast< ::operations_research::math_opt::LPAlgorithmProto >(0)},
99 presolve_{static_cast< ::operations_research::math_opt::EmphasisProto >(0)},
100 cuts_{static_cast< ::operations_research::math_opt::EmphasisProto >(0)},
101 heuristics_{static_cast< ::operations_research::math_opt::EmphasisProto >(0)},
102 scaling_{static_cast< ::operations_research::math_opt::EmphasisProto >(0)},
103 relative_gap_tolerance_{0},
104 absolute_gap_tolerance_{0},
105 cutoff_limit_{0},
106 objective_limit_{0},
107 best_bound_limit_{0},
108 node_limit_{::int64_t{0}},
109 solution_limit_{0},
110 solution_pool_size_{0} {}
111
112template <typename>
113PROTOBUF_CONSTEXPR SolveParametersProto::SolveParametersProto(::_pbi::ConstantInitialized)
114#if defined(PROTOBUF_CUSTOM_VTABLE)
115 : ::google::protobuf::Message(SolveParametersProto_class_data_.base()),
116#else // PROTOBUF_CUSTOM_VTABLE
117 : ::google::protobuf::Message(),
118#endif // PROTOBUF_CUSTOM_VTABLE
119 _impl_(::_pbi::ConstantInitialized()) {
120}
128
129PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
131} // namespace math_opt
132} // namespace operations_research
133static const ::_pb::EnumDescriptor* PROTOBUF_NONNULL
135static constexpr const ::_pb::ServiceDescriptor* PROTOBUF_NONNULL* PROTOBUF_NULLABLE
137const ::uint32_t
139 protodesc_cold) = {
140 0x081, // bitmap
141 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::StrictnessProto, _impl_._has_bits_),
142 4, // hasbit index offset
143 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::StrictnessProto, _impl_.bad_parameter_),
144 0,
145 0x081, // bitmap
146 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolverInitializerProto, _impl_._has_bits_),
147 5, // hasbit index offset
148 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolverInitializerProto, _impl_.gurobi_),
149 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolverInitializerProto, _impl_.xpress_),
150 0,
151 1,
152 0x081, // bitmap
153 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_._has_bits_),
154 30, // hasbit index offset
155 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.time_limit_),
156 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.iteration_limit_),
157 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.node_limit_),
158 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.cutoff_limit_),
159 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.objective_limit_),
160 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.best_bound_limit_),
161 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.solution_limit_),
162 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.enable_output_),
163 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.threads_),
164 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.random_seed_),
165 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.absolute_gap_tolerance_),
166 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.relative_gap_tolerance_),
167 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.solution_pool_size_),
168 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.lp_algorithm_),
169 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.presolve_),
170 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.cuts_),
171 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.heuristics_),
172 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.scaling_),
173 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.gscip_),
174 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.gurobi_),
175 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.glop_),
176 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.cp_sat_),
177 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.pdlp_),
178 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.osqp_),
179 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.glpk_),
180 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.highs_),
181 PROTOBUF_FIELD_OFFSET(::operations_research::math_opt::SolveParametersProto, _impl_.xpress_),
182 0,
183 10,
184 24,
185 21,
186 22,
187 23,
188 25,
189 11,
190 12,
191 13,
192 20,
193 19,
194 26,
195 14,
196 15,
197 16,
198 17,
199 18,
200 1,
201 2,
202 3,
203 4,
204 5,
205 6,
206 7,
207 8,
208 9,
209};
210
211static const ::_pbi::MigrationSchema
212 schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
216};
222const char descriptor_table_protodef_ortools_2fmath_5fopt_2fparameters_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
223 protodesc_cold) = {
224 "\n!ortools/math_opt/parameters.proto\022\034ope"
225 "rations_research.math_opt\032\036google/protob"
226 "uf/duration.proto\032\032ortools/pdlp/solvers."
227 "proto\032\035ortools/glop/parameters.proto\032#or"
228 "tools/math_opt/solvers/glpk.proto\032*ortoo"
229 "ls/math_opt/solvers/gscip/gscip.proto\032%o"
230 "rtools/math_opt/solvers/gurobi.proto\032$or"
231 "tools/math_opt/solvers/highs.proto\032#orto"
232 "ols/math_opt/solvers/osqp.proto\032%ortools"
233 "/math_opt/solvers/xpress.proto\032 ortools/"
234 "sat/sat_parameters.proto\"(\n\017StrictnessPr"
235 "oto\022\025\n\rbad_parameter\030\001 \001(\010\"\252\001\n\026SolverIni"
236 "tializerProto\022D\n\006gurobi\030\001 \001(\01324.operatio"
237 "ns_research.math_opt.GurobiInitializerPr"
238 "oto\022D\n\006xpress\030\003 \001(\01324.operations_researc"
239 "h.math_opt.XpressInitializerProtoJ\004\010\002\020\003\""
240 "\370\013\n\024SolveParametersProto\022-\n\ntime_limit\030\001"
241 " \001(\0132\031.google.protobuf.Duration\022\034\n\017itera"
242 "tion_limit\030\002 \001(\003H\000\210\001\001\022\027\n\nnode_limit\030\030 \001("
243 "\003H\001\210\001\001\022\031\n\014cutoff_limit\030\024 \001(\001H\002\210\001\001\022\034\n\017obj"
244 "ective_limit\030\025 \001(\001H\003\210\001\001\022\035\n\020best_bound_li"
245 "mit\030\026 \001(\001H\004\210\001\001\022\033\n\016solution_limit\030\027 \001(\005H\005"
246 "\210\001\001\022\025\n\renable_output\030\003 \001(\010\022\024\n\007threads\030\004 "
247 "\001(\005H\006\210\001\001\022\030\n\013random_seed\030\005 \001(\005H\007\210\001\001\022#\n\026ab"
248 "solute_gap_tolerance\030\022 \001(\001H\010\210\001\001\022#\n\026relat"
249 "ive_gap_tolerance\030\021 \001(\001H\t\210\001\001\022\037\n\022solution"
250 "_pool_size\030\031 \001(\005H\n\210\001\001\022D\n\014lp_algorithm\030\006 "
251 "\001(\0162..operations_research.math_opt.LPAlg"
252 "orithmProto\022=\n\010presolve\030\007 \001(\0162+.operatio"
253 "ns_research.math_opt.EmphasisProto\0229\n\004cu"
254 "ts\030\010 \001(\0162+.operations_research.math_opt."
255 "EmphasisProto\022\?\n\nheuristics\030\t \001(\0162+.oper"
256 "ations_research.math_opt.EmphasisProto\022<"
257 "\n\007scaling\030\n \001(\0162+.operations_research.ma"
258 "th_opt.EmphasisProto\0223\n\005gscip\030\014 \001(\0132$.op"
259 "erations_research.GScipParameters\022C\n\006gur"
260 "obi\030\r \001(\01323.operations_research.math_opt"
261 ".GurobiParametersProto\0226\n\004glop\030\016 \001(\0132(.o"
262 "perations_research.glop.GlopParameters\0226"
263 "\n\006cp_sat\030\017 \001(\0132&.operations_research.sat"
264 ".SatParameters\022F\n\004pdlp\030\020 \001(\01328.operation"
265 "s_research.pdlp.PrimalDualHybridGradient"
266 "Params\022=\n\004osqp\030\023 \001(\0132/.operations_resear"
267 "ch.math_opt.OsqpSettingsProto\022\?\n\004glpk\030\032 "
268 "\001(\01321.operations_research.math_opt.GlpkP"
269 "arametersProto\022>\n\005highs\030\033 \001(\0132/.operatio"
270 "ns_research.math_opt.HighsOptionsProto\022C"
271 "\n\006xpress\030\034 \001(\01323.operations_research.mat"
272 "h_opt.XpressParametersProtoB\022\n\020_iteratio"
273 "n_limitB\r\n\013_node_limitB\017\n\r_cutoff_limitB"
274 "\022\n\020_objective_limitB\023\n\021_best_bound_limit"
275 "B\021\n\017_solution_limitB\n\n\010_threadsB\016\n\014_rand"
276 "om_seedB\031\n\027_absolute_gap_toleranceB\031\n\027_r"
277 "elative_gap_toleranceB\025\n\023_solution_pool_"
278 "sizeJ\004\010\013\020\014*\310\002\n\017SolverTypeProto\022\033\n\027SOLVER"
279 "_TYPE_UNSPECIFIED\020\000\022\025\n\021SOLVER_TYPE_GSCIP"
280 "\020\001\022\026\n\022SOLVER_TYPE_GUROBI\020\002\022\024\n\020SOLVER_TYP"
281 "E_GLOP\020\003\022\026\n\022SOLVER_TYPE_CP_SAT\020\004\022\024\n\020SOLV"
282 "ER_TYPE_PDLP\020\005\022\024\n\020SOLVER_TYPE_GLPK\020\006\022\024\n\020"
283 "SOLVER_TYPE_OSQP\020\007\022\024\n\020SOLVER_TYPE_ECOS\020\010"
284 "\022\023\n\017SOLVER_TYPE_SCS\020\t\022\025\n\021SOLVER_TYPE_HIG"
285 "HS\020\n\022\031\n\025SOLVER_TYPE_SANTORINI\020\013\022\026\n\022SOLVE"
286 "R_TYPE_XPRESS\020\r\"\004\010\014\020\014*\250\001\n\020LPAlgorithmPro"
287 "to\022\034\n\030LP_ALGORITHM_UNSPECIFIED\020\000\022\037\n\033LP_A"
288 "LGORITHM_PRIMAL_SIMPLEX\020\001\022\035\n\031LP_ALGORITH"
289 "M_DUAL_SIMPLEX\020\002\022\030\n\024LP_ALGORITHM_BARRIER"
290 "\020\003\022\034\n\030LP_ALGORITHM_FIRST_ORDER\020\004*\215\001\n\rEmp"
291 "hasisProto\022\030\n\024EMPHASIS_UNSPECIFIED\020\000\022\020\n\014"
292 "EMPHASIS_OFF\020\001\022\020\n\014EMPHASIS_LOW\020\002\022\023\n\017EMPH"
293 "ASIS_MEDIUM\020\003\022\021\n\rEMPHASIS_HIGH\020\004\022\026\n\022EMPH"
294 "ASIS_VERY_HIGH\020\005B\036\n\032com.google.ortools.m"
295 "athoptP\001b\006proto3"
296};
297static const ::_pbi::DescriptorTable* PROTOBUF_NONNULL const
327namespace operations_research {
328namespace math_opt {
329const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SolverTypeProto_descriptor() {
330 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto);
332}
333PROTOBUF_CONSTINIT const uint32_t SolverTypeProto_internal_data_[] = {
334 786432u, 32u, 2u, };
335const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL LPAlgorithmProto_descriptor() {
336 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto);
338}
339PROTOBUF_CONSTINIT const uint32_t LPAlgorithmProto_internal_data_[] = {
340 327680u, 0u, };
341const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL EmphasisProto_descriptor() {
342 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto);
344}
345PROTOBUF_CONSTINIT const uint32_t EmphasisProto_internal_data_[] = {
346 393216u, 0u, };
347// ===================================================================
348
349class StrictnessProto::_Internal {
350 public:
351 using HasBits =
352 decltype(::std::declval<StrictnessProto>()._impl_._has_bits_);
353 static constexpr ::int32_t kHasBitsOffset =
354 8 * PROTOBUF_FIELD_OFFSET(StrictnessProto, _impl_._has_bits_);
355};
356
357StrictnessProto::StrictnessProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
358#if defined(PROTOBUF_CUSTOM_VTABLE)
359 : ::google::protobuf::Message(arena, StrictnessProto_class_data_.base()) {
360#else // PROTOBUF_CUSTOM_VTABLE
361 : ::google::protobuf::Message(arena) {
362#endif // PROTOBUF_CUSTOM_VTABLE
363 SharedCtor(arena);
364 // @@protoc_insertion_point(arena_constructor:operations_research.math_opt.StrictnessProto)
365}
367 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const StrictnessProto& from)
368#if defined(PROTOBUF_CUSTOM_VTABLE)
369 : ::google::protobuf::Message(arena, StrictnessProto_class_data_.base()),
370#else // PROTOBUF_CUSTOM_VTABLE
371 : ::google::protobuf::Message(arena),
372#endif // PROTOBUF_CUSTOM_VTABLE
373 _impl_(from._impl_) {
374 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
375 from._internal_metadata_);
376}
377PROTOBUF_NDEBUG_INLINE StrictnessProto::Impl_::Impl_(
378 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
379 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
380 : _cached_size_{0} {}
381
382inline void StrictnessProto::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
383 new (&_impl_) Impl_(internal_visibility(), arena);
384 _impl_.bad_parameter_ = {};
385}
387 // @@protoc_insertion_point(destructor:operations_research.math_opt.StrictnessProto)
388 SharedDtor(*this);
389}
390inline void StrictnessProto::SharedDtor(MessageLite& self) {
391 StrictnessProto& this_ = static_cast<StrictnessProto&>(self);
392 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
393 this_.CheckHasBitConsistency();
394 }
395 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
396 ABSL_DCHECK(this_.GetArena() == nullptr);
397 this_._impl_.~Impl_();
398}
399
400inline void* PROTOBUF_NONNULL StrictnessProto::PlacementNew_(
401 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
402 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
403 return ::new (mem) StrictnessProto(arena);
404}
405constexpr auto StrictnessProto::InternalNewImpl_() {
406 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(StrictnessProto),
407 alignof(StrictnessProto));
408}
410 return ::google::protobuf::internal::ClassDataFull{
411 ::google::protobuf::internal::ClassData{
413 &_table_.header,
414 nullptr, // OnDemandRegisterArenaDtor
415 nullptr, // IsInitialized
416 &StrictnessProto::MergeImpl,
417 ::google::protobuf::Message::GetNewImpl<StrictnessProto>(),
418#if defined(PROTOBUF_CUSTOM_VTABLE)
419 &StrictnessProto::SharedDtor,
420 ::google::protobuf::Message::GetClearImpl<StrictnessProto>(), &StrictnessProto::ByteSizeLong,
422#endif // PROTOBUF_CUSTOM_VTABLE
423 PROTOBUF_FIELD_OFFSET(StrictnessProto, _impl_._cached_size_),
424 false,
425 },
426 &StrictnessProto::kDescriptorMethods,
428 nullptr, // tracker
429 };
430}
431
432PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
433 ::google::protobuf::internal::ClassDataFull StrictnessProto_class_data_ =
435
436PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
437StrictnessProto::GetClassData() const {
438 ::google::protobuf::internal::PrefetchToLocalCache(&StrictnessProto_class_data_);
439 ::google::protobuf::internal::PrefetchToLocalCache(StrictnessProto_class_data_.tc_table);
440 return StrictnessProto_class_data_.base();
441}
442PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
443const ::_pbi::TcParseTable<0, 1, 0, 0, 2>
444StrictnessProto::_table_ = {
445 {
446 PROTOBUF_FIELD_OFFSET(StrictnessProto, _impl_._has_bits_),
447 0, // no _extensions_
448 1, 0, // max_field_number, fast_idx_mask
449 offsetof(decltype(_table_), field_lookup_table),
450 4294967294, // skipmap
451 offsetof(decltype(_table_), field_entries),
452 1, // num_field_entries
453 0, // num_aux_entries
454 offsetof(decltype(_table_), field_names), // no aux_entries
456 nullptr, // post_loop_handler
457 ::_pbi::TcParser::GenericFallback, // fallback
458 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
459 ::_pbi::TcParser::GetTable<::operations_research::math_opt::StrictnessProto>(), // to_prefetch
460 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
461 }, {{
462 // bool bad_parameter = 1;
463 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(StrictnessProto, _impl_.bad_parameter_), 0>(),
464 {8, 0, 0,
465 PROTOBUF_FIELD_OFFSET(StrictnessProto, _impl_.bad_parameter_)}},
466 }}, {{
467 65535, 65535
468 }}, {{
469 // bool bad_parameter = 1;
470 {PROTOBUF_FIELD_OFFSET(StrictnessProto, _impl_.bad_parameter_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
471 }},
472 // no aux_entries
473 {{
474 }},
475};
476PROTOBUF_NOINLINE void StrictnessProto::Clear() {
477// @@protoc_insertion_point(message_clear_start:operations_research.math_opt.StrictnessProto)
478 ::google::protobuf::internal::TSanWrite(&_impl_);
479 ::uint32_t cached_has_bits = 0;
480 // Prevent compiler warnings about cached_has_bits being unused
481 (void) cached_has_bits;
482
483 _impl_.bad_parameter_ = false;
484 _impl_._has_bits_.Clear();
485 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
486}
487
488#if defined(PROTOBUF_CUSTOM_VTABLE)
489::uint8_t* PROTOBUF_NONNULL StrictnessProto::_InternalSerialize(
490 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
491 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
492 const StrictnessProto& this_ = static_cast<const StrictnessProto&>(base);
493#else // PROTOBUF_CUSTOM_VTABLE
494::uint8_t* PROTOBUF_NONNULL StrictnessProto::_InternalSerialize(
495 ::uint8_t* PROTOBUF_NONNULL target,
496 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
497 const StrictnessProto& this_ = *this;
498#endif // PROTOBUF_CUSTOM_VTABLE
499 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
500 this_.CheckHasBitConsistency();
501 }
502 // @@protoc_insertion_point(serialize_to_array_start:operations_research.math_opt.StrictnessProto)
503 ::uint32_t cached_has_bits = 0;
504 (void)cached_has_bits;
505
506 cached_has_bits = this_._impl_._has_bits_[0];
507 // bool bad_parameter = 1;
508 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
509 if (this_._internal_bad_parameter() != 0) {
510 target = stream->EnsureSpace(target);
511 target = ::_pbi::WireFormatLite::WriteBoolToArray(
512 1, this_._internal_bad_parameter(), target);
513 }
514 }
515
516 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
517 target =
518 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
519 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
520 }
521 // @@protoc_insertion_point(serialize_to_array_end:operations_research.math_opt.StrictnessProto)
522 return target;
523}
524
525#if defined(PROTOBUF_CUSTOM_VTABLE)
527 const StrictnessProto& this_ = static_cast<const StrictnessProto&>(base);
528#else // PROTOBUF_CUSTOM_VTABLE
529::size_t StrictnessProto::ByteSizeLong() const {
530 const StrictnessProto& this_ = *this;
531#endif // PROTOBUF_CUSTOM_VTABLE
532 // @@protoc_insertion_point(message_byte_size_start:operations_research.math_opt.StrictnessProto)
533 ::size_t total_size = 0;
534
535 ::uint32_t cached_has_bits = 0;
536 // Prevent compiler warnings about cached_has_bits being unused
537 (void)cached_has_bits;
538
539 {
540 // bool bad_parameter = 1;
541 cached_has_bits = this_._impl_._has_bits_[0];
542 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
543 if (this_._internal_bad_parameter() != 0) {
544 total_size += 2;
545 }
546 }
547 }
548 return this_.MaybeComputeUnknownFieldsSize(total_size,
549 &this_._impl_._cached_size_);
550}
551
552void StrictnessProto::MergeImpl(::google::protobuf::MessageLite& to_msg,
553 const ::google::protobuf::MessageLite& from_msg) {
554 auto* const _this =
555 static_cast<StrictnessProto*>(&to_msg);
556 auto& from = static_cast<const StrictnessProto&>(from_msg);
557 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
558 from.CheckHasBitConsistency();
559 }
560 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.math_opt.StrictnessProto)
561 ABSL_DCHECK_NE(&from, _this);
562 ::uint32_t cached_has_bits = 0;
563 (void)cached_has_bits;
564
565 cached_has_bits = from._impl_._has_bits_[0];
566 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
567 if (from._internal_bad_parameter() != 0) {
568 _this->_impl_.bad_parameter_ = from._impl_.bad_parameter_;
569 }
570 }
571 _this->_impl_._has_bits_[0] |= cached_has_bits;
572 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
573 from._internal_metadata_);
574}
575
577 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.math_opt.StrictnessProto)
578 if (&from == this) return;
579 Clear();
580 MergeFrom(from);
581}
582
583
584void StrictnessProto::InternalSwap(StrictnessProto* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
585 using ::std::swap;
586 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
587 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
588 swap(_impl_.bad_parameter_, other->_impl_.bad_parameter_);
589}
590
591::google::protobuf::Metadata StrictnessProto::GetMetadata() const {
592 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
593}
594// ===================================================================
595
597 public:
598 using HasBits =
599 decltype(::std::declval<SolverInitializerProto>()._impl_._has_bits_);
600 static constexpr ::int32_t kHasBitsOffset =
601 8 * PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_._has_bits_);
603
605 ::google::protobuf::internal::TSanWrite(&_impl_);
606 if (_impl_.gurobi_ != nullptr) _impl_.gurobi_->Clear();
607 ClearHasBit(_impl_._has_bits_[0],
608 0x00000001U);
609}
611 ::google::protobuf::internal::TSanWrite(&_impl_);
612 if (_impl_.xpress_ != nullptr) _impl_.xpress_->Clear();
613 ClearHasBit(_impl_._has_bits_[0],
614 0x00000002U);
615}
616SolverInitializerProto::SolverInitializerProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
617#if defined(PROTOBUF_CUSTOM_VTABLE)
618 : ::google::protobuf::Message(arena, SolverInitializerProto_class_data_.base()) {
619#else // PROTOBUF_CUSTOM_VTABLE
620 : ::google::protobuf::Message(arena) {
621#endif // PROTOBUF_CUSTOM_VTABLE
622 SharedCtor(arena);
623 // @@protoc_insertion_point(arena_constructor:operations_research.math_opt.SolverInitializerProto)
624}
625PROTOBUF_NDEBUG_INLINE SolverInitializerProto::Impl_::Impl_(
626 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
627 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
628 [[maybe_unused]] const ::operations_research::math_opt::SolverInitializerProto& from_msg)
629 : _has_bits_{from._has_bits_},
630 _cached_size_{0} {}
631
633 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
634 const SolverInitializerProto& from)
635#if defined(PROTOBUF_CUSTOM_VTABLE)
636 : ::google::protobuf::Message(arena, SolverInitializerProto_class_data_.base()) {
637#else // PROTOBUF_CUSTOM_VTABLE
638 : ::google::protobuf::Message(arena) {
639#endif // PROTOBUF_CUSTOM_VTABLE
640 SolverInitializerProto* const _this = this;
641 (void)_this;
642 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
643 from._internal_metadata_);
644 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
645 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
646 _impl_.gurobi_ = (CheckHasBit(cached_has_bits, 0x00000001U))
647 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gurobi_)
648 : nullptr;
649 _impl_.xpress_ = (CheckHasBit(cached_has_bits, 0x00000002U))
650 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.xpress_)
651 : nullptr;
652
653 // @@protoc_insertion_point(copy_constructor:operations_research.math_opt.SolverInitializerProto)
654}
655PROTOBUF_NDEBUG_INLINE SolverInitializerProto::Impl_::Impl_(
656 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
657 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
658 : _cached_size_{0} {}
659
660inline void SolverInitializerProto::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
661 new (&_impl_) Impl_(internal_visibility(), arena);
662 ::memset(reinterpret_cast<char*>(&_impl_) +
663 offsetof(Impl_, gurobi_),
664 0,
665 offsetof(Impl_, xpress_) -
666 offsetof(Impl_, gurobi_) +
667 sizeof(Impl_::xpress_));
668}
670 // @@protoc_insertion_point(destructor:operations_research.math_opt.SolverInitializerProto)
671 SharedDtor(*this);
672}
673inline void SolverInitializerProto::SharedDtor(MessageLite& self) {
674 SolverInitializerProto& this_ = static_cast<SolverInitializerProto&>(self);
675 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
676 this_.CheckHasBitConsistency();
677 }
678 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
679 ABSL_DCHECK(this_.GetArena() == nullptr);
680 delete this_._impl_.gurobi_;
681 delete this_._impl_.xpress_;
682 this_._impl_.~Impl_();
683}
684
685inline void* PROTOBUF_NONNULL SolverInitializerProto::PlacementNew_(
686 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
687 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
688 return ::new (mem) SolverInitializerProto(arena);
689}
690constexpr auto SolverInitializerProto::InternalNewImpl_() {
691 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(SolverInitializerProto),
692 alignof(SolverInitializerProto));
693}
695 return ::google::protobuf::internal::ClassDataFull{
696 ::google::protobuf::internal::ClassData{
698 &_table_.header,
699 nullptr, // OnDemandRegisterArenaDtor
700 nullptr, // IsInitialized
701 &SolverInitializerProto::MergeImpl,
702 ::google::protobuf::Message::GetNewImpl<SolverInitializerProto>(),
703#if defined(PROTOBUF_CUSTOM_VTABLE)
704 &SolverInitializerProto::SharedDtor,
705 ::google::protobuf::Message::GetClearImpl<SolverInitializerProto>(), &SolverInitializerProto::ByteSizeLong,
707#endif // PROTOBUF_CUSTOM_VTABLE
708 PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_._cached_size_),
709 false,
710 },
711 &SolverInitializerProto::kDescriptorMethods,
713 nullptr, // tracker
714 };
715}
716
717PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
718 ::google::protobuf::internal::ClassDataFull SolverInitializerProto_class_data_ =
721PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
722SolverInitializerProto::GetClassData() const {
723 ::google::protobuf::internal::PrefetchToLocalCache(&SolverInitializerProto_class_data_);
724 ::google::protobuf::internal::PrefetchToLocalCache(SolverInitializerProto_class_data_.tc_table);
726}
727PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
728const ::_pbi::TcParseTable<2, 2, 2, 0, 2>
729SolverInitializerProto::_table_ = {
730 {
731 PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_._has_bits_),
732 0, // no _extensions_
733 3, 24, // max_field_number, fast_idx_mask
734 offsetof(decltype(_table_), field_lookup_table),
735 4294967290, // skipmap
736 offsetof(decltype(_table_), field_entries),
737 2, // num_field_entries
738 2, // num_aux_entries
739 offsetof(decltype(_table_), aux_entries),
741 nullptr, // post_loop_handler
742 ::_pbi::TcParser::GenericFallback, // fallback
743 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
744 ::_pbi::TcParser::GetTable<::operations_research::math_opt::SolverInitializerProto>(), // to_prefetch
745 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
746 }, {{
747 {::_pbi::TcParser::MiniParse, {}},
748 // .operations_research.math_opt.GurobiInitializerProto gurobi = 1;
749 {::_pbi::TcParser::FastMtS1,
750 {10, 0, 0,
751 PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.gurobi_)}},
752 {::_pbi::TcParser::MiniParse, {}},
753 // .operations_research.math_opt.XpressInitializerProto xpress = 3;
754 {::_pbi::TcParser::FastMtS1,
755 {26, 1, 1,
756 PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.xpress_)}},
757 }}, {{
758 65535, 65535
759 }}, {{
760 // .operations_research.math_opt.GurobiInitializerProto gurobi = 1;
761 {PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.gurobi_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
762 // .operations_research.math_opt.XpressInitializerProto xpress = 3;
763 {PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.xpress_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
764 }},
765 {{
766 {::_pbi::TcParser::GetTable<::operations_research::math_opt::GurobiInitializerProto>()},
767 {::_pbi::TcParser::GetTable<::operations_research::math_opt::XpressInitializerProto>()},
768 }},
769 {{
770 }},
771};
772PROTOBUF_NOINLINE void SolverInitializerProto::Clear() {
773// @@protoc_insertion_point(message_clear_start:operations_research.math_opt.SolverInitializerProto)
774 ::google::protobuf::internal::TSanWrite(&_impl_);
775 ::uint32_t cached_has_bits = 0;
776 // Prevent compiler warnings about cached_has_bits being unused
777 (void) cached_has_bits;
778
779 cached_has_bits = _impl_._has_bits_[0];
780 if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
781 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
782 ABSL_DCHECK(_impl_.gurobi_ != nullptr);
783 _impl_.gurobi_->Clear();
784 }
785 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
786 ABSL_DCHECK(_impl_.xpress_ != nullptr);
787 _impl_.xpress_->Clear();
788 }
789 }
790 _impl_._has_bits_.Clear();
791 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
792}
793
794#if defined(PROTOBUF_CUSTOM_VTABLE)
795::uint8_t* PROTOBUF_NONNULL SolverInitializerProto::_InternalSerialize(
796 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
797 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
798 const SolverInitializerProto& this_ = static_cast<const SolverInitializerProto&>(base);
799#else // PROTOBUF_CUSTOM_VTABLE
800::uint8_t* PROTOBUF_NONNULL SolverInitializerProto::_InternalSerialize(
801 ::uint8_t* PROTOBUF_NONNULL target,
802 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
803 const SolverInitializerProto& this_ = *this;
804#endif // PROTOBUF_CUSTOM_VTABLE
805 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
806 this_.CheckHasBitConsistency();
807 }
808 // @@protoc_insertion_point(serialize_to_array_start:operations_research.math_opt.SolverInitializerProto)
809 ::uint32_t cached_has_bits = 0;
810 (void)cached_has_bits;
811
812 cached_has_bits = this_._impl_._has_bits_[0];
813 // .operations_research.math_opt.GurobiInitializerProto gurobi = 1;
814 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
815 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
816 1, *this_._impl_.gurobi_, this_._impl_.gurobi_->GetCachedSize(), target,
817 stream);
818 }
819
820 // .operations_research.math_opt.XpressInitializerProto xpress = 3;
821 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
822 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
823 3, *this_._impl_.xpress_, this_._impl_.xpress_->GetCachedSize(), target,
824 stream);
825 }
826
827 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
828 target =
829 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
830 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
831 }
832 // @@protoc_insertion_point(serialize_to_array_end:operations_research.math_opt.SolverInitializerProto)
833 return target;
834}
835
836#if defined(PROTOBUF_CUSTOM_VTABLE)
838 const SolverInitializerProto& this_ = static_cast<const SolverInitializerProto&>(base);
839#else // PROTOBUF_CUSTOM_VTABLE
841 const SolverInitializerProto& this_ = *this;
842#endif // PROTOBUF_CUSTOM_VTABLE
843 // @@protoc_insertion_point(message_byte_size_start:operations_research.math_opt.SolverInitializerProto)
844 ::size_t total_size = 0;
845
846 ::uint32_t cached_has_bits = 0;
847 // Prevent compiler warnings about cached_has_bits being unused
848 (void)cached_has_bits;
849
850 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
851 cached_has_bits = this_._impl_._has_bits_[0];
852 if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
853 // .operations_research.math_opt.GurobiInitializerProto gurobi = 1;
854 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
855 total_size += 1 +
856 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.gurobi_);
857 }
858 // .operations_research.math_opt.XpressInitializerProto xpress = 3;
859 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
860 total_size += 1 +
861 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.xpress_);
862 }
863 }
864 return this_.MaybeComputeUnknownFieldsSize(total_size,
865 &this_._impl_._cached_size_);
866}
867
868void SolverInitializerProto::MergeImpl(::google::protobuf::MessageLite& to_msg,
869 const ::google::protobuf::MessageLite& from_msg) {
870 auto* const _this =
871 static_cast<SolverInitializerProto*>(&to_msg);
872 auto& from = static_cast<const SolverInitializerProto&>(from_msg);
873 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
874 from.CheckHasBitConsistency();
875 }
876 ::google::protobuf::Arena* arena = _this->GetArena();
877 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.math_opt.SolverInitializerProto)
878 ABSL_DCHECK_NE(&from, _this);
879 ::uint32_t cached_has_bits = 0;
880 (void)cached_has_bits;
881
882 cached_has_bits = from._impl_._has_bits_[0];
883 if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
884 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
885 ABSL_DCHECK(from._impl_.gurobi_ != nullptr);
886 if (_this->_impl_.gurobi_ == nullptr) {
887 _this->_impl_.gurobi_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gurobi_);
888 } else {
889 _this->_impl_.gurobi_->MergeFrom(*from._impl_.gurobi_);
890 }
891 }
892 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
893 ABSL_DCHECK(from._impl_.xpress_ != nullptr);
894 if (_this->_impl_.xpress_ == nullptr) {
895 _this->_impl_.xpress_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.xpress_);
896 } else {
897 _this->_impl_.xpress_->MergeFrom(*from._impl_.xpress_);
898 }
899 }
900 }
901 _this->_impl_._has_bits_[0] |= cached_has_bits;
902 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
903 from._internal_metadata_);
904}
905
907 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.math_opt.SolverInitializerProto)
908 if (&from == this) return;
909 Clear();
910 MergeFrom(from);
911}
912
913
914void SolverInitializerProto::InternalSwap(SolverInitializerProto* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
915 using ::std::swap;
916 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
917 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
918 ::google::protobuf::internal::memswap<
919 PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.xpress_)
920 + sizeof(SolverInitializerProto::_impl_.xpress_)
921 - PROTOBUF_FIELD_OFFSET(SolverInitializerProto, _impl_.gurobi_)>(
922 reinterpret_cast<char*>(&_impl_.gurobi_),
923 reinterpret_cast<char*>(&other->_impl_.gurobi_));
924}
925
926::google::protobuf::Metadata SolverInitializerProto::GetMetadata() const {
927 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
929// ===================================================================
930
932 public:
933 using HasBits =
934 decltype(::std::declval<SolveParametersProto>()._impl_._has_bits_);
935 static constexpr ::int32_t kHasBitsOffset =
936 8 * PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_._has_bits_);
937};
940 ::google::protobuf::internal::TSanWrite(&_impl_);
941 if (_impl_.time_limit_ != nullptr) _impl_.time_limit_->Clear();
942 ClearHasBit(_impl_._has_bits_[0],
943 0x00000001U);
944}
946 ::google::protobuf::internal::TSanWrite(&_impl_);
947 if (_impl_.gscip_ != nullptr) _impl_.gscip_->Clear();
948 ClearHasBit(_impl_._has_bits_[0],
949 0x00000002U);
950}
952 ::google::protobuf::internal::TSanWrite(&_impl_);
953 if (_impl_.gurobi_ != nullptr) _impl_.gurobi_->Clear();
954 ClearHasBit(_impl_._has_bits_[0],
955 0x00000004U);
956}
958 ::google::protobuf::internal::TSanWrite(&_impl_);
959 if (_impl_.glop_ != nullptr) _impl_.glop_->Clear();
960 ClearHasBit(_impl_._has_bits_[0],
961 0x00000008U);
962}
964 ::google::protobuf::internal::TSanWrite(&_impl_);
965 if (_impl_.cp_sat_ != nullptr) _impl_.cp_sat_->Clear();
966 ClearHasBit(_impl_._has_bits_[0],
967 0x00000010U);
968}
970 ::google::protobuf::internal::TSanWrite(&_impl_);
971 if (_impl_.pdlp_ != nullptr) _impl_.pdlp_->Clear();
972 ClearHasBit(_impl_._has_bits_[0],
973 0x00000020U);
974}
976 ::google::protobuf::internal::TSanWrite(&_impl_);
977 if (_impl_.osqp_ != nullptr) _impl_.osqp_->Clear();
978 ClearHasBit(_impl_._has_bits_[0],
979 0x00000040U);
980}
982 ::google::protobuf::internal::TSanWrite(&_impl_);
983 if (_impl_.glpk_ != nullptr) _impl_.glpk_->Clear();
984 ClearHasBit(_impl_._has_bits_[0],
985 0x00000080U);
986}
988 ::google::protobuf::internal::TSanWrite(&_impl_);
989 if (_impl_.highs_ != nullptr) _impl_.highs_->Clear();
990 ClearHasBit(_impl_._has_bits_[0],
991 0x00000100U);
992}
994 ::google::protobuf::internal::TSanWrite(&_impl_);
995 if (_impl_.xpress_ != nullptr) _impl_.xpress_->Clear();
996 ClearHasBit(_impl_._has_bits_[0],
997 0x00000200U);
998}
999SolveParametersProto::SolveParametersProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1000#if defined(PROTOBUF_CUSTOM_VTABLE)
1001 : ::google::protobuf::Message(arena, SolveParametersProto_class_data_.base()) {
1002#else // PROTOBUF_CUSTOM_VTABLE
1003 : ::google::protobuf::Message(arena) {
1004#endif // PROTOBUF_CUSTOM_VTABLE
1005 SharedCtor(arena);
1006 // @@protoc_insertion_point(arena_constructor:operations_research.math_opt.SolveParametersProto)
1007}
1008PROTOBUF_NDEBUG_INLINE SolveParametersProto::Impl_::Impl_(
1009 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
1010 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1011 [[maybe_unused]] const ::operations_research::math_opt::SolveParametersProto& from_msg)
1012 : _has_bits_{from._has_bits_},
1013 _cached_size_{0} {}
1014
1016 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1017 const SolveParametersProto& from)
1018#if defined(PROTOBUF_CUSTOM_VTABLE)
1019 : ::google::protobuf::Message(arena, SolveParametersProto_class_data_.base()) {
1020#else // PROTOBUF_CUSTOM_VTABLE
1021 : ::google::protobuf::Message(arena) {
1022#endif // PROTOBUF_CUSTOM_VTABLE
1023 SolveParametersProto* const _this = this;
1024 (void)_this;
1025 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1026 from._internal_metadata_);
1027 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1028 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
1029 _impl_.time_limit_ = (CheckHasBit(cached_has_bits, 0x00000001U))
1030 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.time_limit_)
1031 : nullptr;
1032 _impl_.gscip_ = (CheckHasBit(cached_has_bits, 0x00000002U))
1033 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gscip_)
1034 : nullptr;
1035 _impl_.gurobi_ = (CheckHasBit(cached_has_bits, 0x00000004U))
1036 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gurobi_)
1037 : nullptr;
1038 _impl_.glop_ = (CheckHasBit(cached_has_bits, 0x00000008U))
1039 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.glop_)
1040 : nullptr;
1041 _impl_.cp_sat_ = (CheckHasBit(cached_has_bits, 0x00000010U))
1042 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cp_sat_)
1043 : nullptr;
1044 _impl_.pdlp_ = (CheckHasBit(cached_has_bits, 0x00000020U))
1045 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.pdlp_)
1046 : nullptr;
1047 _impl_.osqp_ = (CheckHasBit(cached_has_bits, 0x00000040U))
1048 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.osqp_)
1049 : nullptr;
1050 _impl_.glpk_ = (CheckHasBit(cached_has_bits, 0x00000080U))
1051 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.glpk_)
1052 : nullptr;
1053 _impl_.highs_ = (CheckHasBit(cached_has_bits, 0x00000100U))
1054 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.highs_)
1055 : nullptr;
1056 _impl_.xpress_ = (CheckHasBit(cached_has_bits, 0x00000200U))
1057 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.xpress_)
1058 : nullptr;
1059 ::memcpy(reinterpret_cast<char*>(&_impl_) +
1060 offsetof(Impl_, iteration_limit_),
1061 reinterpret_cast<const char*>(&from._impl_) +
1062 offsetof(Impl_, iteration_limit_),
1063 offsetof(Impl_, solution_pool_size_) -
1064 offsetof(Impl_, iteration_limit_) +
1065 sizeof(Impl_::solution_pool_size_));
1066
1067 // @@protoc_insertion_point(copy_constructor:operations_research.math_opt.SolveParametersProto)
1068}
1069PROTOBUF_NDEBUG_INLINE SolveParametersProto::Impl_::Impl_(
1070 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
1071 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1072 : _cached_size_{0} {}
1073
1074inline void SolveParametersProto::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1075 new (&_impl_) Impl_(internal_visibility(), arena);
1076 ::memset(reinterpret_cast<char*>(&_impl_) +
1077 offsetof(Impl_, time_limit_),
1078 0,
1079 offsetof(Impl_, solution_pool_size_) -
1080 offsetof(Impl_, time_limit_) +
1081 sizeof(Impl_::solution_pool_size_));
1082}
1084 // @@protoc_insertion_point(destructor:operations_research.math_opt.SolveParametersProto)
1085 SharedDtor(*this);
1087inline void SolveParametersProto::SharedDtor(MessageLite& self) {
1088 SolveParametersProto& this_ = static_cast<SolveParametersProto&>(self);
1089 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1090 this_.CheckHasBitConsistency();
1091 }
1092 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1093 ABSL_DCHECK(this_.GetArena() == nullptr);
1094 delete this_._impl_.time_limit_;
1095 delete this_._impl_.gscip_;
1096 delete this_._impl_.gurobi_;
1097 delete this_._impl_.glop_;
1098 delete this_._impl_.cp_sat_;
1099 delete this_._impl_.pdlp_;
1100 delete this_._impl_.osqp_;
1101 delete this_._impl_.glpk_;
1102 delete this_._impl_.highs_;
1103 delete this_._impl_.xpress_;
1104 this_._impl_.~Impl_();
1105}
1106
1107inline void* PROTOBUF_NONNULL SolveParametersProto::PlacementNew_(
1108 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1109 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1110 return ::new (mem) SolveParametersProto(arena);
1111}
1112constexpr auto SolveParametersProto::InternalNewImpl_() {
1113 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(SolveParametersProto),
1114 alignof(SolveParametersProto));
1115}
1117 return ::google::protobuf::internal::ClassDataFull{
1118 ::google::protobuf::internal::ClassData{
1120 &_table_.header,
1121 nullptr, // OnDemandRegisterArenaDtor
1122 nullptr, // IsInitialized
1123 &SolveParametersProto::MergeImpl,
1124 ::google::protobuf::Message::GetNewImpl<SolveParametersProto>(),
1125#if defined(PROTOBUF_CUSTOM_VTABLE)
1126 &SolveParametersProto::SharedDtor,
1127 ::google::protobuf::Message::GetClearImpl<SolveParametersProto>(), &SolveParametersProto::ByteSizeLong,
1129#endif // PROTOBUF_CUSTOM_VTABLE
1130 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_._cached_size_),
1131 false,
1132 },
1133 &SolveParametersProto::kDescriptorMethods,
1135 nullptr, // tracker
1136 };
1137}
1138
1139PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1140 ::google::protobuf::internal::ClassDataFull SolveParametersProto_class_data_ =
1142
1143PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1144SolveParametersProto::GetClassData() const {
1145 ::google::protobuf::internal::PrefetchToLocalCache(&SolveParametersProto_class_data_);
1146 ::google::protobuf::internal::PrefetchToLocalCache(SolveParametersProto_class_data_.tc_table);
1148}
1149PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1150const ::_pbi::TcParseTable<5, 27, 10, 0, 2>
1151SolveParametersProto::_table_ = {
1152 {
1153 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_._has_bits_),
1154 0, // no _extensions_
1155 28, 248, // max_field_number, fast_idx_mask
1156 offsetof(decltype(_table_), field_lookup_table),
1157 4026532864, // skipmap
1158 offsetof(decltype(_table_), field_entries),
1159 27, // num_field_entries
1160 10, // num_aux_entries
1161 offsetof(decltype(_table_), aux_entries),
1163 nullptr, // post_loop_handler
1164 ::_pbi::TcParser::GenericFallback, // fallback
1165 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1166 ::_pbi::TcParser::GetTable<::operations_research::math_opt::SolveParametersProto>(), // to_prefetch
1167 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1168 }, {{
1169 {::_pbi::TcParser::MiniParse, {}},
1170 // .google.protobuf.Duration time_limit = 1;
1171 {::_pbi::TcParser::FastMtS1,
1172 {10, 0, 0,
1173 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.time_limit_)}},
1174 // optional int64 iteration_limit = 2;
1175 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(SolveParametersProto, _impl_.iteration_limit_), 10>(),
1176 {16, 10, 0,
1177 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.iteration_limit_)}},
1178 // bool enable_output = 3;
1179 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(SolveParametersProto, _impl_.enable_output_), 11>(),
1180 {24, 11, 0,
1181 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.enable_output_)}},
1182 // optional int32 threads = 4;
1183 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.threads_), 12>(),
1184 {32, 12, 0,
1185 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.threads_)}},
1186 // optional int32 random_seed = 5;
1187 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.random_seed_), 13>(),
1188 {40, 13, 0,
1189 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.random_seed_)}},
1190 // .operations_research.math_opt.LPAlgorithmProto lp_algorithm = 6;
1191 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.lp_algorithm_), 14>(),
1192 {48, 14, 0,
1193 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.lp_algorithm_)}},
1194 // .operations_research.math_opt.EmphasisProto presolve = 7;
1195 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.presolve_), 15>(),
1196 {56, 15, 0,
1197 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.presolve_)}},
1198 // .operations_research.math_opt.EmphasisProto cuts = 8;
1199 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.cuts_), 16>(),
1200 {64, 16, 0,
1201 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cuts_)}},
1202 // .operations_research.math_opt.EmphasisProto heuristics = 9;
1203 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.heuristics_), 17>(),
1204 {72, 17, 0,
1205 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.heuristics_)}},
1206 // .operations_research.math_opt.EmphasisProto scaling = 10;
1207 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveParametersProto, _impl_.scaling_), 18>(),
1208 {80, 18, 0,
1209 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.scaling_)}},
1210 {::_pbi::TcParser::MiniParse, {}},
1211 // .operations_research.GScipParameters gscip = 12;
1212 {::_pbi::TcParser::FastMtS1,
1213 {98, 1, 1,
1214 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.gscip_)}},
1215 // .operations_research.math_opt.GurobiParametersProto gurobi = 13;
1216 {::_pbi::TcParser::FastMtS1,
1217 {106, 2, 2,
1218 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.gurobi_)}},
1219 // .operations_research.glop.GlopParameters glop = 14;
1220 {::_pbi::TcParser::FastMtS1,
1221 {114, 3, 3,
1222 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.glop_)}},
1223 // .operations_research.sat.SatParameters cp_sat = 15;
1224 {::_pbi::TcParser::FastMtS1,
1225 {122, 4, 4,
1226 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cp_sat_)}},
1227 // .operations_research.pdlp.PrimalDualHybridGradientParams pdlp = 16;
1228 {::_pbi::TcParser::FastMtS2,
1229 {386, 5, 5,
1230 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.pdlp_)}},
1231 // optional double relative_gap_tolerance = 17;
1232 {::_pbi::TcParser::FastF64S2,
1233 {393, 19, 0,
1234 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.relative_gap_tolerance_)}},
1235 // optional double absolute_gap_tolerance = 18;
1236 {::_pbi::TcParser::FastF64S2,
1237 {401, 20, 0,
1238 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.absolute_gap_tolerance_)}},
1239 // .operations_research.math_opt.OsqpSettingsProto osqp = 19;
1240 {::_pbi::TcParser::FastMtS2,
1241 {410, 6, 6,
1242 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.osqp_)}},
1243 // optional double cutoff_limit = 20;
1244 {::_pbi::TcParser::FastF64S2,
1245 {417, 21, 0,
1246 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cutoff_limit_)}},
1247 // optional double objective_limit = 21;
1248 {::_pbi::TcParser::FastF64S2,
1249 {425, 22, 0,
1250 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.objective_limit_)}},
1251 // optional double best_bound_limit = 22;
1252 {::_pbi::TcParser::FastF64S2,
1253 {433, 23, 0,
1254 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.best_bound_limit_)}},
1255 // optional int32 solution_limit = 23;
1256 {::_pbi::TcParser::FastV32S2,
1257 {440, 25, 0,
1258 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.solution_limit_)}},
1259 // optional int64 node_limit = 24;
1260 {::_pbi::TcParser::FastV64S2,
1261 {448, 24, 0,
1262 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.node_limit_)}},
1263 // optional int32 solution_pool_size = 25;
1264 {::_pbi::TcParser::FastV32S2,
1265 {456, 26, 0,
1266 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.solution_pool_size_)}},
1267 // .operations_research.math_opt.GlpkParametersProto glpk = 26;
1268 {::_pbi::TcParser::FastMtS2,
1269 {466, 7, 7,
1270 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.glpk_)}},
1271 // .operations_research.math_opt.HighsOptionsProto highs = 27;
1272 {::_pbi::TcParser::FastMtS2,
1273 {474, 8, 8,
1274 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.highs_)}},
1275 // .operations_research.math_opt.XpressParametersProto xpress = 28;
1276 {::_pbi::TcParser::FastMtS2,
1277 {482, 9, 9,
1278 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.xpress_)}},
1279 {::_pbi::TcParser::MiniParse, {}},
1280 {::_pbi::TcParser::MiniParse, {}},
1281 {::_pbi::TcParser::MiniParse, {}},
1282 }}, {{
1283 65535, 65535
1284 }}, {{
1285 // .google.protobuf.Duration time_limit = 1;
1286 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.time_limit_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1287 // optional int64 iteration_limit = 2;
1288 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.iteration_limit_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
1289 // bool enable_output = 3;
1290 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.enable_output_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
1291 // optional int32 threads = 4;
1292 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.threads_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1293 // optional int32 random_seed = 5;
1294 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.random_seed_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1295 // .operations_research.math_opt.LPAlgorithmProto lp_algorithm = 6;
1296 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.lp_algorithm_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1297 // .operations_research.math_opt.EmphasisProto presolve = 7;
1298 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.presolve_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1299 // .operations_research.math_opt.EmphasisProto cuts = 8;
1300 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cuts_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1301 // .operations_research.math_opt.EmphasisProto heuristics = 9;
1302 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.heuristics_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1303 // .operations_research.math_opt.EmphasisProto scaling = 10;
1304 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.scaling_), _Internal::kHasBitsOffset + 18, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1305 // .operations_research.GScipParameters gscip = 12;
1306 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.gscip_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1307 // .operations_research.math_opt.GurobiParametersProto gurobi = 13;
1308 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.gurobi_), _Internal::kHasBitsOffset + 2, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1309 // .operations_research.glop.GlopParameters glop = 14;
1310 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.glop_), _Internal::kHasBitsOffset + 3, 3, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1311 // .operations_research.sat.SatParameters cp_sat = 15;
1312 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cp_sat_), _Internal::kHasBitsOffset + 4, 4, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1313 // .operations_research.pdlp.PrimalDualHybridGradientParams pdlp = 16;
1314 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.pdlp_), _Internal::kHasBitsOffset + 5, 5, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1315 // optional double relative_gap_tolerance = 17;
1316 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.relative_gap_tolerance_), _Internal::kHasBitsOffset + 19, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1317 // optional double absolute_gap_tolerance = 18;
1318 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.absolute_gap_tolerance_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1319 // .operations_research.math_opt.OsqpSettingsProto osqp = 19;
1320 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.osqp_), _Internal::kHasBitsOffset + 6, 6, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1321 // optional double cutoff_limit = 20;
1322 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.cutoff_limit_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1323 // optional double objective_limit = 21;
1324 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.objective_limit_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1325 // optional double best_bound_limit = 22;
1326 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.best_bound_limit_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1327 // optional int32 solution_limit = 23;
1328 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.solution_limit_), _Internal::kHasBitsOffset + 25, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1329 // optional int64 node_limit = 24;
1330 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.node_limit_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
1331 // optional int32 solution_pool_size = 25;
1332 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.solution_pool_size_), _Internal::kHasBitsOffset + 26, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1333 // .operations_research.math_opt.GlpkParametersProto glpk = 26;
1334 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.glpk_), _Internal::kHasBitsOffset + 7, 7, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1335 // .operations_research.math_opt.HighsOptionsProto highs = 27;
1336 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.highs_), _Internal::kHasBitsOffset + 8, 8, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1337 // .operations_research.math_opt.XpressParametersProto xpress = 28;
1338 {PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.xpress_), _Internal::kHasBitsOffset + 9, 9, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
1339 }},
1340 {{
1341 {::_pbi::TcParser::GetTable<::google::protobuf::Duration>()},
1342 {::_pbi::TcParser::GetTable<::operations_research::GScipParameters>()},
1343 {::_pbi::TcParser::GetTable<::operations_research::math_opt::GurobiParametersProto>()},
1344 {::_pbi::TcParser::GetTable<::operations_research::glop::GlopParameters>()},
1345 {::_pbi::TcParser::GetTable<::operations_research::sat::SatParameters>()},
1346 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PrimalDualHybridGradientParams>()},
1347 {::_pbi::TcParser::GetTable<::operations_research::math_opt::OsqpSettingsProto>()},
1348 {::_pbi::TcParser::GetTable<::operations_research::math_opt::GlpkParametersProto>()},
1349 {::_pbi::TcParser::GetTable<::operations_research::math_opt::HighsOptionsProto>()},
1350 {::_pbi::TcParser::GetTable<::operations_research::math_opt::XpressParametersProto>()},
1351 }},
1352 {{
1353 }},
1354};
1355PROTOBUF_NOINLINE void SolveParametersProto::Clear() {
1356// @@protoc_insertion_point(message_clear_start:operations_research.math_opt.SolveParametersProto)
1357 ::google::protobuf::internal::TSanWrite(&_impl_);
1358 ::uint32_t cached_has_bits = 0;
1359 // Prevent compiler warnings about cached_has_bits being unused
1360 (void) cached_has_bits;
1361
1362 cached_has_bits = _impl_._has_bits_[0];
1363 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1364 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1365 ABSL_DCHECK(_impl_.time_limit_ != nullptr);
1366 _impl_.time_limit_->Clear();
1367 }
1368 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1369 ABSL_DCHECK(_impl_.gscip_ != nullptr);
1370 _impl_.gscip_->Clear();
1371 }
1372 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1373 ABSL_DCHECK(_impl_.gurobi_ != nullptr);
1374 _impl_.gurobi_->Clear();
1375 }
1376 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1377 ABSL_DCHECK(_impl_.glop_ != nullptr);
1378 _impl_.glop_->Clear();
1379 }
1380 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1381 ABSL_DCHECK(_impl_.cp_sat_ != nullptr);
1382 _impl_.cp_sat_->Clear();
1383 }
1384 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1385 ABSL_DCHECK(_impl_.pdlp_ != nullptr);
1386 _impl_.pdlp_->Clear();
1387 }
1388 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1389 ABSL_DCHECK(_impl_.osqp_ != nullptr);
1390 _impl_.osqp_->Clear();
1391 }
1392 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1393 ABSL_DCHECK(_impl_.glpk_ != nullptr);
1394 _impl_.glpk_->Clear();
1395 }
1396 }
1397 if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
1398 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1399 ABSL_DCHECK(_impl_.highs_ != nullptr);
1400 _impl_.highs_->Clear();
1401 }
1402 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1403 ABSL_DCHECK(_impl_.xpress_ != nullptr);
1404 _impl_.xpress_->Clear();
1405 }
1406 }
1407 if (BatchCheckHasBit(cached_has_bits, 0x0000fc00U)) {
1408 ::memset(&_impl_.iteration_limit_, 0, static_cast<::size_t>(
1409 reinterpret_cast<char*>(&_impl_.presolve_) -
1410 reinterpret_cast<char*>(&_impl_.iteration_limit_)) + sizeof(_impl_.presolve_));
1411 }
1412 if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
1413 ::memset(&_impl_.cuts_, 0, static_cast<::size_t>(
1414 reinterpret_cast<char*>(&_impl_.best_bound_limit_) -
1415 reinterpret_cast<char*>(&_impl_.cuts_)) + sizeof(_impl_.best_bound_limit_));
1416 }
1417 if (BatchCheckHasBit(cached_has_bits, 0x07000000U)) {
1418 ::memset(&_impl_.node_limit_, 0, static_cast<::size_t>(
1419 reinterpret_cast<char*>(&_impl_.solution_pool_size_) -
1420 reinterpret_cast<char*>(&_impl_.node_limit_)) + sizeof(_impl_.solution_pool_size_));
1421 }
1422 _impl_._has_bits_.Clear();
1423 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1424}
1425
1426#if defined(PROTOBUF_CUSTOM_VTABLE)
1427::uint8_t* PROTOBUF_NONNULL SolveParametersProto::_InternalSerialize(
1428 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1429 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1430 const SolveParametersProto& this_ = static_cast<const SolveParametersProto&>(base);
1431#else // PROTOBUF_CUSTOM_VTABLE
1432::uint8_t* PROTOBUF_NONNULL SolveParametersProto::_InternalSerialize(
1433 ::uint8_t* PROTOBUF_NONNULL target,
1434 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1435 const SolveParametersProto& this_ = *this;
1436#endif // PROTOBUF_CUSTOM_VTABLE
1437 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1438 this_.CheckHasBitConsistency();
1439 }
1440 // @@protoc_insertion_point(serialize_to_array_start:operations_research.math_opt.SolveParametersProto)
1441 ::uint32_t cached_has_bits = 0;
1442 (void)cached_has_bits;
1443
1444 cached_has_bits = this_._impl_._has_bits_[0];
1445 // .google.protobuf.Duration time_limit = 1;
1446 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1447 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1448 1, *this_._impl_.time_limit_, this_._impl_.time_limit_->GetCachedSize(), target,
1449 stream);
1450 }
1451
1452 // optional int64 iteration_limit = 2;
1453 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1454 target =
1455 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<2>(
1456 stream, this_._internal_iteration_limit(), target);
1457 }
1458
1459 // bool enable_output = 3;
1460 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1461 if (this_._internal_enable_output() != 0) {
1462 target = stream->EnsureSpace(target);
1463 target = ::_pbi::WireFormatLite::WriteBoolToArray(
1464 3, this_._internal_enable_output(), target);
1465 }
1466 }
1467
1468 // optional int32 threads = 4;
1469 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1470 target =
1471 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<4>(
1472 stream, this_._internal_threads(), target);
1473 }
1474
1475 // optional int32 random_seed = 5;
1476 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1477 target =
1478 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
1479 stream, this_._internal_random_seed(), target);
1480 }
1481
1482 // .operations_research.math_opt.LPAlgorithmProto lp_algorithm = 6;
1483 if (CheckHasBit(cached_has_bits, 0x00004000U)) {
1484 if (this_._internal_lp_algorithm() != 0) {
1485 target = stream->EnsureSpace(target);
1486 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1487 6, this_._internal_lp_algorithm(), target);
1488 }
1489 }
1490
1491 // .operations_research.math_opt.EmphasisProto presolve = 7;
1492 if (CheckHasBit(cached_has_bits, 0x00008000U)) {
1493 if (this_._internal_presolve() != 0) {
1494 target = stream->EnsureSpace(target);
1495 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1496 7, this_._internal_presolve(), target);
1497 }
1498 }
1499
1500 // .operations_research.math_opt.EmphasisProto cuts = 8;
1501 if (CheckHasBit(cached_has_bits, 0x00010000U)) {
1502 if (this_._internal_cuts() != 0) {
1503 target = stream->EnsureSpace(target);
1504 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1505 8, this_._internal_cuts(), target);
1506 }
1507 }
1508
1509 // .operations_research.math_opt.EmphasisProto heuristics = 9;
1510 if (CheckHasBit(cached_has_bits, 0x00020000U)) {
1511 if (this_._internal_heuristics() != 0) {
1512 target = stream->EnsureSpace(target);
1513 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1514 9, this_._internal_heuristics(), target);
1515 }
1516 }
1517
1518 // .operations_research.math_opt.EmphasisProto scaling = 10;
1519 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1520 if (this_._internal_scaling() != 0) {
1521 target = stream->EnsureSpace(target);
1522 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1523 10, this_._internal_scaling(), target);
1524 }
1525 }
1526
1527 // .operations_research.GScipParameters gscip = 12;
1528 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1529 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1530 12, *this_._impl_.gscip_, this_._impl_.gscip_->GetCachedSize(), target,
1531 stream);
1532 }
1533
1534 // .operations_research.math_opt.GurobiParametersProto gurobi = 13;
1535 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1536 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1537 13, *this_._impl_.gurobi_, this_._impl_.gurobi_->GetCachedSize(), target,
1538 stream);
1539 }
1540
1541 // .operations_research.glop.GlopParameters glop = 14;
1542 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1543 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1544 14, *this_._impl_.glop_, this_._impl_.glop_->GetCachedSize(), target,
1545 stream);
1546 }
1547
1548 // .operations_research.sat.SatParameters cp_sat = 15;
1549 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1550 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1551 15, *this_._impl_.cp_sat_, this_._impl_.cp_sat_->GetCachedSize(), target,
1552 stream);
1553 }
1554
1555 // .operations_research.pdlp.PrimalDualHybridGradientParams pdlp = 16;
1556 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1557 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1558 16, *this_._impl_.pdlp_, this_._impl_.pdlp_->GetCachedSize(), target,
1559 stream);
1560 }
1561
1562 // optional double relative_gap_tolerance = 17;
1563 if (CheckHasBit(cached_has_bits, 0x00080000U)) {
1564 target = stream->EnsureSpace(target);
1565 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1566 17, this_._internal_relative_gap_tolerance(), target);
1567 }
1568
1569 // optional double absolute_gap_tolerance = 18;
1570 if (CheckHasBit(cached_has_bits, 0x00100000U)) {
1571 target = stream->EnsureSpace(target);
1572 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1573 18, this_._internal_absolute_gap_tolerance(), target);
1574 }
1575
1576 // .operations_research.math_opt.OsqpSettingsProto osqp = 19;
1577 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1578 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1579 19, *this_._impl_.osqp_, this_._impl_.osqp_->GetCachedSize(), target,
1580 stream);
1581 }
1582
1583 // optional double cutoff_limit = 20;
1584 if (CheckHasBit(cached_has_bits, 0x00200000U)) {
1585 target = stream->EnsureSpace(target);
1586 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1587 20, this_._internal_cutoff_limit(), target);
1588 }
1589
1590 // optional double objective_limit = 21;
1591 if (CheckHasBit(cached_has_bits, 0x00400000U)) {
1592 target = stream->EnsureSpace(target);
1593 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1594 21, this_._internal_objective_limit(), target);
1595 }
1596
1597 // optional double best_bound_limit = 22;
1598 if (CheckHasBit(cached_has_bits, 0x00800000U)) {
1599 target = stream->EnsureSpace(target);
1600 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1601 22, this_._internal_best_bound_limit(), target);
1602 }
1603
1604 // optional int32 solution_limit = 23;
1605 if (CheckHasBit(cached_has_bits, 0x02000000U)) {
1606 target = stream->EnsureSpace(target);
1607 target = ::_pbi::WireFormatLite::WriteInt32ToArray(
1608 23, this_._internal_solution_limit(), target);
1609 }
1610
1611 // optional int64 node_limit = 24;
1612 if (CheckHasBit(cached_has_bits, 0x01000000U)) {
1613 target = stream->EnsureSpace(target);
1614 target = ::_pbi::WireFormatLite::WriteInt64ToArray(
1615 24, this_._internal_node_limit(), target);
1616 }
1617
1618 // optional int32 solution_pool_size = 25;
1619 if (CheckHasBit(cached_has_bits, 0x04000000U)) {
1620 target = stream->EnsureSpace(target);
1621 target = ::_pbi::WireFormatLite::WriteInt32ToArray(
1622 25, this_._internal_solution_pool_size(), target);
1623 }
1624
1625 // .operations_research.math_opt.GlpkParametersProto glpk = 26;
1626 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1627 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1628 26, *this_._impl_.glpk_, this_._impl_.glpk_->GetCachedSize(), target,
1629 stream);
1630 }
1631
1632 // .operations_research.math_opt.HighsOptionsProto highs = 27;
1633 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1634 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1635 27, *this_._impl_.highs_, this_._impl_.highs_->GetCachedSize(), target,
1636 stream);
1637 }
1638
1639 // .operations_research.math_opt.XpressParametersProto xpress = 28;
1640 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1641 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1642 28, *this_._impl_.xpress_, this_._impl_.xpress_->GetCachedSize(), target,
1643 stream);
1644 }
1645
1646 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1647 target =
1648 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1649 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1650 }
1651 // @@protoc_insertion_point(serialize_to_array_end:operations_research.math_opt.SolveParametersProto)
1652 return target;
1653}
1654
1655#if defined(PROTOBUF_CUSTOM_VTABLE)
1656::size_t SolveParametersProto::ByteSizeLong(const MessageLite& base) {
1657 const SolveParametersProto& this_ = static_cast<const SolveParametersProto&>(base);
1658#else // PROTOBUF_CUSTOM_VTABLE
1659::size_t SolveParametersProto::ByteSizeLong() const {
1660 const SolveParametersProto& this_ = *this;
1661#endif // PROTOBUF_CUSTOM_VTABLE
1662 // @@protoc_insertion_point(message_byte_size_start:operations_research.math_opt.SolveParametersProto)
1663 ::size_t total_size = 0;
1664
1665 ::uint32_t cached_has_bits = 0;
1666 // Prevent compiler warnings about cached_has_bits being unused
1667 (void)cached_has_bits;
1668
1669 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1670 cached_has_bits = this_._impl_._has_bits_[0];
1671 total_size += ::absl::popcount(0x00f80000U & cached_has_bits) * 10;
1672 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1673 // .google.protobuf.Duration time_limit = 1;
1674 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1675 total_size += 1 +
1676 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.time_limit_);
1677 }
1678 // .operations_research.GScipParameters gscip = 12;
1679 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1680 total_size += 1 +
1681 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.gscip_);
1682 }
1683 // .operations_research.math_opt.GurobiParametersProto gurobi = 13;
1684 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1685 total_size += 1 +
1686 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.gurobi_);
1687 }
1688 // .operations_research.glop.GlopParameters glop = 14;
1689 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1690 total_size += 1 +
1691 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.glop_);
1692 }
1693 // .operations_research.sat.SatParameters cp_sat = 15;
1694 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1695 total_size += 1 +
1696 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.cp_sat_);
1697 }
1698 // .operations_research.pdlp.PrimalDualHybridGradientParams pdlp = 16;
1699 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1700 total_size += 2 +
1701 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.pdlp_);
1702 }
1703 // .operations_research.math_opt.OsqpSettingsProto osqp = 19;
1704 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1705 total_size += 2 +
1706 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.osqp_);
1707 }
1708 // .operations_research.math_opt.GlpkParametersProto glpk = 26;
1709 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1710 total_size += 2 +
1711 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.glpk_);
1712 }
1713 }
1714 if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
1715 // .operations_research.math_opt.HighsOptionsProto highs = 27;
1716 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1717 total_size += 2 +
1718 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.highs_);
1719 }
1720 // .operations_research.math_opt.XpressParametersProto xpress = 28;
1721 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1722 total_size += 2 +
1723 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.xpress_);
1724 }
1725 // optional int64 iteration_limit = 2;
1726 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1727 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1728 this_._internal_iteration_limit());
1729 }
1730 // bool enable_output = 3;
1731 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1732 if (this_._internal_enable_output() != 0) {
1733 total_size += 2;
1734 }
1735 }
1736 // optional int32 threads = 4;
1737 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1738 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
1739 this_._internal_threads());
1740 }
1741 // optional int32 random_seed = 5;
1742 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1743 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
1744 this_._internal_random_seed());
1745 }
1746 // .operations_research.math_opt.LPAlgorithmProto lp_algorithm = 6;
1747 if (CheckHasBit(cached_has_bits, 0x00004000U)) {
1748 if (this_._internal_lp_algorithm() != 0) {
1749 total_size += 1 +
1750 ::_pbi::WireFormatLite::EnumSize(this_._internal_lp_algorithm());
1751 }
1752 }
1753 // .operations_research.math_opt.EmphasisProto presolve = 7;
1754 if (CheckHasBit(cached_has_bits, 0x00008000U)) {
1755 if (this_._internal_presolve() != 0) {
1756 total_size += 1 +
1757 ::_pbi::WireFormatLite::EnumSize(this_._internal_presolve());
1758 }
1759 }
1760 }
1761 if (BatchCheckHasBit(cached_has_bits, 0x00070000U)) {
1762 // .operations_research.math_opt.EmphasisProto cuts = 8;
1763 if (CheckHasBit(cached_has_bits, 0x00010000U)) {
1764 if (this_._internal_cuts() != 0) {
1765 total_size += 1 +
1766 ::_pbi::WireFormatLite::EnumSize(this_._internal_cuts());
1767 }
1768 }
1769 // .operations_research.math_opt.EmphasisProto heuristics = 9;
1770 if (CheckHasBit(cached_has_bits, 0x00020000U)) {
1771 if (this_._internal_heuristics() != 0) {
1772 total_size += 1 +
1773 ::_pbi::WireFormatLite::EnumSize(this_._internal_heuristics());
1774 }
1775 }
1776 // .operations_research.math_opt.EmphasisProto scaling = 10;
1777 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1778 if (this_._internal_scaling() != 0) {
1779 total_size += 1 +
1780 ::_pbi::WireFormatLite::EnumSize(this_._internal_scaling());
1781 }
1782 }
1783 }
1784 if (BatchCheckHasBit(cached_has_bits, 0x07000000U)) {
1785 // optional int64 node_limit = 24;
1786 if (CheckHasBit(cached_has_bits, 0x01000000U)) {
1787 total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
1788 this_._internal_node_limit());
1789 }
1790 // optional int32 solution_limit = 23;
1791 if (CheckHasBit(cached_has_bits, 0x02000000U)) {
1792 total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
1793 this_._internal_solution_limit());
1794 }
1795 // optional int32 solution_pool_size = 25;
1796 if (CheckHasBit(cached_has_bits, 0x04000000U)) {
1797 total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
1798 this_._internal_solution_pool_size());
1799 }
1800 }
1801 return this_.MaybeComputeUnknownFieldsSize(total_size,
1802 &this_._impl_._cached_size_);
1803}
1804
1805void SolveParametersProto::MergeImpl(::google::protobuf::MessageLite& to_msg,
1806 const ::google::protobuf::MessageLite& from_msg) {
1807 auto* const _this =
1808 static_cast<SolveParametersProto*>(&to_msg);
1809 auto& from = static_cast<const SolveParametersProto&>(from_msg);
1810 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1811 from.CheckHasBitConsistency();
1812 }
1813 ::google::protobuf::Arena* arena = _this->GetArena();
1814 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.math_opt.SolveParametersProto)
1815 ABSL_DCHECK_NE(&from, _this);
1816 ::uint32_t cached_has_bits = 0;
1817 (void)cached_has_bits;
1818
1819 cached_has_bits = from._impl_._has_bits_[0];
1820 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1821 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1822 ABSL_DCHECK(from._impl_.time_limit_ != nullptr);
1823 if (_this->_impl_.time_limit_ == nullptr) {
1824 _this->_impl_.time_limit_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.time_limit_);
1825 } else {
1826 _this->_impl_.time_limit_->MergeFrom(*from._impl_.time_limit_);
1827 }
1828 }
1829 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1830 ABSL_DCHECK(from._impl_.gscip_ != nullptr);
1831 if (_this->_impl_.gscip_ == nullptr) {
1832 _this->_impl_.gscip_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gscip_);
1833 } else {
1834 _this->_impl_.gscip_->MergeFrom(*from._impl_.gscip_);
1835 }
1836 }
1837 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1838 ABSL_DCHECK(from._impl_.gurobi_ != nullptr);
1839 if (_this->_impl_.gurobi_ == nullptr) {
1840 _this->_impl_.gurobi_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.gurobi_);
1841 } else {
1842 _this->_impl_.gurobi_->MergeFrom(*from._impl_.gurobi_);
1843 }
1844 }
1845 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1846 ABSL_DCHECK(from._impl_.glop_ != nullptr);
1847 if (_this->_impl_.glop_ == nullptr) {
1848 _this->_impl_.glop_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.glop_);
1849 } else {
1850 _this->_impl_.glop_->MergeFrom(*from._impl_.glop_);
1851 }
1852 }
1853 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1854 ABSL_DCHECK(from._impl_.cp_sat_ != nullptr);
1855 if (_this->_impl_.cp_sat_ == nullptr) {
1856 _this->_impl_.cp_sat_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cp_sat_);
1857 } else {
1858 _this->_impl_.cp_sat_->MergeFrom(*from._impl_.cp_sat_);
1859 }
1860 }
1861 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1862 ABSL_DCHECK(from._impl_.pdlp_ != nullptr);
1863 if (_this->_impl_.pdlp_ == nullptr) {
1864 _this->_impl_.pdlp_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.pdlp_);
1865 } else {
1866 _this->_impl_.pdlp_->MergeFrom(*from._impl_.pdlp_);
1867 }
1868 }
1869 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1870 ABSL_DCHECK(from._impl_.osqp_ != nullptr);
1871 if (_this->_impl_.osqp_ == nullptr) {
1872 _this->_impl_.osqp_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.osqp_);
1873 } else {
1874 _this->_impl_.osqp_->MergeFrom(*from._impl_.osqp_);
1875 }
1876 }
1877 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1878 ABSL_DCHECK(from._impl_.glpk_ != nullptr);
1879 if (_this->_impl_.glpk_ == nullptr) {
1880 _this->_impl_.glpk_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.glpk_);
1881 } else {
1882 _this->_impl_.glpk_->MergeFrom(*from._impl_.glpk_);
1883 }
1884 }
1885 }
1886 if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
1887 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1888 ABSL_DCHECK(from._impl_.highs_ != nullptr);
1889 if (_this->_impl_.highs_ == nullptr) {
1890 _this->_impl_.highs_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.highs_);
1891 } else {
1892 _this->_impl_.highs_->MergeFrom(*from._impl_.highs_);
1893 }
1894 }
1895 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1896 ABSL_DCHECK(from._impl_.xpress_ != nullptr);
1897 if (_this->_impl_.xpress_ == nullptr) {
1898 _this->_impl_.xpress_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.xpress_);
1899 } else {
1900 _this->_impl_.xpress_->MergeFrom(*from._impl_.xpress_);
1901 }
1902 }
1903 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1904 _this->_impl_.iteration_limit_ = from._impl_.iteration_limit_;
1905 }
1906 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1907 if (from._internal_enable_output() != 0) {
1908 _this->_impl_.enable_output_ = from._impl_.enable_output_;
1909 }
1910 }
1911 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1912 _this->_impl_.threads_ = from._impl_.threads_;
1913 }
1914 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1915 _this->_impl_.random_seed_ = from._impl_.random_seed_;
1916 }
1917 if (CheckHasBit(cached_has_bits, 0x00004000U)) {
1918 if (from._internal_lp_algorithm() != 0) {
1919 _this->_impl_.lp_algorithm_ = from._impl_.lp_algorithm_;
1920 }
1921 }
1922 if (CheckHasBit(cached_has_bits, 0x00008000U)) {
1923 if (from._internal_presolve() != 0) {
1924 _this->_impl_.presolve_ = from._impl_.presolve_;
1925 }
1926 }
1927 }
1928 if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
1929 if (CheckHasBit(cached_has_bits, 0x00010000U)) {
1930 if (from._internal_cuts() != 0) {
1931 _this->_impl_.cuts_ = from._impl_.cuts_;
1932 }
1933 }
1934 if (CheckHasBit(cached_has_bits, 0x00020000U)) {
1935 if (from._internal_heuristics() != 0) {
1936 _this->_impl_.heuristics_ = from._impl_.heuristics_;
1937 }
1938 }
1939 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1940 if (from._internal_scaling() != 0) {
1941 _this->_impl_.scaling_ = from._impl_.scaling_;
1942 }
1943 }
1944 if (CheckHasBit(cached_has_bits, 0x00080000U)) {
1945 _this->_impl_.relative_gap_tolerance_ = from._impl_.relative_gap_tolerance_;
1946 }
1947 if (CheckHasBit(cached_has_bits, 0x00100000U)) {
1948 _this->_impl_.absolute_gap_tolerance_ = from._impl_.absolute_gap_tolerance_;
1949 }
1950 if (CheckHasBit(cached_has_bits, 0x00200000U)) {
1951 _this->_impl_.cutoff_limit_ = from._impl_.cutoff_limit_;
1952 }
1953 if (CheckHasBit(cached_has_bits, 0x00400000U)) {
1954 _this->_impl_.objective_limit_ = from._impl_.objective_limit_;
1955 }
1956 if (CheckHasBit(cached_has_bits, 0x00800000U)) {
1957 _this->_impl_.best_bound_limit_ = from._impl_.best_bound_limit_;
1958 }
1959 }
1960 if (BatchCheckHasBit(cached_has_bits, 0x07000000U)) {
1961 if (CheckHasBit(cached_has_bits, 0x01000000U)) {
1962 _this->_impl_.node_limit_ = from._impl_.node_limit_;
1963 }
1964 if (CheckHasBit(cached_has_bits, 0x02000000U)) {
1965 _this->_impl_.solution_limit_ = from._impl_.solution_limit_;
1966 }
1967 if (CheckHasBit(cached_has_bits, 0x04000000U)) {
1968 _this->_impl_.solution_pool_size_ = from._impl_.solution_pool_size_;
1969 }
1970 }
1971 _this->_impl_._has_bits_[0] |= cached_has_bits;
1972 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1973 from._internal_metadata_);
1974}
1975
1977 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.math_opt.SolveParametersProto)
1978 if (&from == this) return;
1980 MergeFrom(from);
1981}
1982
1983
1984void SolveParametersProto::InternalSwap(SolveParametersProto* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1985 using ::std::swap;
1986 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1987 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1988 ::google::protobuf::internal::memswap<
1989 PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.solution_pool_size_)
1990 + sizeof(SolveParametersProto::_impl_.solution_pool_size_)
1991 - PROTOBUF_FIELD_OFFSET(SolveParametersProto, _impl_.time_limit_)>(
1992 reinterpret_cast<char*>(&_impl_.time_limit_),
1993 reinterpret_cast<char*>(&other->_impl_.time_limit_));
1994}
1995
1996::google::protobuf::Metadata SolveParametersProto::GetMetadata() const {
1997 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1998}
1999// @@protoc_insertion_point(namespace_scope)
2000} // namespace math_opt
2001} // namespace operations_research
2002namespace google {
2003namespace protobuf {
2004} // namespace protobuf
2005} // namespace google
2006// @@protoc_insertion_point(global_scope)
2007PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
2008 _static_init2_ [[maybe_unused]] =
2010 ::std::false_type{});
2011#include "google/protobuf/port_undef.inc"
static PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 ::std::false_type _static_init2_
static const ::_pb::Message *PROTOBUF_NONNULL const file_default_instances[]
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition gurobi.pb.cc:769
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition highs.pb.cc:818
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend void swap(SolveParametersProto &a, SolveParametersProto &b)
::google::protobuf::Metadata GetMetadata() const
void CopyFrom(const SolveParametersProto &from)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SolveParametersProto &from)
decltype(::std::declval< SolverInitializerProto >()._impl_._has_bits_) HasBits
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void CopyFrom(const SolverInitializerProto &from)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SolverInitializerProto &from)
friend void swap(SolverInitializerProto &a, SolverInitializerProto &b)
decltype(::std::declval< StrictnessProto >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend void swap(StrictnessProto &a, StrictnessProto &b)
void MergeFrom(const StrictnessProto &from)
::google::protobuf::Metadata GetMetadata() const
void CopyFrom(const StrictnessProto &from)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition xpress.pb.cc:308
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition xpress.pb.cc:893
static constexpr ::_pbi::MigrationSchema *PROTOBUF_NULLABLE schemas
const ::uint32_t TableStruct_ortools_2fglop_2fparameters_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold)
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fglop_2fparameters_2eproto
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fglpk_2eproto
Definition glpk.pb.cc:86
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fgscip_2fgscip_2eproto
Definition gscip.pb.cc:460
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fgurobi_2eproto
Definition gurobi.pb.cc:210
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fhighs_2eproto
Definition highs.pb.cc:216
static constexprconst ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE file_level_service_descriptors_ortools_2fmath_5fopt_2fparameters_2eproto
static const ::_pb::EnumDescriptor *PROTOBUF_NONNULL file_level_enum_descriptors_ortools_2fmath_5fopt_2fparameters_2eproto[3]
static const ::_pbi::DescriptorTable *PROTOBUF_NONNULL const descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto_deps[10]
::absl::once_flag descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto_once
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fparameters_2eproto
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SolveParametersProto_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SolverInitializerProtoDefaultTypeInternal _SolverInitializerProto_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SolveParametersProtoDefaultTypeInternal _SolveParametersProto_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL EmphasisProto_descriptor()
PROTOBUF_CONSTINIT const uint32_t EmphasisProto_internal_data_[]
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL LPAlgorithmProto_descriptor()
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SolverTypeProto_descriptor()
PROTOBUF_CONSTINIT const uint32_t LPAlgorithmProto_internal_data_[]
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SolverInitializerProto_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull StrictnessProto_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StrictnessProtoDefaultTypeInternal _StrictnessProto_default_instance_
PROTOBUF_CONSTINIT const uint32_t SolverTypeProto_internal_data_[]
OR-Tools root namespace.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fosqp_2eproto
Definition osqp.pb.cc:199
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fpdlp_2fsolvers_2eproto
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolvers_2fxpress_2eproto
Definition xpress.pb.cc:160