4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fglop_2fparameters_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fglop_2fparameters_2eproto
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3013000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
16 #if 3013000 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h>
33 #include <google/protobuf/extension_set.h>
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
37 #include <google/protobuf/port_def.inc>
38 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fglop_2fparameters_2eproto
39 PROTOBUF_NAMESPACE_OPEN
43 PROTOBUF_NAMESPACE_CLOSE
47 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
49 static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
51 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
53 static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata
field_metadata[];
61 class GlopParametersDefaultTypeInternal;
65 PROTOBUF_NAMESPACE_OPEN
66 template<> ::operations_research::glop::GlopParameters* Arena::CreateMaybeMessage<::operations_research::glop::GlopParameters>(Arena*);
67 PROTOBUF_NAMESPACE_CLOSE
86 "Incorrect type passed to function GlopParameters_ScalingAlgorithm_Name.");
87 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
92 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<GlopParameters_ScalingAlgorithm>(
110 "Incorrect type passed to function GlopParameters_SolverBehavior_Name.");
111 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
116 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<GlopParameters_SolverBehavior>(
134 "Incorrect type passed to function GlopParameters_PricingRule_Name.");
135 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
140 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<GlopParameters_PricingRule>(
159 "Incorrect type passed to function GlopParameters_InitialBasisHeuristic_Name.");
160 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
165 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<GlopParameters_InitialBasisHeuristic>(
184 "Incorrect type passed to function GlopParameters_CostScalingAlgorithm_Name.");
185 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
190 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<GlopParameters_CostScalingAlgorithm>(
196 public ::PROTOBUF_NAMESPACE_ID::Message {
204 *
this = ::std::move(from);
207 inline GlopParameters&
operator=(
const GlopParameters& from) {
211 inline GlopParameters&
operator=(GlopParameters&& from) noexcept {
212 if (GetArena() == from.GetArena()) {
213 if (
this != &from) InternalSwap(&from);
221 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
224 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
227 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
228 return GetDescriptor();
231 return GetMetadataStatic().descriptor;
234 return GetMetadataStatic().reflection;
240 return reinterpret_cast<const GlopParameters*
>(
243 static constexpr
int kIndexInFileMessages =
246 friend void swap(GlopParameters&
a, GlopParameters&
b) {
249 inline void Swap(GlopParameters* other) {
250 if (other ==
this)
return;
251 if (GetArena() == other->GetArena()) {
254 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
258 if (other ==
this)
return;
259 GOOGLE_DCHECK(GetArena() == other->GetArena());
265 inline GlopParameters*
New() const final {
266 return CreateMaybeMessage<GlopParameters>(
nullptr);
269 GlopParameters*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
270 return CreateMaybeMessage<GlopParameters>(arena);
272 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
273 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
276 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
277 bool IsInitialized() const final;
279 size_t ByteSizeLong() const final;
280 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
281 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
282 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
283 int GetCachedSize() const final {
return _cached_size_.Get(); }
286 inline void SharedCtor();
287 inline void SharedDtor();
288 void SetCachedSize(
int size)
const final;
289 void InternalSwap(GlopParameters* other);
290 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
291 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
292 return "operations_research.glop.GlopParameters";
297 static void ArenaDtor(
void*
object);
298 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
303 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
326 static constexpr
int ScalingAlgorithm_ARRAYSIZE =
328 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
336 "Incorrect type passed to function ScalingAlgorithm_Name.");
358 static constexpr
int SolverBehavior_ARRAYSIZE =
360 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
368 "Incorrect type passed to function SolverBehavior_Name.");
390 static constexpr
int PricingRule_ARRAYSIZE =
392 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
400 "Incorrect type passed to function PricingRule_Name.");
424 static constexpr
int InitialBasisHeuristic_ARRAYSIZE =
426 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
434 "Incorrect type passed to function InitialBasisHeuristic_Name.");
458 static constexpr
int CostScalingAlgorithm_ARRAYSIZE =
460 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
468 "Incorrect type passed to function CostScalingAlgorithm_Name.");
479 kUseDualSimplexFieldNumber = 31,
480 kAllowSimplexAlgorithmChangeFieldNumber = 32,
481 kPerturbCostsInDualSimplexFieldNumber = 53,
482 kFeasibilityRuleFieldNumber = 1,
483 kOptimizationRuleFieldNumber = 2,
484 kRefactorizationThresholdFieldNumber = 6,
485 kRecomputeReducedCostsThresholdFieldNumber = 8,
486 kRecomputeEdgesNormThresholdFieldNumber = 9,
487 kPrimalFeasibilityToleranceFieldNumber = 10,
488 kDualFeasibilityToleranceFieldNumber = 11,
489 kRatioTestZeroThresholdFieldNumber = 12,
490 kNormalizeUsingColumnNormFieldNumber = 4,
491 kUseNestedPricingFieldNumber = 5,
492 kUseScalingFieldNumber = 16,
493 kUseTransposedMatrixFieldNumber = 18,
494 kInitialBasisFieldNumber = 17,
495 kHarrisToleranceRatioFieldNumber = 13,
496 kSmallPivotThresholdFieldNumber = 14,
497 kMinimumAcceptablePivotFieldNumber = 15,
498 kBasisRefactorizationPeriodFieldNumber = 19,
499 kSolveDualProblemFieldNumber = 20,
500 kDualizerThresholdFieldNumber = 21,
501 kSolutionFeasibilityToleranceFieldNumber = 22,
502 kLuFactorizationPivotThresholdFieldNumber = 25,
503 kMaxTimeInSecondsFieldNumber = 26,
504 kMaxNumberOfIterationsFieldNumber = 27,
505 kMarkowitzSingularityThresholdFieldNumber = 30,
506 kMarkowitzZlatevParameterFieldNumber = 29,
507 kDevexWeightsResetPeriodFieldNumber = 33,
508 kInitializeDevexWithColumnNormsFieldNumber = 36,
509 kExploitSingletonColumnInInitialBasisFieldNumber = 37,
510 kProvideStrongOptimalGuaranteeFieldNumber = 24,
511 kChangeStatusToImpreciseFieldNumber = 58,
512 kUsePreprocessingFieldNumber = 34,
513 kUseMiddleProductFormUpdateFieldNumber = 35,
514 kDualSmallPivotThresholdFieldNumber = 38,
515 kPreprocessorZeroToleranceFieldNumber = 39,
516 kObjectiveLowerLimitFieldNumber = 40,
517 kObjectiveUpperLimitFieldNumber = 41,
518 kDegenerateMinistepFactorFieldNumber = 42,
519 kRandomSeedFieldNumber = 43,
520 kNumOmpThreadsFieldNumber = 44,
521 kMaxDeterministicTimeFieldNumber = 45,
522 kDropToleranceFieldNumber = 52,
523 kRelativeCostPerturbationFieldNumber = 54,
524 kRelativeMaxCostPerturbationFieldNumber = 55,
525 kMaxNumberOfReoptimizationsFieldNumber = 56,
526 kScalingMethodFieldNumber = 57,
527 kCostScalingFieldNumber = 60,
528 kInitialConditionNumberThresholdFieldNumber = 59,
533 bool _internal_has_use_dual_simplex()
const;
539 bool _internal_use_dual_simplex()
const;
540 void _internal_set_use_dual_simplex(
bool value);
546 bool _internal_has_allow_simplex_algorithm_change()
const;
552 bool _internal_allow_simplex_algorithm_change()
const;
553 void _internal_set_allow_simplex_algorithm_change(
bool value);
559 bool _internal_has_perturb_costs_in_dual_simplex()
const;
565 bool _internal_perturb_costs_in_dual_simplex()
const;
566 void _internal_set_perturb_costs_in_dual_simplex(
bool value);
572 bool _internal_has_feasibility_rule()
const;
585 bool _internal_has_optimization_rule()
const;
598 bool _internal_has_refactorization_threshold()
const;
604 double _internal_refactorization_threshold()
const;
605 void _internal_set_refactorization_threshold(
double value);
611 bool _internal_has_recompute_reduced_costs_threshold()
const;
617 double _internal_recompute_reduced_costs_threshold()
const;
618 void _internal_set_recompute_reduced_costs_threshold(
double value);
624 bool _internal_has_recompute_edges_norm_threshold()
const;
630 double _internal_recompute_edges_norm_threshold()
const;
631 void _internal_set_recompute_edges_norm_threshold(
double value);
637 bool _internal_has_primal_feasibility_tolerance()
const;
643 double _internal_primal_feasibility_tolerance()
const;
644 void _internal_set_primal_feasibility_tolerance(
double value);
650 bool _internal_has_dual_feasibility_tolerance()
const;
656 double _internal_dual_feasibility_tolerance()
const;
657 void _internal_set_dual_feasibility_tolerance(
double value);
663 bool _internal_has_ratio_test_zero_threshold()
const;
669 double _internal_ratio_test_zero_threshold()
const;
670 void _internal_set_ratio_test_zero_threshold(
double value);
676 bool _internal_has_normalize_using_column_norm()
const;
682 bool _internal_normalize_using_column_norm()
const;
683 void _internal_set_normalize_using_column_norm(
bool value);
689 bool _internal_has_use_nested_pricing()
const;
695 bool _internal_use_nested_pricing()
const;
696 void _internal_set_use_nested_pricing(
bool value);
702 bool _internal_has_use_scaling()
const;
708 bool _internal_use_scaling()
const;
709 void _internal_set_use_scaling(
bool value);
715 bool _internal_has_use_transposed_matrix()
const;
721 bool _internal_use_transposed_matrix()
const;
722 void _internal_set_use_transposed_matrix(
bool value);
728 bool _internal_has_initial_basis()
const;
741 bool _internal_has_harris_tolerance_ratio()
const;
747 double _internal_harris_tolerance_ratio()
const;
748 void _internal_set_harris_tolerance_ratio(
double value);
754 bool _internal_has_small_pivot_threshold()
const;
760 double _internal_small_pivot_threshold()
const;
761 void _internal_set_small_pivot_threshold(
double value);
767 bool _internal_has_minimum_acceptable_pivot()
const;
773 double _internal_minimum_acceptable_pivot()
const;
774 void _internal_set_minimum_acceptable_pivot(
double value);
780 bool _internal_has_basis_refactorization_period()
const;
793 bool _internal_has_solve_dual_problem()
const;
806 bool _internal_has_dualizer_threshold()
const;
812 double _internal_dualizer_threshold()
const;
813 void _internal_set_dualizer_threshold(
double value);
819 bool _internal_has_solution_feasibility_tolerance()
const;
825 double _internal_solution_feasibility_tolerance()
const;
826 void _internal_set_solution_feasibility_tolerance(
double value);
832 bool _internal_has_lu_factorization_pivot_threshold()
const;
838 double _internal_lu_factorization_pivot_threshold()
const;
839 void _internal_set_lu_factorization_pivot_threshold(
double value);
845 bool _internal_has_max_time_in_seconds()
const;
851 double _internal_max_time_in_seconds()
const;
852 void _internal_set_max_time_in_seconds(
double value);
858 bool _internal_has_max_number_of_iterations()
const;
871 bool _internal_has_markowitz_singularity_threshold()
const;
877 double _internal_markowitz_singularity_threshold()
const;
878 void _internal_set_markowitz_singularity_threshold(
double value);
884 bool _internal_has_markowitz_zlatev_parameter()
const;
897 bool _internal_has_devex_weights_reset_period()
const;
910 bool _internal_has_initialize_devex_with_column_norms()
const;
916 bool _internal_initialize_devex_with_column_norms()
const;
917 void _internal_set_initialize_devex_with_column_norms(
bool value);
923 bool _internal_has_exploit_singleton_column_in_initial_basis()
const;
929 bool _internal_exploit_singleton_column_in_initial_basis()
const;
930 void _internal_set_exploit_singleton_column_in_initial_basis(
bool value);
936 bool _internal_has_provide_strong_optimal_guarantee()
const;
942 bool _internal_provide_strong_optimal_guarantee()
const;
943 void _internal_set_provide_strong_optimal_guarantee(
bool value);
949 bool _internal_has_change_status_to_imprecise()
const;
955 bool _internal_change_status_to_imprecise()
const;
956 void _internal_set_change_status_to_imprecise(
bool value);
962 bool _internal_has_use_preprocessing()
const;
968 bool _internal_use_preprocessing()
const;
969 void _internal_set_use_preprocessing(
bool value);
975 bool _internal_has_use_middle_product_form_update()
const;
981 bool _internal_use_middle_product_form_update()
const;
982 void _internal_set_use_middle_product_form_update(
bool value);
988 bool _internal_has_dual_small_pivot_threshold()
const;
994 double _internal_dual_small_pivot_threshold()
const;
995 void _internal_set_dual_small_pivot_threshold(
double value);
1001 bool _internal_has_preprocessor_zero_tolerance()
const;
1007 double _internal_preprocessor_zero_tolerance()
const;
1008 void _internal_set_preprocessor_zero_tolerance(
double value);
1014 bool _internal_has_objective_lower_limit()
const;
1020 double _internal_objective_lower_limit()
const;
1021 void _internal_set_objective_lower_limit(
double value);
1027 bool _internal_has_objective_upper_limit()
const;
1033 double _internal_objective_upper_limit()
const;
1034 void _internal_set_objective_upper_limit(
double value);
1040 bool _internal_has_degenerate_ministep_factor()
const;
1046 double _internal_degenerate_ministep_factor()
const;
1047 void _internal_set_degenerate_ministep_factor(
double value);
1053 bool _internal_has_random_seed()
const;
1066 bool _internal_has_num_omp_threads()
const;
1079 bool _internal_has_max_deterministic_time()
const;
1085 double _internal_max_deterministic_time()
const;
1086 void _internal_set_max_deterministic_time(
double value);
1092 bool _internal_has_drop_tolerance()
const;
1098 double _internal_drop_tolerance()
const;
1099 void _internal_set_drop_tolerance(
double value);
1105 bool _internal_has_relative_cost_perturbation()
const;
1111 double _internal_relative_cost_perturbation()
const;
1112 void _internal_set_relative_cost_perturbation(
double value);
1118 bool _internal_has_relative_max_cost_perturbation()
const;
1124 double _internal_relative_max_cost_perturbation()
const;
1125 void _internal_set_relative_max_cost_perturbation(
double value);
1131 bool _internal_has_max_number_of_reoptimizations()
const;
1137 double _internal_max_number_of_reoptimizations()
const;
1138 void _internal_set_max_number_of_reoptimizations(
double value);
1144 bool _internal_has_scaling_method()
const;
1157 bool _internal_has_cost_scaling()
const;
1170 bool _internal_has_initial_condition_number_threshold()
const;
1176 double _internal_initial_condition_number_threshold()
const;
1177 void _internal_set_initial_condition_number_threshold(
double value);
1184 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1185 typedef void InternalArenaConstructable_;
1186 typedef void DestructorSkippable_;
1187 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
1188 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1189 bool use_dual_simplex_;
1190 bool allow_simplex_algorithm_change_;
1191 bool perturb_costs_in_dual_simplex_;
1192 int feasibility_rule_;
1193 int optimization_rule_;
1194 double refactorization_threshold_;
1195 double recompute_reduced_costs_threshold_;
1196 double recompute_edges_norm_threshold_;
1197 double primal_feasibility_tolerance_;
1198 double dual_feasibility_tolerance_;
1199 double ratio_test_zero_threshold_;
1200 bool normalize_using_column_norm_;
1201 bool use_nested_pricing_;
1203 bool use_transposed_matrix_;
1205 double harris_tolerance_ratio_;
1206 double small_pivot_threshold_;
1207 double minimum_acceptable_pivot_;
1209 int solve_dual_problem_;
1210 double dualizer_threshold_;
1211 double solution_feasibility_tolerance_;
1212 double lu_factorization_pivot_threshold_;
1213 double max_time_in_seconds_;
1215 double markowitz_singularity_threshold_;
1218 bool initialize_devex_with_column_norms_;
1219 bool exploit_singleton_column_in_initial_basis_;
1220 bool provide_strong_optimal_guarantee_;
1221 bool change_status_to_imprecise_;
1222 bool use_preprocessing_;
1223 bool use_middle_product_form_update_;
1224 double dual_small_pivot_threshold_;
1225 double preprocessor_zero_tolerance_;
1226 double objective_lower_limit_;
1227 double objective_upper_limit_;
1228 double degenerate_ministep_factor_;
1231 double max_deterministic_time_;
1232 double drop_tolerance_;
1233 double relative_cost_perturbation_;
1234 double relative_max_cost_perturbation_;
1235 double max_number_of_reoptimizations_;
1236 int scaling_method_;
1238 double initial_condition_number_threshold_;
1239 friend struct ::TableStruct_ortools_2fglop_2fparameters_2eproto;
1247 #pragma GCC diagnostic push
1248 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1253 inline bool GlopParameters::_internal_has_scaling_method()
const {
1254 bool value = (_has_bits_[1] & 0x00008000u) != 0;
1257 inline bool GlopParameters::has_scaling_method()
const {
1258 return _internal_has_scaling_method();
1260 inline void GlopParameters::clear_scaling_method() {
1261 scaling_method_ = 1;
1262 _has_bits_[1] &= ~0x00008000u;
1269 return _internal_scaling_method();
1273 _has_bits_[1] |= 0x00008000u;
1274 scaling_method_ =
value;
1277 _internal_set_scaling_method(
value);
1282 inline bool GlopParameters::_internal_has_feasibility_rule()
const {
1283 bool value = (_has_bits_[0] & 0x00000008u) != 0;
1286 inline bool GlopParameters::has_feasibility_rule()
const {
1287 return _internal_has_feasibility_rule();
1289 inline void GlopParameters::clear_feasibility_rule() {
1290 feasibility_rule_ = 1;
1291 _has_bits_[0] &= ~0x00000008u;
1298 return _internal_feasibility_rule();
1302 _has_bits_[0] |= 0x00000008u;
1303 feasibility_rule_ =
value;
1306 _internal_set_feasibility_rule(
value);
1311 inline bool GlopParameters::_internal_has_optimization_rule()
const {
1312 bool value = (_has_bits_[0] & 0x00000010u) != 0;
1315 inline bool GlopParameters::has_optimization_rule()
const {
1316 return _internal_has_optimization_rule();
1318 inline void GlopParameters::clear_optimization_rule() {
1319 optimization_rule_ = 1;
1320 _has_bits_[0] &= ~0x00000010u;
1327 return _internal_optimization_rule();
1331 _has_bits_[0] |= 0x00000010u;
1332 optimization_rule_ =
value;
1335 _internal_set_optimization_rule(
value);
1340 inline bool GlopParameters::_internal_has_normalize_using_column_norm()
const {
1341 bool value = (_has_bits_[0] & 0x00000800u) != 0;
1344 inline bool GlopParameters::has_normalize_using_column_norm()
const {
1345 return _internal_has_normalize_using_column_norm();
1347 inline void GlopParameters::clear_normalize_using_column_norm() {
1348 normalize_using_column_norm_ =
true;
1349 _has_bits_[0] &= ~0x00000800u;
1351 inline bool GlopParameters::_internal_normalize_using_column_norm()
const {
1352 return normalize_using_column_norm_;
1354 inline bool GlopParameters::normalize_using_column_norm()
const {
1356 return _internal_normalize_using_column_norm();
1358 inline void GlopParameters::_internal_set_normalize_using_column_norm(
bool value) {
1359 _has_bits_[0] |= 0x00000800u;
1360 normalize_using_column_norm_ =
value;
1362 inline void GlopParameters::set_normalize_using_column_norm(
bool value) {
1363 _internal_set_normalize_using_column_norm(
value);
1368 inline bool GlopParameters::_internal_has_use_nested_pricing()
const {
1369 bool value = (_has_bits_[0] & 0x00001000u) != 0;
1372 inline bool GlopParameters::has_use_nested_pricing()
const {
1373 return _internal_has_use_nested_pricing();
1375 inline void GlopParameters::clear_use_nested_pricing() {
1376 use_nested_pricing_ =
true;
1377 _has_bits_[0] &= ~0x00001000u;
1379 inline bool GlopParameters::_internal_use_nested_pricing()
const {
1380 return use_nested_pricing_;
1382 inline bool GlopParameters::use_nested_pricing()
const {
1384 return _internal_use_nested_pricing();
1386 inline void GlopParameters::_internal_set_use_nested_pricing(
bool value) {
1387 _has_bits_[0] |= 0x00001000u;
1388 use_nested_pricing_ =
value;
1390 inline void GlopParameters::set_use_nested_pricing(
bool value) {
1391 _internal_set_use_nested_pricing(
value);
1396 inline bool GlopParameters::_internal_has_refactorization_threshold()
const {
1397 bool value = (_has_bits_[0] & 0x00000020u) != 0;
1400 inline bool GlopParameters::has_refactorization_threshold()
const {
1401 return _internal_has_refactorization_threshold();
1403 inline void GlopParameters::clear_refactorization_threshold() {
1404 refactorization_threshold_ = 1e-09;
1405 _has_bits_[0] &= ~0x00000020u;
1407 inline double GlopParameters::_internal_refactorization_threshold()
const {
1408 return refactorization_threshold_;
1410 inline double GlopParameters::refactorization_threshold()
const {
1412 return _internal_refactorization_threshold();
1414 inline void GlopParameters::_internal_set_refactorization_threshold(
double value) {
1415 _has_bits_[0] |= 0x00000020u;
1416 refactorization_threshold_ =
value;
1418 inline void GlopParameters::set_refactorization_threshold(
double value) {
1419 _internal_set_refactorization_threshold(
value);
1424 inline bool GlopParameters::_internal_has_recompute_reduced_costs_threshold()
const {
1425 bool value = (_has_bits_[0] & 0x00000040u) != 0;
1428 inline bool GlopParameters::has_recompute_reduced_costs_threshold()
const {
1429 return _internal_has_recompute_reduced_costs_threshold();
1431 inline void GlopParameters::clear_recompute_reduced_costs_threshold() {
1432 recompute_reduced_costs_threshold_ = 1e-08;
1433 _has_bits_[0] &= ~0x00000040u;
1435 inline double GlopParameters::_internal_recompute_reduced_costs_threshold()
const {
1436 return recompute_reduced_costs_threshold_;
1438 inline double GlopParameters::recompute_reduced_costs_threshold()
const {
1440 return _internal_recompute_reduced_costs_threshold();
1442 inline void GlopParameters::_internal_set_recompute_reduced_costs_threshold(
double value) {
1443 _has_bits_[0] |= 0x00000040u;
1444 recompute_reduced_costs_threshold_ =
value;
1446 inline void GlopParameters::set_recompute_reduced_costs_threshold(
double value) {
1447 _internal_set_recompute_reduced_costs_threshold(
value);
1452 inline bool GlopParameters::_internal_has_recompute_edges_norm_threshold()
const {
1453 bool value = (_has_bits_[0] & 0x00000080u) != 0;
1456 inline bool GlopParameters::has_recompute_edges_norm_threshold()
const {
1457 return _internal_has_recompute_edges_norm_threshold();
1459 inline void GlopParameters::clear_recompute_edges_norm_threshold() {
1460 recompute_edges_norm_threshold_ = 100;
1461 _has_bits_[0] &= ~0x00000080u;
1463 inline double GlopParameters::_internal_recompute_edges_norm_threshold()
const {
1464 return recompute_edges_norm_threshold_;
1466 inline double GlopParameters::recompute_edges_norm_threshold()
const {
1468 return _internal_recompute_edges_norm_threshold();
1470 inline void GlopParameters::_internal_set_recompute_edges_norm_threshold(
double value) {
1471 _has_bits_[0] |= 0x00000080u;
1472 recompute_edges_norm_threshold_ =
value;
1474 inline void GlopParameters::set_recompute_edges_norm_threshold(
double value) {
1475 _internal_set_recompute_edges_norm_threshold(
value);
1480 inline bool GlopParameters::_internal_has_primal_feasibility_tolerance()
const {
1481 bool value = (_has_bits_[0] & 0x00000100u) != 0;
1484 inline bool GlopParameters::has_primal_feasibility_tolerance()
const {
1485 return _internal_has_primal_feasibility_tolerance();
1487 inline void GlopParameters::clear_primal_feasibility_tolerance() {
1488 primal_feasibility_tolerance_ = 1e-08;
1489 _has_bits_[0] &= ~0x00000100u;
1491 inline double GlopParameters::_internal_primal_feasibility_tolerance()
const {
1492 return primal_feasibility_tolerance_;
1494 inline double GlopParameters::primal_feasibility_tolerance()
const {
1496 return _internal_primal_feasibility_tolerance();
1498 inline void GlopParameters::_internal_set_primal_feasibility_tolerance(
double value) {
1499 _has_bits_[0] |= 0x00000100u;
1500 primal_feasibility_tolerance_ =
value;
1502 inline void GlopParameters::set_primal_feasibility_tolerance(
double value) {
1503 _internal_set_primal_feasibility_tolerance(
value);
1508 inline bool GlopParameters::_internal_has_dual_feasibility_tolerance()
const {
1509 bool value = (_has_bits_[0] & 0x00000200u) != 0;
1512 inline bool GlopParameters::has_dual_feasibility_tolerance()
const {
1513 return _internal_has_dual_feasibility_tolerance();
1515 inline void GlopParameters::clear_dual_feasibility_tolerance() {
1516 dual_feasibility_tolerance_ = 1e-08;
1517 _has_bits_[0] &= ~0x00000200u;
1519 inline double GlopParameters::_internal_dual_feasibility_tolerance()
const {
1520 return dual_feasibility_tolerance_;
1522 inline double GlopParameters::dual_feasibility_tolerance()
const {
1524 return _internal_dual_feasibility_tolerance();
1526 inline void GlopParameters::_internal_set_dual_feasibility_tolerance(
double value) {
1527 _has_bits_[0] |= 0x00000200u;
1528 dual_feasibility_tolerance_ =
value;
1530 inline void GlopParameters::set_dual_feasibility_tolerance(
double value) {
1531 _internal_set_dual_feasibility_tolerance(
value);
1536 inline bool GlopParameters::_internal_has_ratio_test_zero_threshold()
const {
1537 bool value = (_has_bits_[0] & 0x00000400u) != 0;
1540 inline bool GlopParameters::has_ratio_test_zero_threshold()
const {
1541 return _internal_has_ratio_test_zero_threshold();
1543 inline void GlopParameters::clear_ratio_test_zero_threshold() {
1544 ratio_test_zero_threshold_ = 1e-09;
1545 _has_bits_[0] &= ~0x00000400u;
1547 inline double GlopParameters::_internal_ratio_test_zero_threshold()
const {
1548 return ratio_test_zero_threshold_;
1550 inline double GlopParameters::ratio_test_zero_threshold()
const {
1552 return _internal_ratio_test_zero_threshold();
1554 inline void GlopParameters::_internal_set_ratio_test_zero_threshold(
double value) {
1555 _has_bits_[0] |= 0x00000400u;
1556 ratio_test_zero_threshold_ =
value;
1558 inline void GlopParameters::set_ratio_test_zero_threshold(
double value) {
1559 _internal_set_ratio_test_zero_threshold(
value);
1564 inline bool GlopParameters::_internal_has_harris_tolerance_ratio()
const {
1565 bool value = (_has_bits_[0] & 0x00010000u) != 0;
1568 inline bool GlopParameters::has_harris_tolerance_ratio()
const {
1569 return _internal_has_harris_tolerance_ratio();
1571 inline void GlopParameters::clear_harris_tolerance_ratio() {
1572 harris_tolerance_ratio_ = 0.5;
1573 _has_bits_[0] &= ~0x00010000u;
1575 inline double GlopParameters::_internal_harris_tolerance_ratio()
const {
1576 return harris_tolerance_ratio_;
1578 inline double GlopParameters::harris_tolerance_ratio()
const {
1580 return _internal_harris_tolerance_ratio();
1582 inline void GlopParameters::_internal_set_harris_tolerance_ratio(
double value) {
1583 _has_bits_[0] |= 0x00010000u;
1584 harris_tolerance_ratio_ =
value;
1586 inline void GlopParameters::set_harris_tolerance_ratio(
double value) {
1587 _internal_set_harris_tolerance_ratio(
value);
1592 inline bool GlopParameters::_internal_has_small_pivot_threshold()
const {
1593 bool value = (_has_bits_[0] & 0x00020000u) != 0;
1596 inline bool GlopParameters::has_small_pivot_threshold()
const {
1597 return _internal_has_small_pivot_threshold();
1599 inline void GlopParameters::clear_small_pivot_threshold() {
1600 small_pivot_threshold_ = 1e-06;
1601 _has_bits_[0] &= ~0x00020000u;
1603 inline double GlopParameters::_internal_small_pivot_threshold()
const {
1604 return small_pivot_threshold_;
1606 inline double GlopParameters::small_pivot_threshold()
const {
1608 return _internal_small_pivot_threshold();
1610 inline void GlopParameters::_internal_set_small_pivot_threshold(
double value) {
1611 _has_bits_[0] |= 0x00020000u;
1612 small_pivot_threshold_ =
value;
1614 inline void GlopParameters::set_small_pivot_threshold(
double value) {
1615 _internal_set_small_pivot_threshold(
value);
1620 inline bool GlopParameters::_internal_has_minimum_acceptable_pivot()
const {
1621 bool value = (_has_bits_[0] & 0x00040000u) != 0;
1624 inline bool GlopParameters::has_minimum_acceptable_pivot()
const {
1625 return _internal_has_minimum_acceptable_pivot();
1627 inline void GlopParameters::clear_minimum_acceptable_pivot() {
1628 minimum_acceptable_pivot_ = 1e-06;
1629 _has_bits_[0] &= ~0x00040000u;
1631 inline double GlopParameters::_internal_minimum_acceptable_pivot()
const {
1632 return minimum_acceptable_pivot_;
1634 inline double GlopParameters::minimum_acceptable_pivot()
const {
1636 return _internal_minimum_acceptable_pivot();
1638 inline void GlopParameters::_internal_set_minimum_acceptable_pivot(
double value) {
1639 _has_bits_[0] |= 0x00040000u;
1640 minimum_acceptable_pivot_ =
value;
1642 inline void GlopParameters::set_minimum_acceptable_pivot(
double value) {
1643 _internal_set_minimum_acceptable_pivot(
value);
1648 inline bool GlopParameters::_internal_has_drop_tolerance()
const {
1649 bool value = (_has_bits_[1] & 0x00000800u) != 0;
1652 inline bool GlopParameters::has_drop_tolerance()
const {
1653 return _internal_has_drop_tolerance();
1655 inline void GlopParameters::clear_drop_tolerance() {
1656 drop_tolerance_ = 1e-14;
1657 _has_bits_[1] &= ~0x00000800u;
1659 inline double GlopParameters::_internal_drop_tolerance()
const {
1660 return drop_tolerance_;
1662 inline double GlopParameters::drop_tolerance()
const {
1664 return _internal_drop_tolerance();
1666 inline void GlopParameters::_internal_set_drop_tolerance(
double value) {
1667 _has_bits_[1] |= 0x00000800u;
1668 drop_tolerance_ =
value;
1670 inline void GlopParameters::set_drop_tolerance(
double value) {
1671 _internal_set_drop_tolerance(
value);
1676 inline bool GlopParameters::_internal_has_use_scaling()
const {
1677 bool value = (_has_bits_[0] & 0x00002000u) != 0;
1680 inline bool GlopParameters::has_use_scaling()
const {
1681 return _internal_has_use_scaling();
1683 inline void GlopParameters::clear_use_scaling() {
1684 use_scaling_ =
true;
1685 _has_bits_[0] &= ~0x00002000u;
1687 inline bool GlopParameters::_internal_use_scaling()
const {
1688 return use_scaling_;
1690 inline bool GlopParameters::use_scaling()
const {
1692 return _internal_use_scaling();
1694 inline void GlopParameters::_internal_set_use_scaling(
bool value) {
1695 _has_bits_[0] |= 0x00002000u;
1696 use_scaling_ =
value;
1698 inline void GlopParameters::set_use_scaling(
bool value) {
1699 _internal_set_use_scaling(
value);
1704 inline bool GlopParameters::_internal_has_cost_scaling()
const {
1705 bool value = (_has_bits_[1] & 0x00010000u) != 0;
1708 inline bool GlopParameters::has_cost_scaling()
const {
1709 return _internal_has_cost_scaling();
1711 inline void GlopParameters::clear_cost_scaling() {
1713 _has_bits_[1] &= ~0x00010000u;
1720 return _internal_cost_scaling();
1724 _has_bits_[1] |= 0x00010000u;
1725 cost_scaling_ =
value;
1728 _internal_set_cost_scaling(
value);
1733 inline bool GlopParameters::_internal_has_initial_basis()
const {
1734 bool value = (_has_bits_[0] & 0x00008000u) != 0;
1737 inline bool GlopParameters::has_initial_basis()
const {
1738 return _internal_has_initial_basis();
1740 inline void GlopParameters::clear_initial_basis() {
1742 _has_bits_[0] &= ~0x00008000u;
1749 return _internal_initial_basis();
1753 _has_bits_[0] |= 0x00008000u;
1754 initial_basis_ =
value;
1757 _internal_set_initial_basis(
value);
1762 inline bool GlopParameters::_internal_has_use_transposed_matrix()
const {
1763 bool value = (_has_bits_[0] & 0x00004000u) != 0;
1766 inline bool GlopParameters::has_use_transposed_matrix()
const {
1767 return _internal_has_use_transposed_matrix();
1769 inline void GlopParameters::clear_use_transposed_matrix() {
1770 use_transposed_matrix_ =
true;
1771 _has_bits_[0] &= ~0x00004000u;
1773 inline bool GlopParameters::_internal_use_transposed_matrix()
const {
1774 return use_transposed_matrix_;
1776 inline bool GlopParameters::use_transposed_matrix()
const {
1778 return _internal_use_transposed_matrix();
1780 inline void GlopParameters::_internal_set_use_transposed_matrix(
bool value) {
1781 _has_bits_[0] |= 0x00004000u;
1782 use_transposed_matrix_ =
value;
1784 inline void GlopParameters::set_use_transposed_matrix(
bool value) {
1785 _internal_set_use_transposed_matrix(
value);
1790 inline bool GlopParameters::_internal_has_basis_refactorization_period()
const {
1791 bool value = (_has_bits_[0] & 0x00080000u) != 0;
1794 inline bool GlopParameters::has_basis_refactorization_period()
const {
1795 return _internal_has_basis_refactorization_period();
1797 inline void GlopParameters::clear_basis_refactorization_period() {
1798 basis_refactorization_period_ = 64;
1799 _has_bits_[0] &= ~0x00080000u;
1802 return basis_refactorization_period_;
1806 return _internal_basis_refactorization_period();
1809 _has_bits_[0] |= 0x00080000u;
1810 basis_refactorization_period_ =
value;
1813 _internal_set_basis_refactorization_period(
value);
1818 inline bool GlopParameters::_internal_has_solve_dual_problem()
const {
1819 bool value = (_has_bits_[0] & 0x00100000u) != 0;
1822 inline bool GlopParameters::has_solve_dual_problem()
const {
1823 return _internal_has_solve_dual_problem();
1825 inline void GlopParameters::clear_solve_dual_problem() {
1826 solve_dual_problem_ = 2;
1827 _has_bits_[0] &= ~0x00100000u;
1834 return _internal_solve_dual_problem();
1838 _has_bits_[0] |= 0x00100000u;
1839 solve_dual_problem_ =
value;
1842 _internal_set_solve_dual_problem(
value);
1847 inline bool GlopParameters::_internal_has_dualizer_threshold()
const {
1848 bool value = (_has_bits_[0] & 0x00200000u) != 0;
1851 inline bool GlopParameters::has_dualizer_threshold()
const {
1852 return _internal_has_dualizer_threshold();
1854 inline void GlopParameters::clear_dualizer_threshold() {
1855 dualizer_threshold_ = 1.5;
1856 _has_bits_[0] &= ~0x00200000u;
1858 inline double GlopParameters::_internal_dualizer_threshold()
const {
1859 return dualizer_threshold_;
1861 inline double GlopParameters::dualizer_threshold()
const {
1863 return _internal_dualizer_threshold();
1865 inline void GlopParameters::_internal_set_dualizer_threshold(
double value) {
1866 _has_bits_[0] |= 0x00200000u;
1867 dualizer_threshold_ =
value;
1869 inline void GlopParameters::set_dualizer_threshold(
double value) {
1870 _internal_set_dualizer_threshold(
value);
1875 inline bool GlopParameters::_internal_has_solution_feasibility_tolerance()
const {
1876 bool value = (_has_bits_[0] & 0x00400000u) != 0;
1879 inline bool GlopParameters::has_solution_feasibility_tolerance()
const {
1880 return _internal_has_solution_feasibility_tolerance();
1882 inline void GlopParameters::clear_solution_feasibility_tolerance() {
1883 solution_feasibility_tolerance_ = 1e-06;
1884 _has_bits_[0] &= ~0x00400000u;
1886 inline double GlopParameters::_internal_solution_feasibility_tolerance()
const {
1887 return solution_feasibility_tolerance_;
1889 inline double GlopParameters::solution_feasibility_tolerance()
const {
1891 return _internal_solution_feasibility_tolerance();
1893 inline void GlopParameters::_internal_set_solution_feasibility_tolerance(
double value) {
1894 _has_bits_[0] |= 0x00400000u;
1895 solution_feasibility_tolerance_ =
value;
1897 inline void GlopParameters::set_solution_feasibility_tolerance(
double value) {
1898 _internal_set_solution_feasibility_tolerance(
value);
1903 inline bool GlopParameters::_internal_has_provide_strong_optimal_guarantee()
const {
1904 bool value = (_has_bits_[0] & 0x80000000u) != 0;
1907 inline bool GlopParameters::has_provide_strong_optimal_guarantee()
const {
1908 return _internal_has_provide_strong_optimal_guarantee();
1910 inline void GlopParameters::clear_provide_strong_optimal_guarantee() {
1911 provide_strong_optimal_guarantee_ =
true;
1912 _has_bits_[0] &= ~0x80000000u;
1914 inline bool GlopParameters::_internal_provide_strong_optimal_guarantee()
const {
1915 return provide_strong_optimal_guarantee_;
1917 inline bool GlopParameters::provide_strong_optimal_guarantee()
const {
1919 return _internal_provide_strong_optimal_guarantee();
1921 inline void GlopParameters::_internal_set_provide_strong_optimal_guarantee(
bool value) {
1922 _has_bits_[0] |= 0x80000000u;
1923 provide_strong_optimal_guarantee_ =
value;
1925 inline void GlopParameters::set_provide_strong_optimal_guarantee(
bool value) {
1926 _internal_set_provide_strong_optimal_guarantee(
value);
1931 inline bool GlopParameters::_internal_has_change_status_to_imprecise()
const {
1932 bool value = (_has_bits_[1] & 0x00000001u) != 0;
1935 inline bool GlopParameters::has_change_status_to_imprecise()
const {
1936 return _internal_has_change_status_to_imprecise();
1938 inline void GlopParameters::clear_change_status_to_imprecise() {
1939 change_status_to_imprecise_ =
true;
1940 _has_bits_[1] &= ~0x00000001u;
1942 inline bool GlopParameters::_internal_change_status_to_imprecise()
const {
1943 return change_status_to_imprecise_;
1945 inline bool GlopParameters::change_status_to_imprecise()
const {
1947 return _internal_change_status_to_imprecise();
1949 inline void GlopParameters::_internal_set_change_status_to_imprecise(
bool value) {
1950 _has_bits_[1] |= 0x00000001u;
1951 change_status_to_imprecise_ =
value;
1953 inline void GlopParameters::set_change_status_to_imprecise(
bool value) {
1954 _internal_set_change_status_to_imprecise(
value);
1959 inline bool GlopParameters::_internal_has_max_number_of_reoptimizations()
const {
1960 bool value = (_has_bits_[1] & 0x00004000u) != 0;
1963 inline bool GlopParameters::has_max_number_of_reoptimizations()
const {
1964 return _internal_has_max_number_of_reoptimizations();
1966 inline void GlopParameters::clear_max_number_of_reoptimizations() {
1967 max_number_of_reoptimizations_ = 40;
1968 _has_bits_[1] &= ~0x00004000u;
1970 inline double GlopParameters::_internal_max_number_of_reoptimizations()
const {
1971 return max_number_of_reoptimizations_;
1973 inline double GlopParameters::max_number_of_reoptimizations()
const {
1975 return _internal_max_number_of_reoptimizations();
1977 inline void GlopParameters::_internal_set_max_number_of_reoptimizations(
double value) {
1978 _has_bits_[1] |= 0x00004000u;
1979 max_number_of_reoptimizations_ =
value;
1981 inline void GlopParameters::set_max_number_of_reoptimizations(
double value) {
1982 _internal_set_max_number_of_reoptimizations(
value);
1987 inline bool GlopParameters::_internal_has_lu_factorization_pivot_threshold()
const {
1988 bool value = (_has_bits_[0] & 0x00800000u) != 0;
1991 inline bool GlopParameters::has_lu_factorization_pivot_threshold()
const {
1992 return _internal_has_lu_factorization_pivot_threshold();
1994 inline void GlopParameters::clear_lu_factorization_pivot_threshold() {
1995 lu_factorization_pivot_threshold_ = 0.01;
1996 _has_bits_[0] &= ~0x00800000u;
1998 inline double GlopParameters::_internal_lu_factorization_pivot_threshold()
const {
1999 return lu_factorization_pivot_threshold_;
2001 inline double GlopParameters::lu_factorization_pivot_threshold()
const {
2003 return _internal_lu_factorization_pivot_threshold();
2005 inline void GlopParameters::_internal_set_lu_factorization_pivot_threshold(
double value) {
2006 _has_bits_[0] |= 0x00800000u;
2007 lu_factorization_pivot_threshold_ =
value;
2009 inline void GlopParameters::set_lu_factorization_pivot_threshold(
double value) {
2010 _internal_set_lu_factorization_pivot_threshold(
value);
2015 inline bool GlopParameters::_internal_has_max_time_in_seconds()
const {
2016 bool value = (_has_bits_[0] & 0x01000000u) != 0;
2019 inline bool GlopParameters::has_max_time_in_seconds()
const {
2020 return _internal_has_max_time_in_seconds();
2022 inline void GlopParameters::clear_max_time_in_seconds() {
2023 max_time_in_seconds_ = std::numeric_limits<double>::infinity();
2024 _has_bits_[0] &= ~0x01000000u;
2026 inline double GlopParameters::_internal_max_time_in_seconds()
const {
2027 return max_time_in_seconds_;
2029 inline double GlopParameters::max_time_in_seconds()
const {
2031 return _internal_max_time_in_seconds();
2033 inline void GlopParameters::_internal_set_max_time_in_seconds(
double value) {
2034 _has_bits_[0] |= 0x01000000u;
2035 max_time_in_seconds_ =
value;
2037 inline void GlopParameters::set_max_time_in_seconds(
double value) {
2038 _internal_set_max_time_in_seconds(
value);
2043 inline bool GlopParameters::_internal_has_max_deterministic_time()
const {
2044 bool value = (_has_bits_[1] & 0x00000400u) != 0;
2047 inline bool GlopParameters::has_max_deterministic_time()
const {
2048 return _internal_has_max_deterministic_time();
2050 inline void GlopParameters::clear_max_deterministic_time() {
2051 max_deterministic_time_ = std::numeric_limits<double>::infinity();
2052 _has_bits_[1] &= ~0x00000400u;
2054 inline double GlopParameters::_internal_max_deterministic_time()
const {
2055 return max_deterministic_time_;
2057 inline double GlopParameters::max_deterministic_time()
const {
2059 return _internal_max_deterministic_time();
2061 inline void GlopParameters::_internal_set_max_deterministic_time(
double value) {
2062 _has_bits_[1] |= 0x00000400u;
2063 max_deterministic_time_ =
value;
2065 inline void GlopParameters::set_max_deterministic_time(
double value) {
2066 _internal_set_max_deterministic_time(
value);
2071 inline bool GlopParameters::_internal_has_max_number_of_iterations()
const {
2072 bool value = (_has_bits_[0] & 0x02000000u) != 0;
2075 inline bool GlopParameters::has_max_number_of_iterations()
const {
2076 return _internal_has_max_number_of_iterations();
2078 inline void GlopParameters::clear_max_number_of_iterations() {
2079 max_number_of_iterations_ = PROTOBUF_LONGLONG(-1);
2080 _has_bits_[0] &= ~0x02000000u;
2083 return max_number_of_iterations_;
2087 return _internal_max_number_of_iterations();
2090 _has_bits_[0] |= 0x02000000u;
2091 max_number_of_iterations_ =
value;
2094 _internal_set_max_number_of_iterations(
value);
2099 inline bool GlopParameters::_internal_has_markowitz_zlatev_parameter()
const {
2100 bool value = (_has_bits_[0] & 0x08000000u) != 0;
2103 inline bool GlopParameters::has_markowitz_zlatev_parameter()
const {
2104 return _internal_has_markowitz_zlatev_parameter();
2106 inline void GlopParameters::clear_markowitz_zlatev_parameter() {
2107 markowitz_zlatev_parameter_ = 3;
2108 _has_bits_[0] &= ~0x08000000u;
2111 return markowitz_zlatev_parameter_;
2115 return _internal_markowitz_zlatev_parameter();
2118 _has_bits_[0] |= 0x08000000u;
2119 markowitz_zlatev_parameter_ =
value;
2122 _internal_set_markowitz_zlatev_parameter(
value);
2127 inline bool GlopParameters::_internal_has_markowitz_singularity_threshold()
const {
2128 bool value = (_has_bits_[0] & 0x04000000u) != 0;
2131 inline bool GlopParameters::has_markowitz_singularity_threshold()
const {
2132 return _internal_has_markowitz_singularity_threshold();
2134 inline void GlopParameters::clear_markowitz_singularity_threshold() {
2135 markowitz_singularity_threshold_ = 1e-15;
2136 _has_bits_[0] &= ~0x04000000u;
2138 inline double GlopParameters::_internal_markowitz_singularity_threshold()
const {
2139 return markowitz_singularity_threshold_;
2141 inline double GlopParameters::markowitz_singularity_threshold()
const {
2143 return _internal_markowitz_singularity_threshold();
2145 inline void GlopParameters::_internal_set_markowitz_singularity_threshold(
double value) {
2146 _has_bits_[0] |= 0x04000000u;
2147 markowitz_singularity_threshold_ =
value;
2149 inline void GlopParameters::set_markowitz_singularity_threshold(
double value) {
2150 _internal_set_markowitz_singularity_threshold(
value);
2155 inline bool GlopParameters::_internal_has_use_dual_simplex()
const {
2156 bool value = (_has_bits_[0] & 0x00000001u) != 0;
2159 inline bool GlopParameters::has_use_dual_simplex()
const {
2160 return _internal_has_use_dual_simplex();
2162 inline void GlopParameters::clear_use_dual_simplex() {
2163 use_dual_simplex_ =
false;
2164 _has_bits_[0] &= ~0x00000001u;
2166 inline bool GlopParameters::_internal_use_dual_simplex()
const {
2167 return use_dual_simplex_;
2169 inline bool GlopParameters::use_dual_simplex()
const {
2171 return _internal_use_dual_simplex();
2173 inline void GlopParameters::_internal_set_use_dual_simplex(
bool value) {
2174 _has_bits_[0] |= 0x00000001u;
2175 use_dual_simplex_ =
value;
2177 inline void GlopParameters::set_use_dual_simplex(
bool value) {
2178 _internal_set_use_dual_simplex(
value);
2183 inline bool GlopParameters::_internal_has_allow_simplex_algorithm_change()
const {
2184 bool value = (_has_bits_[0] & 0x00000002u) != 0;
2187 inline bool GlopParameters::has_allow_simplex_algorithm_change()
const {
2188 return _internal_has_allow_simplex_algorithm_change();
2190 inline void GlopParameters::clear_allow_simplex_algorithm_change() {
2191 allow_simplex_algorithm_change_ =
false;
2192 _has_bits_[0] &= ~0x00000002u;
2194 inline bool GlopParameters::_internal_allow_simplex_algorithm_change()
const {
2195 return allow_simplex_algorithm_change_;
2197 inline bool GlopParameters::allow_simplex_algorithm_change()
const {
2199 return _internal_allow_simplex_algorithm_change();
2201 inline void GlopParameters::_internal_set_allow_simplex_algorithm_change(
bool value) {
2202 _has_bits_[0] |= 0x00000002u;
2203 allow_simplex_algorithm_change_ =
value;
2205 inline void GlopParameters::set_allow_simplex_algorithm_change(
bool value) {
2206 _internal_set_allow_simplex_algorithm_change(
value);
2211 inline bool GlopParameters::_internal_has_devex_weights_reset_period()
const {
2212 bool value = (_has_bits_[0] & 0x10000000u) != 0;
2215 inline bool GlopParameters::has_devex_weights_reset_period()
const {
2216 return _internal_has_devex_weights_reset_period();
2218 inline void GlopParameters::clear_devex_weights_reset_period() {
2219 devex_weights_reset_period_ = 150;
2220 _has_bits_[0] &= ~0x10000000u;
2223 return devex_weights_reset_period_;
2227 return _internal_devex_weights_reset_period();
2230 _has_bits_[0] |= 0x10000000u;
2231 devex_weights_reset_period_ =
value;
2234 _internal_set_devex_weights_reset_period(
value);
2239 inline bool GlopParameters::_internal_has_use_preprocessing()
const {
2240 bool value = (_has_bits_[1] & 0x00000002u) != 0;
2243 inline bool GlopParameters::has_use_preprocessing()
const {
2244 return _internal_has_use_preprocessing();
2246 inline void GlopParameters::clear_use_preprocessing() {
2247 use_preprocessing_ =
true;
2248 _has_bits_[1] &= ~0x00000002u;
2250 inline bool GlopParameters::_internal_use_preprocessing()
const {
2251 return use_preprocessing_;
2253 inline bool GlopParameters::use_preprocessing()
const {
2255 return _internal_use_preprocessing();
2257 inline void GlopParameters::_internal_set_use_preprocessing(
bool value) {
2258 _has_bits_[1] |= 0x00000002u;
2259 use_preprocessing_ =
value;
2261 inline void GlopParameters::set_use_preprocessing(
bool value) {
2262 _internal_set_use_preprocessing(
value);
2267 inline bool GlopParameters::_internal_has_use_middle_product_form_update()
const {
2268 bool value = (_has_bits_[1] & 0x00000004u) != 0;
2271 inline bool GlopParameters::has_use_middle_product_form_update()
const {
2272 return _internal_has_use_middle_product_form_update();
2274 inline void GlopParameters::clear_use_middle_product_form_update() {
2275 use_middle_product_form_update_ =
true;
2276 _has_bits_[1] &= ~0x00000004u;
2278 inline bool GlopParameters::_internal_use_middle_product_form_update()
const {
2279 return use_middle_product_form_update_;
2281 inline bool GlopParameters::use_middle_product_form_update()
const {
2283 return _internal_use_middle_product_form_update();
2285 inline void GlopParameters::_internal_set_use_middle_product_form_update(
bool value) {
2286 _has_bits_[1] |= 0x00000004u;
2287 use_middle_product_form_update_ =
value;
2289 inline void GlopParameters::set_use_middle_product_form_update(
bool value) {
2290 _internal_set_use_middle_product_form_update(
value);
2295 inline bool GlopParameters::_internal_has_initialize_devex_with_column_norms()
const {
2296 bool value = (_has_bits_[0] & 0x20000000u) != 0;
2299 inline bool GlopParameters::has_initialize_devex_with_column_norms()
const {
2300 return _internal_has_initialize_devex_with_column_norms();
2302 inline void GlopParameters::clear_initialize_devex_with_column_norms() {
2303 initialize_devex_with_column_norms_ =
true;
2304 _has_bits_[0] &= ~0x20000000u;
2306 inline bool GlopParameters::_internal_initialize_devex_with_column_norms()
const {
2307 return initialize_devex_with_column_norms_;
2309 inline bool GlopParameters::initialize_devex_with_column_norms()
const {
2311 return _internal_initialize_devex_with_column_norms();
2313 inline void GlopParameters::_internal_set_initialize_devex_with_column_norms(
bool value) {
2314 _has_bits_[0] |= 0x20000000u;
2315 initialize_devex_with_column_norms_ =
value;
2317 inline void GlopParameters::set_initialize_devex_with_column_norms(
bool value) {
2318 _internal_set_initialize_devex_with_column_norms(
value);
2323 inline bool GlopParameters::_internal_has_exploit_singleton_column_in_initial_basis()
const {
2324 bool value = (_has_bits_[0] & 0x40000000u) != 0;
2327 inline bool GlopParameters::has_exploit_singleton_column_in_initial_basis()
const {
2328 return _internal_has_exploit_singleton_column_in_initial_basis();
2330 inline void GlopParameters::clear_exploit_singleton_column_in_initial_basis() {
2331 exploit_singleton_column_in_initial_basis_ =
true;
2332 _has_bits_[0] &= ~0x40000000u;
2334 inline bool GlopParameters::_internal_exploit_singleton_column_in_initial_basis()
const {
2335 return exploit_singleton_column_in_initial_basis_;
2337 inline bool GlopParameters::exploit_singleton_column_in_initial_basis()
const {
2339 return _internal_exploit_singleton_column_in_initial_basis();
2341 inline void GlopParameters::_internal_set_exploit_singleton_column_in_initial_basis(
bool value) {
2342 _has_bits_[0] |= 0x40000000u;
2343 exploit_singleton_column_in_initial_basis_ =
value;
2345 inline void GlopParameters::set_exploit_singleton_column_in_initial_basis(
bool value) {
2346 _internal_set_exploit_singleton_column_in_initial_basis(
value);
2351 inline bool GlopParameters::_internal_has_dual_small_pivot_threshold()
const {
2352 bool value = (_has_bits_[1] & 0x00000008u) != 0;
2355 inline bool GlopParameters::has_dual_small_pivot_threshold()
const {
2356 return _internal_has_dual_small_pivot_threshold();
2358 inline void GlopParameters::clear_dual_small_pivot_threshold() {
2359 dual_small_pivot_threshold_ = 0.0001;
2360 _has_bits_[1] &= ~0x00000008u;
2362 inline double GlopParameters::_internal_dual_small_pivot_threshold()
const {
2363 return dual_small_pivot_threshold_;
2365 inline double GlopParameters::dual_small_pivot_threshold()
const {
2367 return _internal_dual_small_pivot_threshold();
2369 inline void GlopParameters::_internal_set_dual_small_pivot_threshold(
double value) {
2370 _has_bits_[1] |= 0x00000008u;
2371 dual_small_pivot_threshold_ =
value;
2373 inline void GlopParameters::set_dual_small_pivot_threshold(
double value) {
2374 _internal_set_dual_small_pivot_threshold(
value);
2379 inline bool GlopParameters::_internal_has_preprocessor_zero_tolerance()
const {
2380 bool value = (_has_bits_[1] & 0x00000010u) != 0;
2383 inline bool GlopParameters::has_preprocessor_zero_tolerance()
const {
2384 return _internal_has_preprocessor_zero_tolerance();
2386 inline void GlopParameters::clear_preprocessor_zero_tolerance() {
2387 preprocessor_zero_tolerance_ = 1e-09;
2388 _has_bits_[1] &= ~0x00000010u;
2390 inline double GlopParameters::_internal_preprocessor_zero_tolerance()
const {
2391 return preprocessor_zero_tolerance_;
2393 inline double GlopParameters::preprocessor_zero_tolerance()
const {
2395 return _internal_preprocessor_zero_tolerance();
2397 inline void GlopParameters::_internal_set_preprocessor_zero_tolerance(
double value) {
2398 _has_bits_[1] |= 0x00000010u;
2399 preprocessor_zero_tolerance_ =
value;
2401 inline void GlopParameters::set_preprocessor_zero_tolerance(
double value) {
2402 _internal_set_preprocessor_zero_tolerance(
value);
2407 inline bool GlopParameters::_internal_has_objective_lower_limit()
const {
2408 bool value = (_has_bits_[1] & 0x00000020u) != 0;
2411 inline bool GlopParameters::has_objective_lower_limit()
const {
2412 return _internal_has_objective_lower_limit();
2414 inline void GlopParameters::clear_objective_lower_limit() {
2415 objective_lower_limit_ = -std::numeric_limits<double>::infinity();
2416 _has_bits_[1] &= ~0x00000020u;
2418 inline double GlopParameters::_internal_objective_lower_limit()
const {
2419 return objective_lower_limit_;
2421 inline double GlopParameters::objective_lower_limit()
const {
2423 return _internal_objective_lower_limit();
2425 inline void GlopParameters::_internal_set_objective_lower_limit(
double value) {
2426 _has_bits_[1] |= 0x00000020u;
2427 objective_lower_limit_ =
value;
2429 inline void GlopParameters::set_objective_lower_limit(
double value) {
2430 _internal_set_objective_lower_limit(
value);
2435 inline bool GlopParameters::_internal_has_objective_upper_limit()
const {
2436 bool value = (_has_bits_[1] & 0x00000040u) != 0;
2439 inline bool GlopParameters::has_objective_upper_limit()
const {
2440 return _internal_has_objective_upper_limit();
2442 inline void GlopParameters::clear_objective_upper_limit() {
2443 objective_upper_limit_ = std::numeric_limits<double>::infinity();
2444 _has_bits_[1] &= ~0x00000040u;
2446 inline double GlopParameters::_internal_objective_upper_limit()
const {
2447 return objective_upper_limit_;
2449 inline double GlopParameters::objective_upper_limit()
const {
2451 return _internal_objective_upper_limit();
2453 inline void GlopParameters::_internal_set_objective_upper_limit(
double value) {
2454 _has_bits_[1] |= 0x00000040u;
2455 objective_upper_limit_ =
value;
2457 inline void GlopParameters::set_objective_upper_limit(
double value) {
2458 _internal_set_objective_upper_limit(
value);
2463 inline bool GlopParameters::_internal_has_degenerate_ministep_factor()
const {
2464 bool value = (_has_bits_[1] & 0x00000080u) != 0;
2467 inline bool GlopParameters::has_degenerate_ministep_factor()
const {
2468 return _internal_has_degenerate_ministep_factor();
2470 inline void GlopParameters::clear_degenerate_ministep_factor() {
2471 degenerate_ministep_factor_ = 0.01;
2472 _has_bits_[1] &= ~0x00000080u;
2474 inline double GlopParameters::_internal_degenerate_ministep_factor()
const {
2475 return degenerate_ministep_factor_;
2477 inline double GlopParameters::degenerate_ministep_factor()
const {
2479 return _internal_degenerate_ministep_factor();
2481 inline void GlopParameters::_internal_set_degenerate_ministep_factor(
double value) {
2482 _has_bits_[1] |= 0x00000080u;
2483 degenerate_ministep_factor_ =
value;
2485 inline void GlopParameters::set_degenerate_ministep_factor(
double value) {
2486 _internal_set_degenerate_ministep_factor(
value);
2491 inline bool GlopParameters::_internal_has_random_seed()
const {
2492 bool value = (_has_bits_[1] & 0x00000100u) != 0;
2495 inline bool GlopParameters::has_random_seed()
const {
2496 return _internal_has_random_seed();
2498 inline void GlopParameters::clear_random_seed() {
2500 _has_bits_[1] &= ~0x00000100u;
2503 return random_seed_;
2507 return _internal_random_seed();
2510 _has_bits_[1] |= 0x00000100u;
2511 random_seed_ =
value;
2514 _internal_set_random_seed(
value);
2519 inline bool GlopParameters::_internal_has_num_omp_threads()
const {
2520 bool value = (_has_bits_[1] & 0x00000200u) != 0;
2523 inline bool GlopParameters::has_num_omp_threads()
const {
2524 return _internal_has_num_omp_threads();
2526 inline void GlopParameters::clear_num_omp_threads() {
2527 num_omp_threads_ = 1;
2528 _has_bits_[1] &= ~0x00000200u;
2531 return num_omp_threads_;
2535 return _internal_num_omp_threads();
2538 _has_bits_[1] |= 0x00000200u;
2539 num_omp_threads_ =
value;
2542 _internal_set_num_omp_threads(
value);
2547 inline bool GlopParameters::_internal_has_perturb_costs_in_dual_simplex()
const {
2548 bool value = (_has_bits_[0] & 0x00000004u) != 0;
2551 inline bool GlopParameters::has_perturb_costs_in_dual_simplex()
const {
2552 return _internal_has_perturb_costs_in_dual_simplex();
2554 inline void GlopParameters::clear_perturb_costs_in_dual_simplex() {
2555 perturb_costs_in_dual_simplex_ =
false;
2556 _has_bits_[0] &= ~0x00000004u;
2558 inline bool GlopParameters::_internal_perturb_costs_in_dual_simplex()
const {
2559 return perturb_costs_in_dual_simplex_;
2561 inline bool GlopParameters::perturb_costs_in_dual_simplex()
const {
2563 return _internal_perturb_costs_in_dual_simplex();
2565 inline void GlopParameters::_internal_set_perturb_costs_in_dual_simplex(
bool value) {
2566 _has_bits_[0] |= 0x00000004u;
2567 perturb_costs_in_dual_simplex_ =
value;
2569 inline void GlopParameters::set_perturb_costs_in_dual_simplex(
bool value) {
2570 _internal_set_perturb_costs_in_dual_simplex(
value);
2575 inline bool GlopParameters::_internal_has_relative_cost_perturbation()
const {
2576 bool value = (_has_bits_[1] & 0x00001000u) != 0;
2579 inline bool GlopParameters::has_relative_cost_perturbation()
const {
2580 return _internal_has_relative_cost_perturbation();
2582 inline void GlopParameters::clear_relative_cost_perturbation() {
2583 relative_cost_perturbation_ = 1e-05;
2584 _has_bits_[1] &= ~0x00001000u;
2586 inline double GlopParameters::_internal_relative_cost_perturbation()
const {
2587 return relative_cost_perturbation_;
2589 inline double GlopParameters::relative_cost_perturbation()
const {
2591 return _internal_relative_cost_perturbation();
2593 inline void GlopParameters::_internal_set_relative_cost_perturbation(
double value) {
2594 _has_bits_[1] |= 0x00001000u;
2595 relative_cost_perturbation_ =
value;
2597 inline void GlopParameters::set_relative_cost_perturbation(
double value) {
2598 _internal_set_relative_cost_perturbation(
value);
2603 inline bool GlopParameters::_internal_has_relative_max_cost_perturbation()
const {
2604 bool value = (_has_bits_[1] & 0x00002000u) != 0;
2607 inline bool GlopParameters::has_relative_max_cost_perturbation()
const {
2608 return _internal_has_relative_max_cost_perturbation();
2610 inline void GlopParameters::clear_relative_max_cost_perturbation() {
2611 relative_max_cost_perturbation_ = 1e-07;
2612 _has_bits_[1] &= ~0x00002000u;
2614 inline double GlopParameters::_internal_relative_max_cost_perturbation()
const {
2615 return relative_max_cost_perturbation_;
2617 inline double GlopParameters::relative_max_cost_perturbation()
const {
2619 return _internal_relative_max_cost_perturbation();
2621 inline void GlopParameters::_internal_set_relative_max_cost_perturbation(
double value) {
2622 _has_bits_[1] |= 0x00002000u;
2623 relative_max_cost_perturbation_ =
value;
2625 inline void GlopParameters::set_relative_max_cost_perturbation(
double value) {
2626 _internal_set_relative_max_cost_perturbation(
value);
2631 inline bool GlopParameters::_internal_has_initial_condition_number_threshold()
const {
2632 bool value = (_has_bits_[1] & 0x00020000u) != 0;
2635 inline bool GlopParameters::has_initial_condition_number_threshold()
const {
2636 return _internal_has_initial_condition_number_threshold();
2638 inline void GlopParameters::clear_initial_condition_number_threshold() {
2639 initial_condition_number_threshold_ = 1e+50;
2640 _has_bits_[1] &= ~0x00020000u;
2642 inline double GlopParameters::_internal_initial_condition_number_threshold()
const {
2643 return initial_condition_number_threshold_;
2645 inline double GlopParameters::initial_condition_number_threshold()
const {
2647 return _internal_initial_condition_number_threshold();
2649 inline void GlopParameters::_internal_set_initial_condition_number_threshold(
double value) {
2650 _has_bits_[1] |= 0x00020000u;
2651 initial_condition_number_threshold_ =
value;
2653 inline void GlopParameters::set_initial_condition_number_threshold(
double value) {
2654 _internal_set_initial_condition_number_threshold(
value);
2659 #pragma GCC diagnostic pop
2667 PROTOBUF_NAMESPACE_OPEN
2671 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::glop::GlopParameters_ScalingAlgorithm>() {
2676 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::glop::GlopParameters_SolverBehavior>() {
2681 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::glop::GlopParameters_PricingRule>() {
2686 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::glop::GlopParameters_InitialBasisHeuristic>() {
2691 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::glop::GlopParameters_CostScalingAlgorithm>() {
2695 PROTOBUF_NAMESPACE_CLOSE
2699 #include <google/protobuf/port_undef.inc>
2700 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fglop_2fparameters_2eproto