Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
TerminationCriteria.java
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: ortools/pdlp/solvers.proto
3
4// Protobuf Java Version: 4.26.1
5package com.google.ortools.pdlp;
6
23public final class TerminationCriteria extends
24 com.google.protobuf.GeneratedMessage implements
25 // @@protoc_insertion_point(message_implements:operations_research.pdlp.TerminationCriteria)
27private static final long serialVersionUID = 0L;
28 static {
29 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
30 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
31 /* major= */ 4,
32 /* minor= */ 26,
33 /* patch= */ 1,
34 /* suffix= */ "",
35 TerminationCriteria.class.getName());
36 }
37 // Use TerminationCriteria.newBuilder() to construct.
38 private TerminationCriteria(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
39 super(builder);
40 }
41 private TerminationCriteria() {
42 optimalityNorm_ = 2;
43 epsOptimalAbsolute_ = 1e-06D;
44 epsOptimalRelative_ = 1e-06D;
45 epsPrimalInfeasible_ = 1e-08D;
46 epsDualInfeasible_ = 1e-08D;
47 timeSecLimit_ = Double.POSITIVE_INFINITY;
48 iterationLimit_ = 2147483647;
49 kktMatrixPassLimit_ = Double.POSITIVE_INFINITY;
50 }
51
52 public static final com.google.protobuf.Descriptors.Descriptor
54 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_descriptor;
55 }
56
57 @java.lang.Override
58 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
60 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_fieldAccessorTable
61 .ensureFieldAccessorsInitialized(
62 com.google.ortools.pdlp.TerminationCriteria.class, com.google.ortools.pdlp.TerminationCriteria.Builder.class);
63 }
64
65 public interface SimpleOptimalityCriteriaOrBuilder extends
66 // @@protoc_insertion_point(interface_extends:operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria)
67 com.google.protobuf.MessageOrBuilder {
68
89
110 }
114 public static final class SimpleOptimalityCriteria extends
115 com.google.protobuf.GeneratedMessage implements
116 // @@protoc_insertion_point(message_implements:operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria)
118 private static final long serialVersionUID = 0L;
119 static {
120 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
121 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
122 /* major= */ 4,
123 /* minor= */ 26,
124 /* patch= */ 1,
125 /* suffix= */ "",
126 SimpleOptimalityCriteria.class.getName());
127 }
128 // Use SimpleOptimalityCriteria.newBuilder() to construct.
129 private SimpleOptimalityCriteria(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
130 super(builder);
131 }
132 private SimpleOptimalityCriteria() {
133 epsOptimalAbsolute_ = 1e-06D;
134 epsOptimalRelative_ = 1e-06D;
135 }
136
137 public static final com.google.protobuf.Descriptors.Descriptor
139 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_SimpleOptimalityCriteria_descriptor;
140 }
141
142 @java.lang.Override
143 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
145 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_SimpleOptimalityCriteria_fieldAccessorTable
146 .ensureFieldAccessorsInitialized(
147 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.class, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder.class);
148 }
149
150 private int bitField0_;
151 public static final int EPS_OPTIMAL_ABSOLUTE_FIELD_NUMBER = 1;
152 private double epsOptimalAbsolute_ = 1e-06D;
162 @java.lang.Override
163 public boolean hasEpsOptimalAbsolute() {
164 return ((bitField0_ & 0x00000001) != 0);
165 }
175 @java.lang.Override
176 public double getEpsOptimalAbsolute() {
177 return epsOptimalAbsolute_;
178 }
179
180 public static final int EPS_OPTIMAL_RELATIVE_FIELD_NUMBER = 2;
181 private double epsOptimalRelative_ = 1e-06D;
191 @java.lang.Override
192 public boolean hasEpsOptimalRelative() {
193 return ((bitField0_ & 0x00000002) != 0);
194 }
204 @java.lang.Override
205 public double getEpsOptimalRelative() {
206 return epsOptimalRelative_;
207 }
208
209 private byte memoizedIsInitialized = -1;
210 @java.lang.Override
211 public final boolean isInitialized() {
212 byte isInitialized = memoizedIsInitialized;
213 if (isInitialized == 1) return true;
214 if (isInitialized == 0) return false;
215
216 memoizedIsInitialized = 1;
217 return true;
218 }
219
220 @java.lang.Override
221 public void writeTo(com.google.protobuf.CodedOutputStream output)
222 throws java.io.IOException {
223 if (((bitField0_ & 0x00000001) != 0)) {
224 output.writeDouble(1, epsOptimalAbsolute_);
225 }
226 if (((bitField0_ & 0x00000002) != 0)) {
227 output.writeDouble(2, epsOptimalRelative_);
228 }
229 getUnknownFields().writeTo(output);
230 }
231
232 @java.lang.Override
233 public int getSerializedSize() {
234 int size = memoizedSize;
235 if (size != -1) return size;
236
237 size = 0;
238 if (((bitField0_ & 0x00000001) != 0)) {
239 size += com.google.protobuf.CodedOutputStream
240 .computeDoubleSize(1, epsOptimalAbsolute_);
241 }
242 if (((bitField0_ & 0x00000002) != 0)) {
243 size += com.google.protobuf.CodedOutputStream
244 .computeDoubleSize(2, epsOptimalRelative_);
245 }
246 size += getUnknownFields().getSerializedSize();
247 memoizedSize = size;
248 return size;
249 }
250
251 @java.lang.Override
252 public boolean equals(final java.lang.Object obj) {
253 if (obj == this) {
254 return true;
255 }
256 if (!(obj instanceof com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria)) {
257 return super.equals(obj);
258 }
259 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria other = (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) obj;
260
261 if (hasEpsOptimalAbsolute() != other.hasEpsOptimalAbsolute()) return false;
262 if (hasEpsOptimalAbsolute()) {
263 if (java.lang.Double.doubleToLongBits(getEpsOptimalAbsolute())
264 != java.lang.Double.doubleToLongBits(
265 other.getEpsOptimalAbsolute())) return false;
266 }
267 if (hasEpsOptimalRelative() != other.hasEpsOptimalRelative()) return false;
268 if (hasEpsOptimalRelative()) {
269 if (java.lang.Double.doubleToLongBits(getEpsOptimalRelative())
270 != java.lang.Double.doubleToLongBits(
271 other.getEpsOptimalRelative())) return false;
272 }
273 if (!getUnknownFields().equals(other.getUnknownFields())) return false;
274 return true;
275 }
276
277 @java.lang.Override
278 public int hashCode() {
279 if (memoizedHashCode != 0) {
280 return memoizedHashCode;
281 }
282 int hash = 41;
283 hash = (19 * hash) + getDescriptor().hashCode();
284 if (hasEpsOptimalAbsolute()) {
285 hash = (37 * hash) + EPS_OPTIMAL_ABSOLUTE_FIELD_NUMBER;
286 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
287 java.lang.Double.doubleToLongBits(getEpsOptimalAbsolute()));
288 }
289 if (hasEpsOptimalRelative()) {
290 hash = (37 * hash) + EPS_OPTIMAL_RELATIVE_FIELD_NUMBER;
291 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
292 java.lang.Double.doubleToLongBits(getEpsOptimalRelative()));
293 }
294 hash = (29 * hash) + getUnknownFields().hashCode();
295 memoizedHashCode = hash;
296 return hash;
297 }
298
300 java.nio.ByteBuffer data)
301 throws com.google.protobuf.InvalidProtocolBufferException {
302 return PARSER.parseFrom(data);
303 }
305 java.nio.ByteBuffer data,
306 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
307 throws com.google.protobuf.InvalidProtocolBufferException {
308 return PARSER.parseFrom(data, extensionRegistry);
309 }
311 com.google.protobuf.ByteString data)
312 throws com.google.protobuf.InvalidProtocolBufferException {
313 return PARSER.parseFrom(data);
314 }
316 com.google.protobuf.ByteString data,
317 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
318 throws com.google.protobuf.InvalidProtocolBufferException {
319 return PARSER.parseFrom(data, extensionRegistry);
320 }
322 throws com.google.protobuf.InvalidProtocolBufferException {
323 return PARSER.parseFrom(data);
324 }
326 byte[] data,
327 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
328 throws com.google.protobuf.InvalidProtocolBufferException {
329 return PARSER.parseFrom(data, extensionRegistry);
330 }
332 throws java.io.IOException {
333 return com.google.protobuf.GeneratedMessage
334 .parseWithIOException(PARSER, input);
335 }
337 java.io.InputStream input,
338 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
339 throws java.io.IOException {
340 return com.google.protobuf.GeneratedMessage
341 .parseWithIOException(PARSER, input, extensionRegistry);
342 }
343
345 throws java.io.IOException {
346 return com.google.protobuf.GeneratedMessage
347 .parseDelimitedWithIOException(PARSER, input);
348 }
349
351 java.io.InputStream input,
352 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
353 throws java.io.IOException {
354 return com.google.protobuf.GeneratedMessage
355 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
356 }
358 com.google.protobuf.CodedInputStream input)
359 throws java.io.IOException {
360 return com.google.protobuf.GeneratedMessage
361 .parseWithIOException(PARSER, input);
362 }
364 com.google.protobuf.CodedInputStream input,
365 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
366 throws java.io.IOException {
367 return com.google.protobuf.GeneratedMessage
368 .parseWithIOException(PARSER, input, extensionRegistry);
369 }
370
371 @java.lang.Override
372 public Builder newBuilderForType() { return newBuilder(); }
373 public static Builder newBuilder() {
374 return DEFAULT_INSTANCE.toBuilder();
375 }
376 public static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria prototype) {
377 return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
378 }
379 @java.lang.Override
381 return this == DEFAULT_INSTANCE
382 ? new Builder() : new Builder().mergeFrom(this);
383 }
384
385 @java.lang.Override
387 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
388 Builder builder = new Builder(parent);
389 return builder;
390 }
394 public static final class Builder extends
395 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
396 // @@protoc_insertion_point(builder_implements:operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria)
398 public static final com.google.protobuf.Descriptors.Descriptor
400 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_SimpleOptimalityCriteria_descriptor;
401 }
402
403 @java.lang.Override
404 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
406 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_SimpleOptimalityCriteria_fieldAccessorTable
407 .ensureFieldAccessorsInitialized(
408 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.class, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder.class);
409 }
410
411 // Construct using com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.newBuilder()
412 private Builder() {
413
414 }
415
416 private Builder(
417 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
418 super(parent);
419
420 }
421 @java.lang.Override
422 public Builder clear() {
423 super.clear();
424 bitField0_ = 0;
425 epsOptimalAbsolute_ = 1e-06D;
426 epsOptimalRelative_ = 1e-06D;
427 return this;
428 }
429
430 @java.lang.Override
431 public com.google.protobuf.Descriptors.Descriptor
433 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_SimpleOptimalityCriteria_descriptor;
434 }
435
436 @java.lang.Override
438 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
439 }
440
441 @java.lang.Override
444 if (!result.isInitialized()) {
445 throw newUninitializedMessageException(result);
446 }
447 return result;
448 }
449
450 @java.lang.Override
452 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria result = new com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria(this);
453 if (bitField0_ != 0) { buildPartial0(result); }
454 onBuilt();
455 return result;
456 }
457
458 private void buildPartial0(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria result) {
459 int from_bitField0_ = bitField0_;
460 int to_bitField0_ = 0;
461 if (((from_bitField0_ & 0x00000001) != 0)) {
462 result.epsOptimalAbsolute_ = epsOptimalAbsolute_;
463 to_bitField0_ |= 0x00000001;
464 }
465 if (((from_bitField0_ & 0x00000002) != 0)) {
466 result.epsOptimalRelative_ = epsOptimalRelative_;
467 to_bitField0_ |= 0x00000002;
468 }
469 result.bitField0_ |= to_bitField0_;
470 }
471
472 @java.lang.Override
473 public Builder mergeFrom(com.google.protobuf.Message other) {
474 if (other instanceof com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) {
475 return mergeFrom((com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria)other);
476 } else {
477 super.mergeFrom(other);
478 return this;
479 }
480 }
481
482 public Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria other) {
483 if (other == com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance()) return this;
484 if (other.hasEpsOptimalAbsolute()) {
485 setEpsOptimalAbsolute(other.getEpsOptimalAbsolute());
486 }
487 if (other.hasEpsOptimalRelative()) {
488 setEpsOptimalRelative(other.getEpsOptimalRelative());
489 }
490 this.mergeUnknownFields(other.getUnknownFields());
491 onChanged();
492 return this;
493 }
494
495 @java.lang.Override
496 public final boolean isInitialized() {
497 return true;
498 }
499
500 @java.lang.Override
502 com.google.protobuf.CodedInputStream input,
503 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
504 throws java.io.IOException {
505 if (extensionRegistry == null) {
506 throw new java.lang.NullPointerException();
507 }
508 try {
509 boolean done = false;
510 while (!done) {
511 int tag = input.readTag();
512 switch (tag) {
513 case 0:
514 done = true;
515 break;
516 case 9: {
517 epsOptimalAbsolute_ = input.readDouble();
518 bitField0_ |= 0x00000001;
519 break;
520 } // case 9
521 case 17: {
522 epsOptimalRelative_ = input.readDouble();
523 bitField0_ |= 0x00000002;
524 break;
525 } // case 17
526 default: {
527 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
528 done = true; // was an endgroup tag
529 }
530 break;
531 } // default:
532 } // switch (tag)
533 } // while (!done)
534 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
535 throw e.unwrapIOException();
536 } finally {
537 onChanged();
538 } // finally
539 return this;
540 }
541 private int bitField0_;
542
543 private double epsOptimalAbsolute_ = 1e-06D;
553 @java.lang.Override
554 public boolean hasEpsOptimalAbsolute() {
555 return ((bitField0_ & 0x00000001) != 0);
556 }
566 @java.lang.Override
567 public double getEpsOptimalAbsolute() {
568 return epsOptimalAbsolute_;
569 }
580 public Builder setEpsOptimalAbsolute(double value) {
581
582 epsOptimalAbsolute_ = value;
583 bitField0_ |= 0x00000001;
584 onChanged();
585 return this;
586 }
597 bitField0_ = (bitField0_ & ~0x00000001);
598 epsOptimalAbsolute_ = 1e-06D;
599 onChanged();
600 return this;
601 }
602
603 private double epsOptimalRelative_ = 1e-06D;
613 @java.lang.Override
614 public boolean hasEpsOptimalRelative() {
615 return ((bitField0_ & 0x00000002) != 0);
616 }
626 @java.lang.Override
627 public double getEpsOptimalRelative() {
628 return epsOptimalRelative_;
629 }
640 public Builder setEpsOptimalRelative(double value) {
641
642 epsOptimalRelative_ = value;
643 bitField0_ |= 0x00000002;
644 onChanged();
645 return this;
646 }
657 bitField0_ = (bitField0_ & ~0x00000002);
658 epsOptimalRelative_ = 1e-06D;
659 onChanged();
660 return this;
661 }
662
663 // @@protoc_insertion_point(builder_scope:operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria)
664 }
665
666 // @@protoc_insertion_point(class_scope:operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria)
668 static {
669 DEFAULT_INSTANCE = new com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria();
670 }
671
675
676 private static final com.google.protobuf.Parser<SimpleOptimalityCriteria>
677 PARSER = new com.google.protobuf.AbstractParser<SimpleOptimalityCriteria>() {
678 @java.lang.Override
679 public SimpleOptimalityCriteria parsePartialFrom(
680 com.google.protobuf.CodedInputStream input,
681 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
682 throws com.google.protobuf.InvalidProtocolBufferException {
683 Builder builder = newBuilder();
684 try {
685 builder.mergeFrom(input, extensionRegistry);
686 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
687 throw e.setUnfinishedMessage(builder.buildPartial());
688 } catch (com.google.protobuf.UninitializedMessageException e) {
689 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
690 } catch (java.io.IOException e) {
691 throw new com.google.protobuf.InvalidProtocolBufferException(e)
692 .setUnfinishedMessage(builder.buildPartial());
693 }
694 return builder.buildPartial();
695 }
696 };
697
698 public static com.google.protobuf.Parser<SimpleOptimalityCriteria> parser() {
699 return PARSER;
700 }
701
702 @java.lang.Override
703 public com.google.protobuf.Parser<SimpleOptimalityCriteria> getParserForType() {
704 return PARSER;
705 }
706
707 @java.lang.Override
711
712 }
713
714 public interface DetailedOptimalityCriteriaOrBuilder extends
715 // @@protoc_insertion_point(interface_extends:operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria)
716 com.google.protobuf.MessageOrBuilder {
717
736
755
774
793
812
831 }
835 public static final class DetailedOptimalityCriteria extends
836 com.google.protobuf.GeneratedMessage implements
837 // @@protoc_insertion_point(message_implements:operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria)
839 private static final long serialVersionUID = 0L;
840 static {
841 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
842 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
843 /* major= */ 4,
844 /* minor= */ 26,
845 /* patch= */ 1,
846 /* suffix= */ "",
847 DetailedOptimalityCriteria.class.getName());
848 }
849 // Use DetailedOptimalityCriteria.newBuilder() to construct.
850 private DetailedOptimalityCriteria(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
851 super(builder);
852 }
854 epsOptimalPrimalResidualAbsolute_ = 1e-06D;
855 epsOptimalPrimalResidualRelative_ = 1e-06D;
856 epsOptimalDualResidualAbsolute_ = 1e-06D;
857 epsOptimalDualResidualRelative_ = 1e-06D;
858 epsOptimalObjectiveGapAbsolute_ = 1e-06D;
859 epsOptimalObjectiveGapRelative_ = 1e-06D;
860 }
861
862 public static final com.google.protobuf.Descriptors.Descriptor
864 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_DetailedOptimalityCriteria_descriptor;
865 }
866
867 @java.lang.Override
868 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
870 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_DetailedOptimalityCriteria_fieldAccessorTable
871 .ensureFieldAccessorsInitialized(
872 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.class, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder.class);
873 }
874
875 private int bitField0_;
877 private double epsOptimalPrimalResidualAbsolute_ = 1e-06D;
886 @java.lang.Override
888 return ((bitField0_ & 0x00000001) != 0);
889 }
898 @java.lang.Override
900 return epsOptimalPrimalResidualAbsolute_;
901 }
902
904 private double epsOptimalPrimalResidualRelative_ = 1e-06D;
913 @java.lang.Override
915 return ((bitField0_ & 0x00000002) != 0);
916 }
925 @java.lang.Override
927 return epsOptimalPrimalResidualRelative_;
928 }
929
931 private double epsOptimalDualResidualAbsolute_ = 1e-06D;
940 @java.lang.Override
942 return ((bitField0_ & 0x00000004) != 0);
943 }
952 @java.lang.Override
954 return epsOptimalDualResidualAbsolute_;
955 }
956
958 private double epsOptimalDualResidualRelative_ = 1e-06D;
967 @java.lang.Override
969 return ((bitField0_ & 0x00000008) != 0);
970 }
979 @java.lang.Override
981 return epsOptimalDualResidualRelative_;
982 }
983
985 private double epsOptimalObjectiveGapAbsolute_ = 1e-06D;
994 @java.lang.Override
996 return ((bitField0_ & 0x00000010) != 0);
997 }
1006 @java.lang.Override
1008 return epsOptimalObjectiveGapAbsolute_;
1009 }
1010
1012 private double epsOptimalObjectiveGapRelative_ = 1e-06D;
1021 @java.lang.Override
1023 return ((bitField0_ & 0x00000020) != 0);
1024 }
1033 @java.lang.Override
1035 return epsOptimalObjectiveGapRelative_;
1036 }
1037
1038 private byte memoizedIsInitialized = -1;
1039 @java.lang.Override
1040 public final boolean isInitialized() {
1041 byte isInitialized = memoizedIsInitialized;
1042 if (isInitialized == 1) return true;
1043 if (isInitialized == 0) return false;
1044
1045 memoizedIsInitialized = 1;
1046 return true;
1047 }
1048
1049 @java.lang.Override
1050 public void writeTo(com.google.protobuf.CodedOutputStream output)
1051 throws java.io.IOException {
1052 if (((bitField0_ & 0x00000001) != 0)) {
1053 output.writeDouble(1, epsOptimalPrimalResidualAbsolute_);
1054 }
1055 if (((bitField0_ & 0x00000002) != 0)) {
1056 output.writeDouble(2, epsOptimalPrimalResidualRelative_);
1057 }
1058 if (((bitField0_ & 0x00000004) != 0)) {
1059 output.writeDouble(3, epsOptimalDualResidualAbsolute_);
1060 }
1061 if (((bitField0_ & 0x00000008) != 0)) {
1062 output.writeDouble(4, epsOptimalDualResidualRelative_);
1063 }
1064 if (((bitField0_ & 0x00000010) != 0)) {
1065 output.writeDouble(5, epsOptimalObjectiveGapAbsolute_);
1066 }
1067 if (((bitField0_ & 0x00000020) != 0)) {
1068 output.writeDouble(6, epsOptimalObjectiveGapRelative_);
1069 }
1070 getUnknownFields().writeTo(output);
1071 }
1072
1073 @java.lang.Override
1074 public int getSerializedSize() {
1075 int size = memoizedSize;
1076 if (size != -1) return size;
1077
1078 size = 0;
1079 if (((bitField0_ & 0x00000001) != 0)) {
1080 size += com.google.protobuf.CodedOutputStream
1081 .computeDoubleSize(1, epsOptimalPrimalResidualAbsolute_);
1082 }
1083 if (((bitField0_ & 0x00000002) != 0)) {
1084 size += com.google.protobuf.CodedOutputStream
1085 .computeDoubleSize(2, epsOptimalPrimalResidualRelative_);
1086 }
1087 if (((bitField0_ & 0x00000004) != 0)) {
1088 size += com.google.protobuf.CodedOutputStream
1089 .computeDoubleSize(3, epsOptimalDualResidualAbsolute_);
1090 }
1091 if (((bitField0_ & 0x00000008) != 0)) {
1092 size += com.google.protobuf.CodedOutputStream
1093 .computeDoubleSize(4, epsOptimalDualResidualRelative_);
1094 }
1095 if (((bitField0_ & 0x00000010) != 0)) {
1096 size += com.google.protobuf.CodedOutputStream
1097 .computeDoubleSize(5, epsOptimalObjectiveGapAbsolute_);
1098 }
1099 if (((bitField0_ & 0x00000020) != 0)) {
1100 size += com.google.protobuf.CodedOutputStream
1101 .computeDoubleSize(6, epsOptimalObjectiveGapRelative_);
1102 }
1103 size += getUnknownFields().getSerializedSize();
1104 memoizedSize = size;
1105 return size;
1106 }
1107
1108 @java.lang.Override
1109 public boolean equals(final java.lang.Object obj) {
1110 if (obj == this) {
1111 return true;
1112 }
1113 if (!(obj instanceof com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria)) {
1114 return super.equals(obj);
1115 }
1116 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria other = (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) obj;
1117
1120 if (java.lang.Double.doubleToLongBits(getEpsOptimalPrimalResidualAbsolute())
1121 != java.lang.Double.doubleToLongBits(
1122 other.getEpsOptimalPrimalResidualAbsolute())) return false;
1123 }
1126 if (java.lang.Double.doubleToLongBits(getEpsOptimalPrimalResidualRelative())
1127 != java.lang.Double.doubleToLongBits(
1128 other.getEpsOptimalPrimalResidualRelative())) return false;
1129 }
1132 if (java.lang.Double.doubleToLongBits(getEpsOptimalDualResidualAbsolute())
1133 != java.lang.Double.doubleToLongBits(
1134 other.getEpsOptimalDualResidualAbsolute())) return false;
1135 }
1138 if (java.lang.Double.doubleToLongBits(getEpsOptimalDualResidualRelative())
1139 != java.lang.Double.doubleToLongBits(
1140 other.getEpsOptimalDualResidualRelative())) return false;
1141 }
1144 if (java.lang.Double.doubleToLongBits(getEpsOptimalObjectiveGapAbsolute())
1145 != java.lang.Double.doubleToLongBits(
1146 other.getEpsOptimalObjectiveGapAbsolute())) return false;
1147 }
1150 if (java.lang.Double.doubleToLongBits(getEpsOptimalObjectiveGapRelative())
1151 != java.lang.Double.doubleToLongBits(
1152 other.getEpsOptimalObjectiveGapRelative())) return false;
1153 }
1154 if (!getUnknownFields().equals(other.getUnknownFields())) return false;
1155 return true;
1156 }
1157
1158 @java.lang.Override
1159 public int hashCode() {
1160 if (memoizedHashCode != 0) {
1161 return memoizedHashCode;
1162 }
1163 int hash = 41;
1164 hash = (19 * hash) + getDescriptor().hashCode();
1167 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1168 java.lang.Double.doubleToLongBits(getEpsOptimalPrimalResidualAbsolute()));
1169 }
1172 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1173 java.lang.Double.doubleToLongBits(getEpsOptimalPrimalResidualRelative()));
1174 }
1177 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1178 java.lang.Double.doubleToLongBits(getEpsOptimalDualResidualAbsolute()));
1179 }
1182 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1183 java.lang.Double.doubleToLongBits(getEpsOptimalDualResidualRelative()));
1184 }
1187 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1188 java.lang.Double.doubleToLongBits(getEpsOptimalObjectiveGapAbsolute()));
1189 }
1192 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1193 java.lang.Double.doubleToLongBits(getEpsOptimalObjectiveGapRelative()));
1194 }
1195 hash = (29 * hash) + getUnknownFields().hashCode();
1196 memoizedHashCode = hash;
1197 return hash;
1198 }
1199
1201 java.nio.ByteBuffer data)
1202 throws com.google.protobuf.InvalidProtocolBufferException {
1203 return PARSER.parseFrom(data);
1204 }
1206 java.nio.ByteBuffer data,
1207 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1208 throws com.google.protobuf.InvalidProtocolBufferException {
1209 return PARSER.parseFrom(data, extensionRegistry);
1210 }
1212 com.google.protobuf.ByteString data)
1213 throws com.google.protobuf.InvalidProtocolBufferException {
1214 return PARSER.parseFrom(data);
1215 }
1217 com.google.protobuf.ByteString data,
1218 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1219 throws com.google.protobuf.InvalidProtocolBufferException {
1220 return PARSER.parseFrom(data, extensionRegistry);
1221 }
1223 throws com.google.protobuf.InvalidProtocolBufferException {
1224 return PARSER.parseFrom(data);
1225 }
1227 byte[] data,
1228 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1229 throws com.google.protobuf.InvalidProtocolBufferException {
1230 return PARSER.parseFrom(data, extensionRegistry);
1231 }
1233 throws java.io.IOException {
1234 return com.google.protobuf.GeneratedMessage
1235 .parseWithIOException(PARSER, input);
1236 }
1238 java.io.InputStream input,
1239 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1240 throws java.io.IOException {
1241 return com.google.protobuf.GeneratedMessage
1242 .parseWithIOException(PARSER, input, extensionRegistry);
1243 }
1244
1246 throws java.io.IOException {
1247 return com.google.protobuf.GeneratedMessage
1248 .parseDelimitedWithIOException(PARSER, input);
1249 }
1250
1252 java.io.InputStream input,
1253 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1254 throws java.io.IOException {
1255 return com.google.protobuf.GeneratedMessage
1256 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
1257 }
1259 com.google.protobuf.CodedInputStream input)
1260 throws java.io.IOException {
1261 return com.google.protobuf.GeneratedMessage
1262 .parseWithIOException(PARSER, input);
1263 }
1265 com.google.protobuf.CodedInputStream input,
1266 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1267 throws java.io.IOException {
1268 return com.google.protobuf.GeneratedMessage
1269 .parseWithIOException(PARSER, input, extensionRegistry);
1270 }
1271
1272 @java.lang.Override
1273 public Builder newBuilderForType() { return newBuilder(); }
1274 public static Builder newBuilder() {
1275 return DEFAULT_INSTANCE.toBuilder();
1276 }
1277 public static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria prototype) {
1278 return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
1279 }
1280 @java.lang.Override
1282 return this == DEFAULT_INSTANCE
1283 ? new Builder() : new Builder().mergeFrom(this);
1284 }
1285
1286 @java.lang.Override
1288 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
1289 Builder builder = new Builder(parent);
1290 return builder;
1291 }
1295 public static final class Builder extends
1296 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
1297 // @@protoc_insertion_point(builder_implements:operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria)
1299 public static final com.google.protobuf.Descriptors.Descriptor
1301 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_DetailedOptimalityCriteria_descriptor;
1302 }
1303
1304 @java.lang.Override
1305 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
1307 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_DetailedOptimalityCriteria_fieldAccessorTable
1308 .ensureFieldAccessorsInitialized(
1309 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.class, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder.class);
1310 }
1311
1312 // Construct using com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.newBuilder()
1313 private Builder() {
1314
1315 }
1316
1317 private Builder(
1318 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
1319 super(parent);
1320
1321 }
1322 @java.lang.Override
1323 public Builder clear() {
1324 super.clear();
1325 bitField0_ = 0;
1326 epsOptimalPrimalResidualAbsolute_ = 1e-06D;
1327 epsOptimalPrimalResidualRelative_ = 1e-06D;
1328 epsOptimalDualResidualAbsolute_ = 1e-06D;
1329 epsOptimalDualResidualRelative_ = 1e-06D;
1330 epsOptimalObjectiveGapAbsolute_ = 1e-06D;
1331 epsOptimalObjectiveGapRelative_ = 1e-06D;
1332 return this;
1333 }
1334
1335 @java.lang.Override
1336 public com.google.protobuf.Descriptors.Descriptor
1338 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_DetailedOptimalityCriteria_descriptor;
1339 }
1340
1341 @java.lang.Override
1343 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
1344 }
1345
1346 @java.lang.Override
1349 if (!result.isInitialized()) {
1350 throw newUninitializedMessageException(result);
1351 }
1352 return result;
1353 }
1354
1355 @java.lang.Override
1357 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria result = new com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria(this);
1358 if (bitField0_ != 0) { buildPartial0(result); }
1359 onBuilt();
1360 return result;
1361 }
1362
1363 private void buildPartial0(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria result) {
1364 int from_bitField0_ = bitField0_;
1365 int to_bitField0_ = 0;
1366 if (((from_bitField0_ & 0x00000001) != 0)) {
1367 result.epsOptimalPrimalResidualAbsolute_ = epsOptimalPrimalResidualAbsolute_;
1368 to_bitField0_ |= 0x00000001;
1369 }
1370 if (((from_bitField0_ & 0x00000002) != 0)) {
1371 result.epsOptimalPrimalResidualRelative_ = epsOptimalPrimalResidualRelative_;
1372 to_bitField0_ |= 0x00000002;
1373 }
1374 if (((from_bitField0_ & 0x00000004) != 0)) {
1375 result.epsOptimalDualResidualAbsolute_ = epsOptimalDualResidualAbsolute_;
1376 to_bitField0_ |= 0x00000004;
1377 }
1378 if (((from_bitField0_ & 0x00000008) != 0)) {
1379 result.epsOptimalDualResidualRelative_ = epsOptimalDualResidualRelative_;
1380 to_bitField0_ |= 0x00000008;
1381 }
1382 if (((from_bitField0_ & 0x00000010) != 0)) {
1383 result.epsOptimalObjectiveGapAbsolute_ = epsOptimalObjectiveGapAbsolute_;
1384 to_bitField0_ |= 0x00000010;
1385 }
1386 if (((from_bitField0_ & 0x00000020) != 0)) {
1387 result.epsOptimalObjectiveGapRelative_ = epsOptimalObjectiveGapRelative_;
1388 to_bitField0_ |= 0x00000020;
1389 }
1390 result.bitField0_ |= to_bitField0_;
1391 }
1392
1393 @java.lang.Override
1394 public Builder mergeFrom(com.google.protobuf.Message other) {
1395 if (other instanceof com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) {
1396 return mergeFrom((com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria)other);
1397 } else {
1398 super.mergeFrom(other);
1399 return this;
1400 }
1401 }
1402
1403 public Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria other) {
1404 if (other == com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance()) return this;
1405 if (other.hasEpsOptimalPrimalResidualAbsolute()) {
1406 setEpsOptimalPrimalResidualAbsolute(other.getEpsOptimalPrimalResidualAbsolute());
1407 }
1408 if (other.hasEpsOptimalPrimalResidualRelative()) {
1409 setEpsOptimalPrimalResidualRelative(other.getEpsOptimalPrimalResidualRelative());
1410 }
1411 if (other.hasEpsOptimalDualResidualAbsolute()) {
1412 setEpsOptimalDualResidualAbsolute(other.getEpsOptimalDualResidualAbsolute());
1413 }
1414 if (other.hasEpsOptimalDualResidualRelative()) {
1415 setEpsOptimalDualResidualRelative(other.getEpsOptimalDualResidualRelative());
1416 }
1417 if (other.hasEpsOptimalObjectiveGapAbsolute()) {
1418 setEpsOptimalObjectiveGapAbsolute(other.getEpsOptimalObjectiveGapAbsolute());
1419 }
1420 if (other.hasEpsOptimalObjectiveGapRelative()) {
1421 setEpsOptimalObjectiveGapRelative(other.getEpsOptimalObjectiveGapRelative());
1422 }
1423 this.mergeUnknownFields(other.getUnknownFields());
1424 onChanged();
1425 return this;
1426 }
1427
1428 @java.lang.Override
1429 public final boolean isInitialized() {
1430 return true;
1431 }
1432
1433 @java.lang.Override
1435 com.google.protobuf.CodedInputStream input,
1436 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1437 throws java.io.IOException {
1438 if (extensionRegistry == null) {
1439 throw new java.lang.NullPointerException();
1440 }
1441 try {
1442 boolean done = false;
1443 while (!done) {
1444 int tag = input.readTag();
1445 switch (tag) {
1446 case 0:
1447 done = true;
1448 break;
1449 case 9: {
1450 epsOptimalPrimalResidualAbsolute_ = input.readDouble();
1451 bitField0_ |= 0x00000001;
1452 break;
1453 } // case 9
1454 case 17: {
1455 epsOptimalPrimalResidualRelative_ = input.readDouble();
1456 bitField0_ |= 0x00000002;
1457 break;
1458 } // case 17
1459 case 25: {
1460 epsOptimalDualResidualAbsolute_ = input.readDouble();
1461 bitField0_ |= 0x00000004;
1462 break;
1463 } // case 25
1464 case 33: {
1465 epsOptimalDualResidualRelative_ = input.readDouble();
1466 bitField0_ |= 0x00000008;
1467 break;
1468 } // case 33
1469 case 41: {
1470 epsOptimalObjectiveGapAbsolute_ = input.readDouble();
1471 bitField0_ |= 0x00000010;
1472 break;
1473 } // case 41
1474 case 49: {
1475 epsOptimalObjectiveGapRelative_ = input.readDouble();
1476 bitField0_ |= 0x00000020;
1477 break;
1478 } // case 49
1479 default: {
1480 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1481 done = true; // was an endgroup tag
1482 }
1483 break;
1484 } // default:
1485 } // switch (tag)
1486 } // while (!done)
1487 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1488 throw e.unwrapIOException();
1489 } finally {
1490 onChanged();
1491 } // finally
1492 return this;
1493 }
1494 private int bitField0_;
1495
1496 private double epsOptimalPrimalResidualAbsolute_ = 1e-06D;
1505 @java.lang.Override
1507 return ((bitField0_ & 0x00000001) != 0);
1508 }
1517 @java.lang.Override
1519 return epsOptimalPrimalResidualAbsolute_;
1520 }
1531
1532 epsOptimalPrimalResidualAbsolute_ = value;
1533 bitField0_ |= 0x00000001;
1534 onChanged();
1535 return this;
1536 }
1546 bitField0_ = (bitField0_ & ~0x00000001);
1547 epsOptimalPrimalResidualAbsolute_ = 1e-06D;
1548 onChanged();
1549 return this;
1550 }
1551
1552 private double epsOptimalPrimalResidualRelative_ = 1e-06D;
1561 @java.lang.Override
1563 return ((bitField0_ & 0x00000002) != 0);
1564 }
1573 @java.lang.Override
1575 return epsOptimalPrimalResidualRelative_;
1576 }
1587
1588 epsOptimalPrimalResidualRelative_ = value;
1589 bitField0_ |= 0x00000002;
1590 onChanged();
1591 return this;
1592 }
1602 bitField0_ = (bitField0_ & ~0x00000002);
1603 epsOptimalPrimalResidualRelative_ = 1e-06D;
1604 onChanged();
1605 return this;
1606 }
1607
1608 private double epsOptimalDualResidualAbsolute_ = 1e-06D;
1617 @java.lang.Override
1619 return ((bitField0_ & 0x00000004) != 0);
1620 }
1629 @java.lang.Override
1631 return epsOptimalDualResidualAbsolute_;
1632 }
1643
1644 epsOptimalDualResidualAbsolute_ = value;
1645 bitField0_ |= 0x00000004;
1646 onChanged();
1647 return this;
1648 }
1658 bitField0_ = (bitField0_ & ~0x00000004);
1659 epsOptimalDualResidualAbsolute_ = 1e-06D;
1660 onChanged();
1661 return this;
1662 }
1663
1664 private double epsOptimalDualResidualRelative_ = 1e-06D;
1673 @java.lang.Override
1675 return ((bitField0_ & 0x00000008) != 0);
1676 }
1685 @java.lang.Override
1687 return epsOptimalDualResidualRelative_;
1688 }
1699
1700 epsOptimalDualResidualRelative_ = value;
1701 bitField0_ |= 0x00000008;
1702 onChanged();
1703 return this;
1704 }
1714 bitField0_ = (bitField0_ & ~0x00000008);
1715 epsOptimalDualResidualRelative_ = 1e-06D;
1716 onChanged();
1717 return this;
1718 }
1719
1720 private double epsOptimalObjectiveGapAbsolute_ = 1e-06D;
1729 @java.lang.Override
1731 return ((bitField0_ & 0x00000010) != 0);
1732 }
1741 @java.lang.Override
1743 return epsOptimalObjectiveGapAbsolute_;
1744 }
1755
1756 epsOptimalObjectiveGapAbsolute_ = value;
1757 bitField0_ |= 0x00000010;
1758 onChanged();
1759 return this;
1760 }
1770 bitField0_ = (bitField0_ & ~0x00000010);
1771 epsOptimalObjectiveGapAbsolute_ = 1e-06D;
1772 onChanged();
1773 return this;
1774 }
1775
1776 private double epsOptimalObjectiveGapRelative_ = 1e-06D;
1785 @java.lang.Override
1787 return ((bitField0_ & 0x00000020) != 0);
1788 }
1797 @java.lang.Override
1799 return epsOptimalObjectiveGapRelative_;
1800 }
1811
1812 epsOptimalObjectiveGapRelative_ = value;
1813 bitField0_ |= 0x00000020;
1814 onChanged();
1815 return this;
1816 }
1826 bitField0_ = (bitField0_ & ~0x00000020);
1827 epsOptimalObjectiveGapRelative_ = 1e-06D;
1828 onChanged();
1829 return this;
1830 }
1831
1832 // @@protoc_insertion_point(builder_scope:operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria)
1833 }
1834
1835 // @@protoc_insertion_point(class_scope:operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria)
1837 static {
1838 DEFAULT_INSTANCE = new com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria();
1839 }
1840
1844
1845 private static final com.google.protobuf.Parser<DetailedOptimalityCriteria>
1846 PARSER = new com.google.protobuf.AbstractParser<DetailedOptimalityCriteria>() {
1847 @java.lang.Override
1848 public DetailedOptimalityCriteria parsePartialFrom(
1849 com.google.protobuf.CodedInputStream input,
1850 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1851 throws com.google.protobuf.InvalidProtocolBufferException {
1852 Builder builder = newBuilder();
1853 try {
1854 builder.mergeFrom(input, extensionRegistry);
1855 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1856 throw e.setUnfinishedMessage(builder.buildPartial());
1857 } catch (com.google.protobuf.UninitializedMessageException e) {
1858 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
1859 } catch (java.io.IOException e) {
1860 throw new com.google.protobuf.InvalidProtocolBufferException(e)
1861 .setUnfinishedMessage(builder.buildPartial());
1862 }
1863 return builder.buildPartial();
1864 }
1865 };
1866
1867 public static com.google.protobuf.Parser<DetailedOptimalityCriteria> parser() {
1868 return PARSER;
1869 }
1870
1871 @java.lang.Override
1872 public com.google.protobuf.Parser<DetailedOptimalityCriteria> getParserForType() {
1873 return PARSER;
1874 }
1875
1876 @java.lang.Override
1880
1881 }
1882
1883 private int bitField0_;
1884 private int optimalityCriteriaCase_ = 0;
1885 @SuppressWarnings("serial")
1886 private java.lang.Object optimalityCriteria_;
1888 implements com.google.protobuf.Internal.EnumLite,
1889 com.google.protobuf.AbstractMessage.InternalOneOfEnum {
1893 private final int value;
1894 private OptimalityCriteriaCase(int value) {
1895 this.value = value;
1896 }
1902 @java.lang.Deprecated
1903 public static OptimalityCriteriaCase valueOf(int value) {
1904 return forNumber(value);
1905 }
1906
1907 public static OptimalityCriteriaCase forNumber(int value) {
1908 switch (value) {
1909 case 9: return SIMPLE_OPTIMALITY_CRITERIA;
1910 case 10: return DETAILED_OPTIMALITY_CRITERIA;
1911 case 0: return OPTIMALITYCRITERIA_NOT_SET;
1912 default: return null;
1913 }
1914 }
1915 public int getNumber() {
1916 return this.value;
1917 }
1918 };
1919
1920 public OptimalityCriteriaCase
1923 optimalityCriteriaCase_);
1924 }
1925
1926 public static final int OPTIMALITY_NORM_FIELD_NUMBER = 1;
1927 private int optimalityNorm_ = 2;
1936 @java.lang.Override public boolean hasOptimalityNorm() {
1937 return ((bitField0_ & 0x00000001) != 0);
1938 }
1948 com.google.ortools.pdlp.OptimalityNorm result = com.google.ortools.pdlp.OptimalityNorm.forNumber(optimalityNorm_);
1949 return result == null ? com.google.ortools.pdlp.OptimalityNorm.OPTIMALITY_NORM_L2 : result;
1950 }
1951
1952 public static final int SIMPLE_OPTIMALITY_CRITERIA_FIELD_NUMBER = 9;
1957 @java.lang.Override
1959 return optimalityCriteriaCase_ == 9;
1960 }
1965 @java.lang.Override
1967 if (optimalityCriteriaCase_ == 9) {
1968 return (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_;
1969 }
1970 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
1971 }
1975 @java.lang.Override
1977 if (optimalityCriteriaCase_ == 9) {
1978 return (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_;
1979 }
1980 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
1981 }
1982
1983 public static final int DETAILED_OPTIMALITY_CRITERIA_FIELD_NUMBER = 10;
1988 @java.lang.Override
1990 return optimalityCriteriaCase_ == 10;
1991 }
1996 @java.lang.Override
1998 if (optimalityCriteriaCase_ == 10) {
1999 return (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_;
2000 }
2001 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
2002 }
2006 @java.lang.Override
2008 if (optimalityCriteriaCase_ == 10) {
2009 return (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_;
2010 }
2011 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
2012 }
2013
2014 public static final int EPS_OPTIMAL_ABSOLUTE_FIELD_NUMBER = 2;
2015 private double epsOptimalAbsolute_ = 1e-06D;
2029 @java.lang.Override
2030 @java.lang.Deprecated public boolean hasEpsOptimalAbsolute() {
2031 return ((bitField0_ & 0x00000002) != 0);
2032 }
2046 @java.lang.Override
2047 @java.lang.Deprecated public double getEpsOptimalAbsolute() {
2048 return epsOptimalAbsolute_;
2049 }
2050
2051 public static final int EPS_OPTIMAL_RELATIVE_FIELD_NUMBER = 3;
2052 private double epsOptimalRelative_ = 1e-06D;
2066 @java.lang.Override
2067 @java.lang.Deprecated public boolean hasEpsOptimalRelative() {
2068 return ((bitField0_ & 0x00000004) != 0);
2069 }
2083 @java.lang.Override
2084 @java.lang.Deprecated public double getEpsOptimalRelative() {
2085 return epsOptimalRelative_;
2086 }
2087
2088 public static final int EPS_PRIMAL_INFEASIBLE_FIELD_NUMBER = 4;
2089 private double epsPrimalInfeasible_ = 1e-08D;
2103 @java.lang.Override
2104 public boolean hasEpsPrimalInfeasible() {
2105 return ((bitField0_ & 0x00000008) != 0);
2106 }
2120 @java.lang.Override
2121 public double getEpsPrimalInfeasible() {
2122 return epsPrimalInfeasible_;
2123 }
2124
2125 public static final int EPS_DUAL_INFEASIBLE_FIELD_NUMBER = 5;
2126 private double epsDualInfeasible_ = 1e-08D;
2142 @java.lang.Override
2143 public boolean hasEpsDualInfeasible() {
2144 return ((bitField0_ & 0x00000010) != 0);
2145 }
2161 @java.lang.Override
2162 public double getEpsDualInfeasible() {
2163 return epsDualInfeasible_;
2164 }
2165
2166 public static final int TIME_SEC_LIMIT_FIELD_NUMBER = 6;
2167 private double timeSecLimit_ = Double.POSITIVE_INFINITY;
2177 @java.lang.Override
2178 public boolean hasTimeSecLimit() {
2179 return ((bitField0_ & 0x00000020) != 0);
2180 }
2190 @java.lang.Override
2191 public double getTimeSecLimit() {
2192 return timeSecLimit_;
2193 }
2194
2195 public static final int ITERATION_LIMIT_FIELD_NUMBER = 7;
2196 private int iterationLimit_ = 2147483647;
2206 @java.lang.Override
2207 public boolean hasIterationLimit() {
2208 return ((bitField0_ & 0x00000040) != 0);
2209 }
2219 @java.lang.Override
2220 public int getIterationLimit() {
2221 return iterationLimit_;
2222 }
2223
2224 public static final int KKT_MATRIX_PASS_LIMIT_FIELD_NUMBER = 8;
2225 private double kktMatrixPassLimit_ = Double.POSITIVE_INFINITY;
2235 @java.lang.Override
2236 public boolean hasKktMatrixPassLimit() {
2237 return ((bitField0_ & 0x00000080) != 0);
2238 }
2248 @java.lang.Override
2249 public double getKktMatrixPassLimit() {
2250 return kktMatrixPassLimit_;
2251 }
2252
2253 private byte memoizedIsInitialized = -1;
2254 @java.lang.Override
2255 public final boolean isInitialized() {
2256 byte isInitialized = memoizedIsInitialized;
2257 if (isInitialized == 1) return true;
2258 if (isInitialized == 0) return false;
2259
2260 memoizedIsInitialized = 1;
2261 return true;
2262 }
2263
2264 @java.lang.Override
2265 public void writeTo(com.google.protobuf.CodedOutputStream output)
2266 throws java.io.IOException {
2267 if (((bitField0_ & 0x00000001) != 0)) {
2268 output.writeEnum(1, optimalityNorm_);
2269 }
2270 if (((bitField0_ & 0x00000002) != 0)) {
2271 output.writeDouble(2, epsOptimalAbsolute_);
2272 }
2273 if (((bitField0_ & 0x00000004) != 0)) {
2274 output.writeDouble(3, epsOptimalRelative_);
2275 }
2276 if (((bitField0_ & 0x00000008) != 0)) {
2277 output.writeDouble(4, epsPrimalInfeasible_);
2278 }
2279 if (((bitField0_ & 0x00000010) != 0)) {
2280 output.writeDouble(5, epsDualInfeasible_);
2281 }
2282 if (((bitField0_ & 0x00000020) != 0)) {
2283 output.writeDouble(6, timeSecLimit_);
2284 }
2285 if (((bitField0_ & 0x00000040) != 0)) {
2286 output.writeInt32(7, iterationLimit_);
2287 }
2288 if (((bitField0_ & 0x00000080) != 0)) {
2289 output.writeDouble(8, kktMatrixPassLimit_);
2290 }
2291 if (optimalityCriteriaCase_ == 9) {
2292 output.writeMessage(9, (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_);
2293 }
2294 if (optimalityCriteriaCase_ == 10) {
2295 output.writeMessage(10, (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_);
2296 }
2297 getUnknownFields().writeTo(output);
2298 }
2299
2300 @java.lang.Override
2301 public int getSerializedSize() {
2302 int size = memoizedSize;
2303 if (size != -1) return size;
2304
2305 size = 0;
2306 if (((bitField0_ & 0x00000001) != 0)) {
2307 size += com.google.protobuf.CodedOutputStream
2308 .computeEnumSize(1, optimalityNorm_);
2309 }
2310 if (((bitField0_ & 0x00000002) != 0)) {
2311 size += com.google.protobuf.CodedOutputStream
2312 .computeDoubleSize(2, epsOptimalAbsolute_);
2313 }
2314 if (((bitField0_ & 0x00000004) != 0)) {
2315 size += com.google.protobuf.CodedOutputStream
2316 .computeDoubleSize(3, epsOptimalRelative_);
2317 }
2318 if (((bitField0_ & 0x00000008) != 0)) {
2319 size += com.google.protobuf.CodedOutputStream
2320 .computeDoubleSize(4, epsPrimalInfeasible_);
2321 }
2322 if (((bitField0_ & 0x00000010) != 0)) {
2323 size += com.google.protobuf.CodedOutputStream
2324 .computeDoubleSize(5, epsDualInfeasible_);
2325 }
2326 if (((bitField0_ & 0x00000020) != 0)) {
2327 size += com.google.protobuf.CodedOutputStream
2328 .computeDoubleSize(6, timeSecLimit_);
2329 }
2330 if (((bitField0_ & 0x00000040) != 0)) {
2331 size += com.google.protobuf.CodedOutputStream
2332 .computeInt32Size(7, iterationLimit_);
2333 }
2334 if (((bitField0_ & 0x00000080) != 0)) {
2335 size += com.google.protobuf.CodedOutputStream
2336 .computeDoubleSize(8, kktMatrixPassLimit_);
2337 }
2338 if (optimalityCriteriaCase_ == 9) {
2339 size += com.google.protobuf.CodedOutputStream
2340 .computeMessageSize(9, (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_);
2341 }
2342 if (optimalityCriteriaCase_ == 10) {
2343 size += com.google.protobuf.CodedOutputStream
2344 .computeMessageSize(10, (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_);
2345 }
2346 size += getUnknownFields().getSerializedSize();
2347 memoizedSize = size;
2348 return size;
2349 }
2350
2351 @java.lang.Override
2352 public boolean equals(final java.lang.Object obj) {
2353 if (obj == this) {
2354 return true;
2355 }
2356 if (!(obj instanceof com.google.ortools.pdlp.TerminationCriteria)) {
2357 return super.equals(obj);
2358 }
2359 com.google.ortools.pdlp.TerminationCriteria other = (com.google.ortools.pdlp.TerminationCriteria) obj;
2360
2361 if (hasOptimalityNorm() != other.hasOptimalityNorm()) return false;
2362 if (hasOptimalityNorm()) {
2363 if (optimalityNorm_ != other.optimalityNorm_) return false;
2364 }
2365 if (hasEpsOptimalAbsolute() != other.hasEpsOptimalAbsolute()) return false;
2366 if (hasEpsOptimalAbsolute()) {
2367 if (java.lang.Double.doubleToLongBits(getEpsOptimalAbsolute())
2368 != java.lang.Double.doubleToLongBits(
2369 other.getEpsOptimalAbsolute())) return false;
2370 }
2371 if (hasEpsOptimalRelative() != other.hasEpsOptimalRelative()) return false;
2372 if (hasEpsOptimalRelative()) {
2373 if (java.lang.Double.doubleToLongBits(getEpsOptimalRelative())
2374 != java.lang.Double.doubleToLongBits(
2375 other.getEpsOptimalRelative())) return false;
2376 }
2377 if (hasEpsPrimalInfeasible() != other.hasEpsPrimalInfeasible()) return false;
2378 if (hasEpsPrimalInfeasible()) {
2379 if (java.lang.Double.doubleToLongBits(getEpsPrimalInfeasible())
2380 != java.lang.Double.doubleToLongBits(
2381 other.getEpsPrimalInfeasible())) return false;
2382 }
2383 if (hasEpsDualInfeasible() != other.hasEpsDualInfeasible()) return false;
2384 if (hasEpsDualInfeasible()) {
2385 if (java.lang.Double.doubleToLongBits(getEpsDualInfeasible())
2386 != java.lang.Double.doubleToLongBits(
2387 other.getEpsDualInfeasible())) return false;
2388 }
2389 if (hasTimeSecLimit() != other.hasTimeSecLimit()) return false;
2390 if (hasTimeSecLimit()) {
2391 if (java.lang.Double.doubleToLongBits(getTimeSecLimit())
2392 != java.lang.Double.doubleToLongBits(
2393 other.getTimeSecLimit())) return false;
2394 }
2395 if (hasIterationLimit() != other.hasIterationLimit()) return false;
2396 if (hasIterationLimit()) {
2397 if (getIterationLimit()
2398 != other.getIterationLimit()) return false;
2399 }
2400 if (hasKktMatrixPassLimit() != other.hasKktMatrixPassLimit()) return false;
2401 if (hasKktMatrixPassLimit()) {
2402 if (java.lang.Double.doubleToLongBits(getKktMatrixPassLimit())
2403 != java.lang.Double.doubleToLongBits(
2404 other.getKktMatrixPassLimit())) return false;
2405 }
2406 if (!getOptimalityCriteriaCase().equals(other.getOptimalityCriteriaCase())) return false;
2407 switch (optimalityCriteriaCase_) {
2408 case 9:
2410 .equals(other.getSimpleOptimalityCriteria())) return false;
2411 break;
2412 case 10:
2414 .equals(other.getDetailedOptimalityCriteria())) return false;
2415 break;
2416 case 0:
2417 default:
2418 }
2419 if (!getUnknownFields().equals(other.getUnknownFields())) return false;
2420 return true;
2421 }
2422
2423 @java.lang.Override
2424 public int hashCode() {
2425 if (memoizedHashCode != 0) {
2426 return memoizedHashCode;
2427 }
2428 int hash = 41;
2429 hash = (19 * hash) + getDescriptor().hashCode();
2430 if (hasOptimalityNorm()) {
2431 hash = (37 * hash) + OPTIMALITY_NORM_FIELD_NUMBER;
2432 hash = (53 * hash) + optimalityNorm_;
2433 }
2434 if (hasEpsOptimalAbsolute()) {
2435 hash = (37 * hash) + EPS_OPTIMAL_ABSOLUTE_FIELD_NUMBER;
2436 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2437 java.lang.Double.doubleToLongBits(getEpsOptimalAbsolute()));
2438 }
2439 if (hasEpsOptimalRelative()) {
2440 hash = (37 * hash) + EPS_OPTIMAL_RELATIVE_FIELD_NUMBER;
2441 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2442 java.lang.Double.doubleToLongBits(getEpsOptimalRelative()));
2443 }
2444 if (hasEpsPrimalInfeasible()) {
2445 hash = (37 * hash) + EPS_PRIMAL_INFEASIBLE_FIELD_NUMBER;
2446 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2447 java.lang.Double.doubleToLongBits(getEpsPrimalInfeasible()));
2448 }
2449 if (hasEpsDualInfeasible()) {
2450 hash = (37 * hash) + EPS_DUAL_INFEASIBLE_FIELD_NUMBER;
2451 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2452 java.lang.Double.doubleToLongBits(getEpsDualInfeasible()));
2453 }
2454 if (hasTimeSecLimit()) {
2455 hash = (37 * hash) + TIME_SEC_LIMIT_FIELD_NUMBER;
2456 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2457 java.lang.Double.doubleToLongBits(getTimeSecLimit()));
2458 }
2459 if (hasIterationLimit()) {
2460 hash = (37 * hash) + ITERATION_LIMIT_FIELD_NUMBER;
2461 hash = (53 * hash) + getIterationLimit();
2462 }
2463 if (hasKktMatrixPassLimit()) {
2464 hash = (37 * hash) + KKT_MATRIX_PASS_LIMIT_FIELD_NUMBER;
2465 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2466 java.lang.Double.doubleToLongBits(getKktMatrixPassLimit()));
2467 }
2468 switch (optimalityCriteriaCase_) {
2469 case 9:
2470 hash = (37 * hash) + SIMPLE_OPTIMALITY_CRITERIA_FIELD_NUMBER;
2471 hash = (53 * hash) + getSimpleOptimalityCriteria().hashCode();
2472 break;
2473 case 10:
2474 hash = (37 * hash) + DETAILED_OPTIMALITY_CRITERIA_FIELD_NUMBER;
2475 hash = (53 * hash) + getDetailedOptimalityCriteria().hashCode();
2476 break;
2477 case 0:
2478 default:
2479 }
2480 hash = (29 * hash) + getUnknownFields().hashCode();
2481 memoizedHashCode = hash;
2482 return hash;
2483 }
2484
2486 java.nio.ByteBuffer data)
2487 throws com.google.protobuf.InvalidProtocolBufferException {
2488 return PARSER.parseFrom(data);
2489 }
2491 java.nio.ByteBuffer data,
2492 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2493 throws com.google.protobuf.InvalidProtocolBufferException {
2494 return PARSER.parseFrom(data, extensionRegistry);
2495 }
2497 com.google.protobuf.ByteString data)
2498 throws com.google.protobuf.InvalidProtocolBufferException {
2499 return PARSER.parseFrom(data);
2500 }
2502 com.google.protobuf.ByteString data,
2503 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2504 throws com.google.protobuf.InvalidProtocolBufferException {
2505 return PARSER.parseFrom(data, extensionRegistry);
2506 }
2508 throws com.google.protobuf.InvalidProtocolBufferException {
2509 return PARSER.parseFrom(data);
2510 }
2512 byte[] data,
2513 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2514 throws com.google.protobuf.InvalidProtocolBufferException {
2515 return PARSER.parseFrom(data, extensionRegistry);
2516 }
2517 public static com.google.ortools.pdlp.TerminationCriteria parseFrom(java.io.InputStream input)
2518 throws java.io.IOException {
2519 return com.google.protobuf.GeneratedMessage
2520 .parseWithIOException(PARSER, input);
2521 }
2523 java.io.InputStream input,
2524 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2525 throws java.io.IOException {
2526 return com.google.protobuf.GeneratedMessage
2527 .parseWithIOException(PARSER, input, extensionRegistry);
2528 }
2529
2531 throws java.io.IOException {
2532 return com.google.protobuf.GeneratedMessage
2533 .parseDelimitedWithIOException(PARSER, input);
2534 }
2535
2537 java.io.InputStream input,
2538 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2539 throws java.io.IOException {
2540 return com.google.protobuf.GeneratedMessage
2541 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2542 }
2544 com.google.protobuf.CodedInputStream input)
2545 throws java.io.IOException {
2546 return com.google.protobuf.GeneratedMessage
2547 .parseWithIOException(PARSER, input);
2548 }
2550 com.google.protobuf.CodedInputStream input,
2551 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2552 throws java.io.IOException {
2553 return com.google.protobuf.GeneratedMessage
2554 .parseWithIOException(PARSER, input, extensionRegistry);
2555 }
2556
2557 @java.lang.Override
2558 public Builder newBuilderForType() { return newBuilder(); }
2559 public static Builder newBuilder() {
2560 return DEFAULT_INSTANCE.toBuilder();
2561 }
2562 public static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria prototype) {
2563 return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2564 }
2565 @java.lang.Override
2567 return this == DEFAULT_INSTANCE
2568 ? new Builder() : new Builder().mergeFrom(this);
2569 }
2570
2571 @java.lang.Override
2573 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
2574 Builder builder = new Builder(parent);
2575 return builder;
2576 }
2593 public static final class Builder extends
2594 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
2595 // @@protoc_insertion_point(builder_implements:operations_research.pdlp.TerminationCriteria)
2596 com.google.ortools.pdlp.TerminationCriteriaOrBuilder {
2597 public static final com.google.protobuf.Descriptors.Descriptor
2599 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_descriptor;
2600 }
2601
2602 @java.lang.Override
2603 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
2605 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_fieldAccessorTable
2606 .ensureFieldAccessorsInitialized(
2607 com.google.ortools.pdlp.TerminationCriteria.class, com.google.ortools.pdlp.TerminationCriteria.Builder.class);
2608 }
2609
2610 // Construct using com.google.ortools.pdlp.TerminationCriteria.newBuilder()
2611 private Builder() {
2612
2613 }
2614
2615 private Builder(
2616 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
2617 super(parent);
2618
2619 }
2620 @java.lang.Override
2621 public Builder clear() {
2622 super.clear();
2623 bitField0_ = 0;
2624 optimalityNorm_ = 2;
2625 if (simpleOptimalityCriteriaBuilder_ != null) {
2626 simpleOptimalityCriteriaBuilder_.clear();
2627 }
2628 if (detailedOptimalityCriteriaBuilder_ != null) {
2629 detailedOptimalityCriteriaBuilder_.clear();
2630 }
2631 epsOptimalAbsolute_ = 1e-06D;
2632 epsOptimalRelative_ = 1e-06D;
2633 epsPrimalInfeasible_ = 1e-08D;
2634 epsDualInfeasible_ = 1e-08D;
2635 timeSecLimit_ = Double.POSITIVE_INFINITY;
2636 iterationLimit_ = 2147483647;
2637 kktMatrixPassLimit_ = Double.POSITIVE_INFINITY;
2638 optimalityCriteriaCase_ = 0;
2639 optimalityCriteria_ = null;
2640 return this;
2641 }
2642
2643 @java.lang.Override
2644 public com.google.protobuf.Descriptors.Descriptor
2646 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_TerminationCriteria_descriptor;
2647 }
2648
2649 @java.lang.Override
2651 return com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance();
2652 }
2653
2654 @java.lang.Override
2657 if (!result.isInitialized()) {
2658 throw newUninitializedMessageException(result);
2659 }
2660 return result;
2661 }
2662
2663 @java.lang.Override
2665 com.google.ortools.pdlp.TerminationCriteria result = new com.google.ortools.pdlp.TerminationCriteria(this);
2666 if (bitField0_ != 0) { buildPartial0(result); }
2667 buildPartialOneofs(result);
2668 onBuilt();
2669 return result;
2670 }
2671
2672 private void buildPartial0(com.google.ortools.pdlp.TerminationCriteria result) {
2673 int from_bitField0_ = bitField0_;
2674 int to_bitField0_ = 0;
2675 if (((from_bitField0_ & 0x00000001) != 0)) {
2676 result.optimalityNorm_ = optimalityNorm_;
2677 to_bitField0_ |= 0x00000001;
2678 }
2679 if (((from_bitField0_ & 0x00000008) != 0)) {
2680 result.epsOptimalAbsolute_ = epsOptimalAbsolute_;
2681 to_bitField0_ |= 0x00000002;
2682 }
2683 if (((from_bitField0_ & 0x00000010) != 0)) {
2684 result.epsOptimalRelative_ = epsOptimalRelative_;
2685 to_bitField0_ |= 0x00000004;
2686 }
2687 if (((from_bitField0_ & 0x00000020) != 0)) {
2688 result.epsPrimalInfeasible_ = epsPrimalInfeasible_;
2689 to_bitField0_ |= 0x00000008;
2690 }
2691 if (((from_bitField0_ & 0x00000040) != 0)) {
2692 result.epsDualInfeasible_ = epsDualInfeasible_;
2693 to_bitField0_ |= 0x00000010;
2694 }
2695 if (((from_bitField0_ & 0x00000080) != 0)) {
2696 result.timeSecLimit_ = timeSecLimit_;
2697 to_bitField0_ |= 0x00000020;
2698 }
2699 if (((from_bitField0_ & 0x00000100) != 0)) {
2700 result.iterationLimit_ = iterationLimit_;
2701 to_bitField0_ |= 0x00000040;
2702 }
2703 if (((from_bitField0_ & 0x00000200) != 0)) {
2704 result.kktMatrixPassLimit_ = kktMatrixPassLimit_;
2705 to_bitField0_ |= 0x00000080;
2706 }
2707 result.bitField0_ |= to_bitField0_;
2708 }
2709
2710 private void buildPartialOneofs(com.google.ortools.pdlp.TerminationCriteria result) {
2711 result.optimalityCriteriaCase_ = optimalityCriteriaCase_;
2712 result.optimalityCriteria_ = this.optimalityCriteria_;
2713 if (optimalityCriteriaCase_ == 9 &&
2714 simpleOptimalityCriteriaBuilder_ != null) {
2715 result.optimalityCriteria_ = simpleOptimalityCriteriaBuilder_.build();
2716 }
2717 if (optimalityCriteriaCase_ == 10 &&
2718 detailedOptimalityCriteriaBuilder_ != null) {
2719 result.optimalityCriteria_ = detailedOptimalityCriteriaBuilder_.build();
2720 }
2721 }
2722
2723 @java.lang.Override
2724 public Builder mergeFrom(com.google.protobuf.Message other) {
2725 if (other instanceof com.google.ortools.pdlp.TerminationCriteria) {
2726 return mergeFrom((com.google.ortools.pdlp.TerminationCriteria)other);
2727 } else {
2728 super.mergeFrom(other);
2729 return this;
2730 }
2731 }
2732
2733 public Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria other) {
2734 if (other == com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance()) return this;
2735 if (other.hasOptimalityNorm()) {
2736 setOptimalityNorm(other.getOptimalityNorm());
2737 }
2738 if (other.hasEpsOptimalAbsolute()) {
2739 setEpsOptimalAbsolute(other.getEpsOptimalAbsolute());
2740 }
2741 if (other.hasEpsOptimalRelative()) {
2742 setEpsOptimalRelative(other.getEpsOptimalRelative());
2743 }
2744 if (other.hasEpsPrimalInfeasible()) {
2745 setEpsPrimalInfeasible(other.getEpsPrimalInfeasible());
2746 }
2747 if (other.hasEpsDualInfeasible()) {
2748 setEpsDualInfeasible(other.getEpsDualInfeasible());
2749 }
2750 if (other.hasTimeSecLimit()) {
2751 setTimeSecLimit(other.getTimeSecLimit());
2752 }
2753 if (other.hasIterationLimit()) {
2754 setIterationLimit(other.getIterationLimit());
2755 }
2756 if (other.hasKktMatrixPassLimit()) {
2757 setKktMatrixPassLimit(other.getKktMatrixPassLimit());
2758 }
2759 switch (other.getOptimalityCriteriaCase()) {
2760 case SIMPLE_OPTIMALITY_CRITERIA: {
2761 mergeSimpleOptimalityCriteria(other.getSimpleOptimalityCriteria());
2762 break;
2763 }
2764 case DETAILED_OPTIMALITY_CRITERIA: {
2765 mergeDetailedOptimalityCriteria(other.getDetailedOptimalityCriteria());
2766 break;
2767 }
2768 case OPTIMALITYCRITERIA_NOT_SET: {
2769 break;
2770 }
2771 }
2772 this.mergeUnknownFields(other.getUnknownFields());
2773 onChanged();
2774 return this;
2775 }
2776
2777 @java.lang.Override
2778 public final boolean isInitialized() {
2779 return true;
2780 }
2781
2782 @java.lang.Override
2784 com.google.protobuf.CodedInputStream input,
2785 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2786 throws java.io.IOException {
2787 if (extensionRegistry == null) {
2788 throw new java.lang.NullPointerException();
2789 }
2790 try {
2791 boolean done = false;
2792 while (!done) {
2793 int tag = input.readTag();
2794 switch (tag) {
2795 case 0:
2796 done = true;
2797 break;
2798 case 8: {
2799 int tmpRaw = input.readEnum();
2801 com.google.ortools.pdlp.OptimalityNorm.forNumber(tmpRaw);
2802 if (tmpValue == null) {
2803 mergeUnknownVarintField(1, tmpRaw);
2804 } else {
2805 optimalityNorm_ = tmpRaw;
2806 bitField0_ |= 0x00000001;
2807 }
2808 break;
2809 } // case 8
2810 case 17: {
2811 epsOptimalAbsolute_ = input.readDouble();
2812 bitField0_ |= 0x00000008;
2813 break;
2814 } // case 17
2815 case 25: {
2816 epsOptimalRelative_ = input.readDouble();
2817 bitField0_ |= 0x00000010;
2818 break;
2819 } // case 25
2820 case 33: {
2821 epsPrimalInfeasible_ = input.readDouble();
2822 bitField0_ |= 0x00000020;
2823 break;
2824 } // case 33
2825 case 41: {
2826 epsDualInfeasible_ = input.readDouble();
2827 bitField0_ |= 0x00000040;
2828 break;
2829 } // case 41
2830 case 49: {
2831 timeSecLimit_ = input.readDouble();
2832 bitField0_ |= 0x00000080;
2833 break;
2834 } // case 49
2835 case 56: {
2836 iterationLimit_ = input.readInt32();
2837 bitField0_ |= 0x00000100;
2838 break;
2839 } // case 56
2840 case 65: {
2841 kktMatrixPassLimit_ = input.readDouble();
2842 bitField0_ |= 0x00000200;
2843 break;
2844 } // case 65
2845 case 74: {
2846 input.readMessage(
2847 getSimpleOptimalityCriteriaFieldBuilder().getBuilder(),
2848 extensionRegistry);
2849 optimalityCriteriaCase_ = 9;
2850 break;
2851 } // case 74
2852 case 82: {
2853 input.readMessage(
2854 getDetailedOptimalityCriteriaFieldBuilder().getBuilder(),
2855 extensionRegistry);
2856 optimalityCriteriaCase_ = 10;
2857 break;
2858 } // case 82
2859 default: {
2860 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
2861 done = true; // was an endgroup tag
2862 }
2863 break;
2864 } // default:
2865 } // switch (tag)
2866 } // while (!done)
2867 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2868 throw e.unwrapIOException();
2869 } finally {
2870 onChanged();
2871 } // finally
2872 return this;
2873 }
2874 private int optimalityCriteriaCase_ = 0;
2875 private java.lang.Object optimalityCriteria_;
2879 optimalityCriteriaCase_);
2880 }
2881
2883 optimalityCriteriaCase_ = 0;
2884 optimalityCriteria_ = null;
2885 onChanged();
2886 return this;
2887 }
2888
2889 private int bitField0_;
2890
2891 private int optimalityNorm_ = 2;
2900 @java.lang.Override public boolean hasOptimalityNorm() {
2901 return ((bitField0_ & 0x00000001) != 0);
2902 }
2911 @java.lang.Override
2913 com.google.ortools.pdlp.OptimalityNorm result = com.google.ortools.pdlp.OptimalityNorm.forNumber(optimalityNorm_);
2914 return result == null ? com.google.ortools.pdlp.OptimalityNorm.OPTIMALITY_NORM_L2 : result;
2915 }
2925 public Builder setOptimalityNorm(com.google.ortools.pdlp.OptimalityNorm value) {
2926 if (value == null) {
2927 throw new NullPointerException();
2928 }
2929 bitField0_ |= 0x00000001;
2930 optimalityNorm_ = value.getNumber();
2931 onChanged();
2932 return this;
2933 }
2943 bitField0_ = (bitField0_ & ~0x00000001);
2944 optimalityNorm_ = 2;
2945 onChanged();
2946 return this;
2947 }
2948
2949 private com.google.protobuf.SingleFieldBuilder<
2950 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder> simpleOptimalityCriteriaBuilder_;
2955 @java.lang.Override
2957 return optimalityCriteriaCase_ == 9;
2958 }
2963 @java.lang.Override
2965 if (simpleOptimalityCriteriaBuilder_ == null) {
2966 if (optimalityCriteriaCase_ == 9) {
2967 return (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_;
2968 }
2969 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
2970 } else {
2971 if (optimalityCriteriaCase_ == 9) {
2972 return simpleOptimalityCriteriaBuilder_.getMessage();
2973 }
2974 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
2975 }
2976 }
2980 public Builder setSimpleOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria value) {
2981 if (simpleOptimalityCriteriaBuilder_ == null) {
2982 if (value == null) {
2983 throw new NullPointerException();
2984 }
2985 optimalityCriteria_ = value;
2986 onChanged();
2987 } else {
2988 simpleOptimalityCriteriaBuilder_.setMessage(value);
2989 }
2990 optimalityCriteriaCase_ = 9;
2991 return this;
2992 }
2997 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder builderForValue) {
2998 if (simpleOptimalityCriteriaBuilder_ == null) {
2999 optimalityCriteria_ = builderForValue.build();
3000 onChanged();
3001 } else {
3002 simpleOptimalityCriteriaBuilder_.setMessage(builderForValue.build());
3003 }
3004 optimalityCriteriaCase_ = 9;
3005 return this;
3006 }
3010 public Builder mergeSimpleOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria value) {
3011 if (simpleOptimalityCriteriaBuilder_ == null) {
3012 if (optimalityCriteriaCase_ == 9 &&
3013 optimalityCriteria_ != com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance()) {
3014 optimalityCriteria_ = com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.newBuilder((com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_)
3015 .mergeFrom(value).buildPartial();
3016 } else {
3017 optimalityCriteria_ = value;
3018 }
3019 onChanged();
3020 } else {
3021 if (optimalityCriteriaCase_ == 9) {
3022 simpleOptimalityCriteriaBuilder_.mergeFrom(value);
3023 } else {
3024 simpleOptimalityCriteriaBuilder_.setMessage(value);
3025 }
3026 }
3027 optimalityCriteriaCase_ = 9;
3028 return this;
3029 }
3034 if (simpleOptimalityCriteriaBuilder_ == null) {
3035 if (optimalityCriteriaCase_ == 9) {
3036 optimalityCriteriaCase_ = 0;
3037 optimalityCriteria_ = null;
3038 onChanged();
3039 }
3040 } else {
3041 if (optimalityCriteriaCase_ == 9) {
3042 optimalityCriteriaCase_ = 0;
3043 optimalityCriteria_ = null;
3044 }
3045 simpleOptimalityCriteriaBuilder_.clear();
3046 }
3047 return this;
3048 }
3053 return getSimpleOptimalityCriteriaFieldBuilder().getBuilder();
3054 }
3058 @java.lang.Override
3060 if ((optimalityCriteriaCase_ == 9) && (simpleOptimalityCriteriaBuilder_ != null)) {
3061 return simpleOptimalityCriteriaBuilder_.getMessageOrBuilder();
3062 } else {
3063 if (optimalityCriteriaCase_ == 9) {
3064 return (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_;
3065 }
3066 return com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
3067 }
3068 }
3072 private com.google.protobuf.SingleFieldBuilder<
3073 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder>
3074 getSimpleOptimalityCriteriaFieldBuilder() {
3075 if (simpleOptimalityCriteriaBuilder_ == null) {
3076 if (!(optimalityCriteriaCase_ == 9)) {
3077 optimalityCriteria_ = com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.getDefaultInstance();
3078 }
3079 simpleOptimalityCriteriaBuilder_ = new com.google.protobuf.SingleFieldBuilder<
3080 com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder>(
3081 (com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria) optimalityCriteria_,
3082 getParentForChildren(),
3083 isClean());
3084 optimalityCriteria_ = null;
3085 }
3086 optimalityCriteriaCase_ = 9;
3087 onChanged();
3088 return simpleOptimalityCriteriaBuilder_;
3089 }
3090
3091 private com.google.protobuf.SingleFieldBuilder<
3092 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder> detailedOptimalityCriteriaBuilder_;
3097 @java.lang.Override
3099 return optimalityCriteriaCase_ == 10;
3100 }
3105 @java.lang.Override
3107 if (detailedOptimalityCriteriaBuilder_ == null) {
3108 if (optimalityCriteriaCase_ == 10) {
3109 return (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_;
3110 }
3111 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
3112 } else {
3113 if (optimalityCriteriaCase_ == 10) {
3114 return detailedOptimalityCriteriaBuilder_.getMessage();
3115 }
3116 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
3117 }
3118 }
3122 public Builder setDetailedOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria value) {
3123 if (detailedOptimalityCriteriaBuilder_ == null) {
3124 if (value == null) {
3125 throw new NullPointerException();
3126 }
3127 optimalityCriteria_ = value;
3128 onChanged();
3129 } else {
3130 detailedOptimalityCriteriaBuilder_.setMessage(value);
3131 }
3132 optimalityCriteriaCase_ = 10;
3133 return this;
3134 }
3139 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder builderForValue) {
3140 if (detailedOptimalityCriteriaBuilder_ == null) {
3141 optimalityCriteria_ = builderForValue.build();
3142 onChanged();
3143 } else {
3144 detailedOptimalityCriteriaBuilder_.setMessage(builderForValue.build());
3145 }
3146 optimalityCriteriaCase_ = 10;
3147 return this;
3148 }
3152 public Builder mergeDetailedOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria value) {
3153 if (detailedOptimalityCriteriaBuilder_ == null) {
3154 if (optimalityCriteriaCase_ == 10 &&
3155 optimalityCriteria_ != com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance()) {
3156 optimalityCriteria_ = com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.newBuilder((com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_)
3157 .mergeFrom(value).buildPartial();
3158 } else {
3159 optimalityCriteria_ = value;
3160 }
3161 onChanged();
3162 } else {
3163 if (optimalityCriteriaCase_ == 10) {
3164 detailedOptimalityCriteriaBuilder_.mergeFrom(value);
3165 } else {
3166 detailedOptimalityCriteriaBuilder_.setMessage(value);
3167 }
3168 }
3169 optimalityCriteriaCase_ = 10;
3170 return this;
3171 }
3176 if (detailedOptimalityCriteriaBuilder_ == null) {
3177 if (optimalityCriteriaCase_ == 10) {
3178 optimalityCriteriaCase_ = 0;
3179 optimalityCriteria_ = null;
3180 onChanged();
3181 }
3182 } else {
3183 if (optimalityCriteriaCase_ == 10) {
3184 optimalityCriteriaCase_ = 0;
3185 optimalityCriteria_ = null;
3186 }
3187 detailedOptimalityCriteriaBuilder_.clear();
3188 }
3189 return this;
3190 }
3195 return getDetailedOptimalityCriteriaFieldBuilder().getBuilder();
3196 }
3200 @java.lang.Override
3202 if ((optimalityCriteriaCase_ == 10) && (detailedOptimalityCriteriaBuilder_ != null)) {
3203 return detailedOptimalityCriteriaBuilder_.getMessageOrBuilder();
3204 } else {
3205 if (optimalityCriteriaCase_ == 10) {
3206 return (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_;
3207 }
3208 return com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
3209 }
3210 }
3214 private com.google.protobuf.SingleFieldBuilder<
3215 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder>
3216 getDetailedOptimalityCriteriaFieldBuilder() {
3217 if (detailedOptimalityCriteriaBuilder_ == null) {
3218 if (!(optimalityCriteriaCase_ == 10)) {
3219 optimalityCriteria_ = com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.getDefaultInstance();
3220 }
3221 detailedOptimalityCriteriaBuilder_ = new com.google.protobuf.SingleFieldBuilder<
3222 com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder, com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder>(
3223 (com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria) optimalityCriteria_,
3224 getParentForChildren(),
3225 isClean());
3226 optimalityCriteria_ = null;
3227 }
3228 optimalityCriteriaCase_ = 10;
3229 onChanged();
3230 return detailedOptimalityCriteriaBuilder_;
3231 }
3232
3233 private double epsOptimalAbsolute_ = 1e-06D;
3247 @java.lang.Override
3248 @java.lang.Deprecated public boolean hasEpsOptimalAbsolute() {
3249 return ((bitField0_ & 0x00000008) != 0);
3250 }
3264 @java.lang.Override
3265 @java.lang.Deprecated public double getEpsOptimalAbsolute() {
3266 return epsOptimalAbsolute_;
3267 }
3282 @java.lang.Deprecated public Builder setEpsOptimalAbsolute(double value) {
3283
3284 epsOptimalAbsolute_ = value;
3285 bitField0_ |= 0x00000008;
3286 onChanged();
3287 return this;
3288 }
3302 @java.lang.Deprecated public Builder clearEpsOptimalAbsolute() {
3303 bitField0_ = (bitField0_ & ~0x00000008);
3304 epsOptimalAbsolute_ = 1e-06D;
3305 onChanged();
3306 return this;
3307 }
3308
3309 private double epsOptimalRelative_ = 1e-06D;
3323 @java.lang.Override
3324 @java.lang.Deprecated public boolean hasEpsOptimalRelative() {
3325 return ((bitField0_ & 0x00000010) != 0);
3326 }
3340 @java.lang.Override
3341 @java.lang.Deprecated public double getEpsOptimalRelative() {
3342 return epsOptimalRelative_;
3343 }
3358 @java.lang.Deprecated public Builder setEpsOptimalRelative(double value) {
3359
3360 epsOptimalRelative_ = value;
3361 bitField0_ |= 0x00000010;
3362 onChanged();
3363 return this;
3364 }
3378 @java.lang.Deprecated public Builder clearEpsOptimalRelative() {
3379 bitField0_ = (bitField0_ & ~0x00000010);
3380 epsOptimalRelative_ = 1e-06D;
3381 onChanged();
3382 return this;
3383 }
3384
3385 private double epsPrimalInfeasible_ = 1e-08D;
3399 @java.lang.Override
3400 public boolean hasEpsPrimalInfeasible() {
3401 return ((bitField0_ & 0x00000020) != 0);
3402 }
3416 @java.lang.Override
3417 public double getEpsPrimalInfeasible() {
3418 return epsPrimalInfeasible_;
3419 }
3434 public Builder setEpsPrimalInfeasible(double value) {
3435
3436 epsPrimalInfeasible_ = value;
3437 bitField0_ |= 0x00000020;
3438 onChanged();
3439 return this;
3440 }
3455 bitField0_ = (bitField0_ & ~0x00000020);
3456 epsPrimalInfeasible_ = 1e-08D;
3457 onChanged();
3458 return this;
3459 }
3460
3461 private double epsDualInfeasible_ = 1e-08D;
3477 @java.lang.Override
3478 public boolean hasEpsDualInfeasible() {
3479 return ((bitField0_ & 0x00000040) != 0);
3480 }
3496 @java.lang.Override
3497 public double getEpsDualInfeasible() {
3498 return epsDualInfeasible_;
3499 }
3516 public Builder setEpsDualInfeasible(double value) {
3517
3518 epsDualInfeasible_ = value;
3519 bitField0_ |= 0x00000040;
3520 onChanged();
3521 return this;
3522 }
3539 bitField0_ = (bitField0_ & ~0x00000040);
3540 epsDualInfeasible_ = 1e-08D;
3541 onChanged();
3542 return this;
3543 }
3544
3545 private double timeSecLimit_ = Double.POSITIVE_INFINITY;
3555 @java.lang.Override
3556 public boolean hasTimeSecLimit() {
3557 return ((bitField0_ & 0x00000080) != 0);
3558 }
3568 @java.lang.Override
3569 public double getTimeSecLimit() {
3570 return timeSecLimit_;
3571 }
3582 public Builder setTimeSecLimit(double value) {
3583
3584 timeSecLimit_ = value;
3585 bitField0_ |= 0x00000080;
3586 onChanged();
3587 return this;
3588 }
3599 bitField0_ = (bitField0_ & ~0x00000080);
3600 timeSecLimit_ = Double.POSITIVE_INFINITY;
3601 onChanged();
3602 return this;
3603 }
3604
3605 private int iterationLimit_ = 2147483647;
3615 @java.lang.Override
3616 public boolean hasIterationLimit() {
3617 return ((bitField0_ & 0x00000100) != 0);
3618 }
3628 @java.lang.Override
3629 public int getIterationLimit() {
3630 return iterationLimit_;
3631 }
3642 public Builder setIterationLimit(int value) {
3643
3644 iterationLimit_ = value;
3645 bitField0_ |= 0x00000100;
3646 onChanged();
3647 return this;
3648 }
3659 bitField0_ = (bitField0_ & ~0x00000100);
3660 iterationLimit_ = 2147483647;
3661 onChanged();
3662 return this;
3663 }
3664
3665 private double kktMatrixPassLimit_ = Double.POSITIVE_INFINITY;
3675 @java.lang.Override
3676 public boolean hasKktMatrixPassLimit() {
3677 return ((bitField0_ & 0x00000200) != 0);
3678 }
3688 @java.lang.Override
3689 public double getKktMatrixPassLimit() {
3690 return kktMatrixPassLimit_;
3691 }
3702 public Builder setKktMatrixPassLimit(double value) {
3703
3704 kktMatrixPassLimit_ = value;
3705 bitField0_ |= 0x00000200;
3706 onChanged();
3707 return this;
3708 }
3719 bitField0_ = (bitField0_ & ~0x00000200);
3720 kktMatrixPassLimit_ = Double.POSITIVE_INFINITY;
3721 onChanged();
3722 return this;
3723 }
3724
3725 // @@protoc_insertion_point(builder_scope:operations_research.pdlp.TerminationCriteria)
3726 }
3727
3728 // @@protoc_insertion_point(class_scope:operations_research.pdlp.TerminationCriteria)
3729 private static final com.google.ortools.pdlp.TerminationCriteria DEFAULT_INSTANCE;
3730 static {
3731 DEFAULT_INSTANCE = new com.google.ortools.pdlp.TerminationCriteria();
3732 }
3733
3735 return DEFAULT_INSTANCE;
3736 }
3737
3738 private static final com.google.protobuf.Parser<TerminationCriteria>
3739 PARSER = new com.google.protobuf.AbstractParser<TerminationCriteria>() {
3740 @java.lang.Override
3741 public TerminationCriteria parsePartialFrom(
3742 com.google.protobuf.CodedInputStream input,
3743 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3744 throws com.google.protobuf.InvalidProtocolBufferException {
3745 Builder builder = newBuilder();
3746 try {
3747 builder.mergeFrom(input, extensionRegistry);
3748 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3749 throw e.setUnfinishedMessage(builder.buildPartial());
3750 } catch (com.google.protobuf.UninitializedMessageException e) {
3751 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
3752 } catch (java.io.IOException e) {
3753 throw new com.google.protobuf.InvalidProtocolBufferException(e)
3754 .setUnfinishedMessage(builder.buildPartial());
3755 }
3756 return builder.buildPartial();
3757 }
3758 };
3759
3760 public static com.google.protobuf.Parser<TerminationCriteria> parser() {
3761 return PARSER;
3762 }
3763
3764 @java.lang.Override
3765 public com.google.protobuf.Parser<TerminationCriteria> getParserForType() {
3766 return PARSER;
3767 }
3768
3769 @java.lang.Override
3771 return DEFAULT_INSTANCE;
3772 }
3773
3774}
3775
com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
com.google.ortools.pdlp.TerminationCriteria build()
Builder setOptimalityNorm(com.google.ortools.pdlp.OptimalityNorm value)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder getDetailedOptimalityCriteriaOrBuilder()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder getSimpleOptimalityCriteriaBuilder()
Builder mergeSimpleOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria value)
com.google.ortools.pdlp.TerminationCriteria buildPartial()
Builder setSimpleOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria.Builder builderForValue)
com.google.ortools.pdlp.TerminationCriteria getDefaultInstanceForType()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder getSimpleOptimalityCriteriaOrBuilder()
Builder setSimpleOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria value)
com.google.ortools.pdlp.OptimalityNorm getOptimalityNorm()
Builder setDetailedOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria value)
Builder setDetailedOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder builderForValue)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria getSimpleOptimalityCriteria()
Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria getDetailedOptimalityCriteria()
Builder mergeFrom(com.google.protobuf.Message other)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria.Builder getDetailedOptimalityCriteriaBuilder()
Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria other)
Builder mergeDetailedOptimalityCriteria(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria value)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria buildPartial()
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria build()
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria other)
Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria getDefaultInstanceForType()
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(java.io.InputStream input)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria getDefaultInstance()
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseDelimitedFrom(java.io.InputStream input)
static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria prototype)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
com.google.protobuf.Parser< DetailedOptimalityCriteria > getParserForType()
Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(com.google.protobuf.ByteString data)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria getDefaultInstanceForType()
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(java.nio.ByteBuffer data)
static com.google.protobuf.Parser< DetailedOptimalityCriteria > parser()
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(com.google.protobuf.CodedInputStream input)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria parseFrom(byte[] data)
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria build()
Builder mergeFrom(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria other)
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria buildPartial()
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria getDefaultInstanceForType()
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(java.io.InputStream input)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(byte[] data)
Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseDelimitedFrom(java.io.InputStream input)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(java.nio.ByteBuffer data)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria getDefaultInstance()
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
static com.google.protobuf.Parser< SimpleOptimalityCriteria > parser()
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(com.google.protobuf.ByteString data)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria getDefaultInstanceForType()
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
com.google.protobuf.Parser< SimpleOptimalityCriteria > getParserForType()
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria prototype)
static com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria parseFrom(com.google.protobuf.CodedInputStream input)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(java.io.InputStream input)
boolean equals(final java.lang.Object obj)
com.google.protobuf.Parser< TerminationCriteria > getParserForType()
static com.google.ortools.pdlp.TerminationCriteria parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.pdlp.TerminationCriteria getDefaultInstanceForType()
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria getSimpleOptimalityCriteria()
com.google.ortools.pdlp.OptimalityNorm getOptimalityNorm()
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
static com.google.ortools.pdlp.TerminationCriteria parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder getDetailedOptimalityCriteriaOrBuilder()
static com.google.protobuf.Parser< TerminationCriteria > parser()
static com.google.ortools.pdlp.TerminationCriteria parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Builder newBuilder(com.google.ortools.pdlp.TerminationCriteria prototype)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(byte[] data)
static com.google.ortools.pdlp.TerminationCriteria parseDelimitedFrom(java.io.InputStream input)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
static com.google.ortools.pdlp.TerminationCriteria parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(com.google.protobuf.CodedInputStream input)
void writeTo(com.google.protobuf.CodedOutputStream output)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(java.nio.ByteBuffer data)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.pdlp.TerminationCriteria parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria getDetailedOptimalityCriteria()
static com.google.ortools.pdlp.TerminationCriteria getDefaultInstance()
static com.google.ortools.pdlp.TerminationCriteria parseFrom(com.google.protobuf.ByteString data)
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder getSimpleOptimalityCriteriaOrBuilder()