mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-23 01:21:42 +00:00
[wpimath] Fully discretized ElevatorFF and ArmFF (#7024)
Co-authored-by: Tyler Veness <calcmogul@gmail.com>
This commit is contained in:
committed by
GitHub
parent
5d9a553104
commit
4adfa8bf64
@@ -18,49 +18,51 @@ import us.hebi.quickbuf.ProtoUtil;
|
||||
import us.hebi.quickbuf.RepeatedByte;
|
||||
|
||||
public final class Controller {
|
||||
private static final RepeatedByte descriptorData = ProtoUtil.decodeBase64(1755,
|
||||
"ChBjb250cm9sbGVyLnByb3RvEgl3cGkucHJvdG8iWAoWUHJvdG9idWZBcm1GZWVkZm9yd2FyZBIOCgJr" +
|
||||
"cxgBIAEoAVICa3MSDgoCa2cYAiABKAFSAmtnEg4KAmt2GAMgASgBUgJrdhIOCgJrYRgEIAEoAVICa2Ei" +
|
||||
"ngEKJFByb3RvYnVmRGlmZmVyZW50aWFsRHJpdmVGZWVkZm9yd2FyZBIbCglrdl9saW5lYXIYASABKAFS" +
|
||||
"CGt2TGluZWFyEhsKCWthX2xpbmVhchgCIAEoAVIIa2FMaW5lYXISHQoKa3ZfYW5ndWxhchgDIAEoAVIJ" +
|
||||
"a3ZBbmd1bGFyEh0KCmthX2FuZ3VsYXIYBCABKAFSCWthQW5ndWxhciJdChtQcm90b2J1ZkVsZXZhdG9y" +
|
||||
"RmVlZGZvcndhcmQSDgoCa3MYASABKAFSAmtzEg4KAmtnGAIgASgBUgJrZxIOCgJrdhgDIAEoAVICa3YS" +
|
||||
"DgoCa2EYBCABKAFSAmthImAKHlByb3RvYnVmU2ltcGxlTW90b3JGZWVkZm9yd2FyZBIOCgJrcxgBIAEo" +
|
||||
"AVICa3MSDgoCa3YYAiABKAFSAmt2Eg4KAmthGAMgASgBUgJrYRIOCgJkdBgEIAEoAVICZHQiUgomUHJv" +
|
||||
"dG9idWZEaWZmZXJlbnRpYWxEcml2ZVdoZWVsVm9sdGFnZXMSEgoEbGVmdBgBIAEoAVIEbGVmdBIUCgVy" +
|
||||
"aWdodBgCIAEoAVIFcmlnaHRCGgoYZWR1LndwaS5maXJzdC5tYXRoLnByb3RvSocJCgYSBAAAJQEKCAoB" +
|
||||
"DBIDAAASCggKAQISAwIAEgoICgEIEgMEADEKCQoCCAESAwQAMQoKCgIEABIEBgALAQoKCgMEAAESAwYI" +
|
||||
"HgoLCgQEAAIAEgMHAhAKDAoFBAACAAUSAwcCCAoMCgUEAAIAARIDBwkLCgwKBQQAAgADEgMHDg8KCwoE" +
|
||||
"BAACARIDCAIQCgwKBQQAAgEFEgMIAggKDAoFBAACAQESAwgJCwoMCgUEAAIBAxIDCA4PCgsKBAQAAgIS" +
|
||||
"AwkCEAoMCgUEAAICBRIDCQIICgwKBQQAAgIBEgMJCQsKDAoFBAACAgMSAwkODwoLCgQEAAIDEgMKAhAK" +
|
||||
"DAoFBAACAwUSAwoCCAoMCgUEAAIDARIDCgkLCgwKBQQAAgMDEgMKDg8KCgoCBAESBA0AEgEKCgoDBAEB" +
|
||||
"EgMNCCwKCwoEBAECABIDDgIXCgwKBQQBAgAFEgMOAggKDAoFBAECAAESAw4JEgoMCgUEAQIAAxIDDhUW" +
|
||||
"CgsKBAQBAgESAw8CFwoMCgUEAQIBBRIDDwIICgwKBQQBAgEBEgMPCRIKDAoFBAECAQMSAw8VFgoLCgQE" +
|
||||
"AQICEgMQAhgKDAoFBAECAgUSAxACCAoMCgUEAQICARIDEAkTCgwKBQQBAgIDEgMQFhcKCwoEBAECAxID" +
|
||||
"EQIYCgwKBQQBAgMFEgMRAggKDAoFBAECAwESAxEJEwoMCgUEAQIDAxIDERYXCgoKAgQCEgQUABkBCgoK" +
|
||||
"AwQCARIDFAgjCgsKBAQCAgASAxUCEAoMCgUEAgIABRIDFQIICgwKBQQCAgABEgMVCQsKDAoFBAICAAMS",
|
||||
"AxUODwoLCgQEAgIBEgMWAhAKDAoFBAICAQUSAxYCCAoMCgUEAgIBARIDFgkLCgwKBQQCAgEDEgMWDg8K" +
|
||||
"CwoEBAICAhIDFwIQCgwKBQQCAgIFEgMXAggKDAoFBAICAgESAxcJCwoMCgUEAgICAxIDFw4PCgsKBAQC" +
|
||||
"AgMSAxgCEAoMCgUEAgIDBRIDGAIICgwKBQQCAgMBEgMYCQsKDAoFBAICAwMSAxgODwoKCgIEAxIEGwAg" +
|
||||
"AQoKCgMEAwESAxsIJgoLCgQEAwIAEgMcAhAKDAoFBAMCAAUSAxwCCAoMCgUEAwIAARIDHAkLCgwKBQQD" +
|
||||
"AgADEgMcDg8KCwoEBAMCARIDHQIQCgwKBQQDAgEFEgMdAggKDAoFBAMCAQESAx0JCwoMCgUEAwIBAxID" +
|
||||
"HQ4PCgsKBAQDAgISAx4CEAoMCgUEAwICBRIDHgIICgwKBQQDAgIBEgMeCQsKDAoFBAMCAgMSAx4ODwoL" +
|
||||
"CgQEAwIDEgMfAhAKDAoFBAMCAwUSAx8CCAoMCgUEAwIDARIDHwkLCgwKBQQDAgMDEgMfDg8KCgoCBAQS" +
|
||||
"BCIAJQEKCgoDBAQBEgMiCC4KCwoEBAQCABIDIwISCgwKBQQEAgAFEgMjAggKDAoFBAQCAAESAyMJDQoM" +
|
||||
"CgUEBAIAAxIDIxARCgsKBAQEAgESAyQCEwoMCgUEBAIBBRIDJAIICgwKBQQEAgEBEgMkCQ4KDAoFBAQC" +
|
||||
"AQMSAyQREmIGcHJvdG8z");
|
||||
private static final RepeatedByte descriptorData = ProtoUtil.decodeBase64(1897,
|
||||
"ChBjb250cm9sbGVyLnByb3RvEgl3cGkucHJvdG8iaAoWUHJvdG9idWZBcm1GZWVkZm9yd2FyZBIOCgJr" +
|
||||
"cxgBIAEoAVICa3MSDgoCa2cYAiABKAFSAmtnEg4KAmt2GAMgASgBUgJrdhIOCgJrYRgEIAEoAVICa2ES" +
|
||||
"DgoCZHQYBSABKAFSAmR0Ip4BCiRQcm90b2J1ZkRpZmZlcmVudGlhbERyaXZlRmVlZGZvcndhcmQSGwoJ" +
|
||||
"a3ZfbGluZWFyGAEgASgBUghrdkxpbmVhchIbCglrYV9saW5lYXIYAiABKAFSCGthTGluZWFyEh0KCmt2" +
|
||||
"X2FuZ3VsYXIYAyABKAFSCWt2QW5ndWxhchIdCgprYV9hbmd1bGFyGAQgASgBUglrYUFuZ3VsYXIibQob" +
|
||||
"UHJvdG9idWZFbGV2YXRvckZlZWRmb3J3YXJkEg4KAmtzGAEgASgBUgJrcxIOCgJrZxgCIAEoAVICa2cS" +
|
||||
"DgoCa3YYAyABKAFSAmt2Eg4KAmthGAQgASgBUgJrYRIOCgJkdBgFIAEoAVICZHQiYAoeUHJvdG9idWZT" +
|
||||
"aW1wbGVNb3RvckZlZWRmb3J3YXJkEg4KAmtzGAEgASgBUgJrcxIOCgJrdhgCIAEoAVICa3YSDgoCa2EY" +
|
||||
"AyABKAFSAmthEg4KAmR0GAQgASgBUgJkdCJSCiZQcm90b2J1ZkRpZmZlcmVudGlhbERyaXZlV2hlZWxW" +
|
||||
"b2x0YWdlcxISCgRsZWZ0GAEgASgBUgRsZWZ0EhQKBXJpZ2h0GAIgASgBUgVyaWdodEIaChhlZHUud3Bp" +
|
||||
"LmZpcnN0Lm1hdGgucHJvdG9K9QkKBhIEAAAnAQoICgEMEgMAABIKCAoBAhIDAgASCggKAQgSAwQAMQoJ" +
|
||||
"CgIIARIDBAAxCgoKAgQAEgQGAAwBCgoKAwQAARIDBggeCgsKBAQAAgASAwcCEAoMCgUEAAIABRIDBwII" +
|
||||
"CgwKBQQAAgABEgMHCQsKDAoFBAACAAMSAwcODwoLCgQEAAIBEgMIAhAKDAoFBAACAQUSAwgCCAoMCgUE" +
|
||||
"AAIBARIDCAkLCgwKBQQAAgEDEgMIDg8KCwoEBAACAhIDCQIQCgwKBQQAAgIFEgMJAggKDAoFBAACAgES" +
|
||||
"AwkJCwoMCgUEAAICAxIDCQ4PCgsKBAQAAgMSAwoCEAoMCgUEAAIDBRIDCgIICgwKBQQAAgMBEgMKCQsK" +
|
||||
"DAoFBAACAwMSAwoODwoLCgQEAAIEEgMLAhAKDAoFBAACBAUSAwsCCAoMCgUEAAIEARIDCwkLCgwKBQQA" +
|
||||
"AgQDEgMLDg8KCgoCBAESBA4AEwEKCgoDBAEBEgMOCCwKCwoEBAECABIDDwIXCgwKBQQBAgAFEgMPAggK" +
|
||||
"DAoFBAECAAESAw8JEgoMCgUEAQIAAxIDDxUWCgsKBAQBAgESAxACFwoMCgUEAQIBBRIDEAIICgwKBQQB" +
|
||||
"AgEBEgMQCRIKDAoFBAECAQMSAxAVFgoLCgQEAQICEgMRAhgKDAoFBAECAgUSAxECCAoMCgUEAQICARID" +
|
||||
"EQkTCgwKBQQBAgIDEgMRFhcKCwoEBAECAxIDEgIYCgwKBQQBAgMFEgMSAggKDAoFBAECAwESAxIJEwoM",
|
||||
"CgUEAQIDAxIDEhYXCgoKAgQCEgQVABsBCgoKAwQCARIDFQgjCgsKBAQCAgASAxYCEAoMCgUEAgIABRID" +
|
||||
"FgIICgwKBQQCAgABEgMWCQsKDAoFBAICAAMSAxYODwoLCgQEAgIBEgMXAhAKDAoFBAICAQUSAxcCCAoM" +
|
||||
"CgUEAgIBARIDFwkLCgwKBQQCAgEDEgMXDg8KCwoEBAICAhIDGAIQCgwKBQQCAgIFEgMYAggKDAoFBAIC" +
|
||||
"AgESAxgJCwoMCgUEAgICAxIDGA4PCgsKBAQCAgMSAxkCEAoMCgUEAgIDBRIDGQIICgwKBQQCAgMBEgMZ" +
|
||||
"CQsKDAoFBAICAwMSAxkODwoLCgQEAgIEEgMaAhAKDAoFBAICBAUSAxoCCAoMCgUEAgIEARIDGgkLCgwK" +
|
||||
"BQQCAgQDEgMaDg8KCgoCBAMSBB0AIgEKCgoDBAMBEgMdCCYKCwoEBAMCABIDHgIQCgwKBQQDAgAFEgMe" +
|
||||
"AggKDAoFBAMCAAESAx4JCwoMCgUEAwIAAxIDHg4PCgsKBAQDAgESAx8CEAoMCgUEAwIBBRIDHwIICgwK" +
|
||||
"BQQDAgEBEgMfCQsKDAoFBAMCAQMSAx8ODwoLCgQEAwICEgMgAhAKDAoFBAMCAgUSAyACCAoMCgUEAwIC" +
|
||||
"ARIDIAkLCgwKBQQDAgIDEgMgDg8KCwoEBAMCAxIDIQIQCgwKBQQDAgMFEgMhAggKDAoFBAMCAwESAyEJ" +
|
||||
"CwoMCgUEAwIDAxIDIQ4PCgoKAgQEEgQkACcBCgoKAwQEARIDJAguCgsKBAQEAgASAyUCEgoMCgUEBAIA" +
|
||||
"BRIDJQIICgwKBQQEAgABEgMlCQ0KDAoFBAQCAAMSAyUQEQoLCgQEBAIBEgMmAhMKDAoFBAQCAQUSAyYC" +
|
||||
"CAoMCgUEBAIBARIDJgkOCgwKBQQEAgEDEgMmERJiBnByb3RvMw==");
|
||||
|
||||
static final Descriptors.FileDescriptor descriptor = Descriptors.FileDescriptor.internalBuildGeneratedFileFrom("controller.proto", "wpi.proto", descriptorData);
|
||||
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufArmFeedforward_descriptor = descriptor.internalContainedType(31, 88, "ProtobufArmFeedforward", "wpi.proto.ProtobufArmFeedforward");
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufArmFeedforward_descriptor = descriptor.internalContainedType(31, 104, "ProtobufArmFeedforward", "wpi.proto.ProtobufArmFeedforward");
|
||||
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufDifferentialDriveFeedforward_descriptor = descriptor.internalContainedType(122, 158, "ProtobufDifferentialDriveFeedforward", "wpi.proto.ProtobufDifferentialDriveFeedforward");
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufDifferentialDriveFeedforward_descriptor = descriptor.internalContainedType(138, 158, "ProtobufDifferentialDriveFeedforward", "wpi.proto.ProtobufDifferentialDriveFeedforward");
|
||||
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufElevatorFeedforward_descriptor = descriptor.internalContainedType(282, 93, "ProtobufElevatorFeedforward", "wpi.proto.ProtobufElevatorFeedforward");
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufElevatorFeedforward_descriptor = descriptor.internalContainedType(298, 109, "ProtobufElevatorFeedforward", "wpi.proto.ProtobufElevatorFeedforward");
|
||||
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufSimpleMotorFeedforward_descriptor = descriptor.internalContainedType(377, 96, "ProtobufSimpleMotorFeedforward", "wpi.proto.ProtobufSimpleMotorFeedforward");
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufSimpleMotorFeedforward_descriptor = descriptor.internalContainedType(409, 96, "ProtobufSimpleMotorFeedforward", "wpi.proto.ProtobufSimpleMotorFeedforward");
|
||||
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufDifferentialDriveWheelVoltages_descriptor = descriptor.internalContainedType(475, 82, "ProtobufDifferentialDriveWheelVoltages", "wpi.proto.ProtobufDifferentialDriveWheelVoltages");
|
||||
static final Descriptors.Descriptor wpi_proto_ProtobufDifferentialDriveWheelVoltages_descriptor = descriptor.internalContainedType(507, 82, "ProtobufDifferentialDriveWheelVoltages", "wpi.proto.ProtobufDifferentialDriveWheelVoltages");
|
||||
|
||||
/**
|
||||
* @return this proto file's descriptor.
|
||||
@@ -95,6 +97,11 @@ public final class Controller {
|
||||
*/
|
||||
private double ka;
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
*/
|
||||
private double dt;
|
||||
|
||||
private ProtobufArmFeedforward() {
|
||||
}
|
||||
|
||||
@@ -253,6 +260,43 @@ public final class Controller {
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return whether the dt field is set
|
||||
*/
|
||||
public boolean hasDt() {
|
||||
return (bitField0_ & 0x00000010) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return this
|
||||
*/
|
||||
public ProtobufArmFeedforward clearDt() {
|
||||
bitField0_ &= ~0x00000010;
|
||||
dt = 0D;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return the dt
|
||||
*/
|
||||
public double getDt() {
|
||||
return dt;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @param value the dt to set
|
||||
* @return this
|
||||
*/
|
||||
public ProtobufArmFeedforward setDt(final double value) {
|
||||
bitField0_ |= 0x00000010;
|
||||
dt = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProtobufArmFeedforward copyFrom(final ProtobufArmFeedforward other) {
|
||||
cachedSize = other.cachedSize;
|
||||
@@ -262,6 +306,7 @@ public final class Controller {
|
||||
kg = other.kg;
|
||||
kv = other.kv;
|
||||
ka = other.ka;
|
||||
dt = other.dt;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
@@ -284,6 +329,9 @@ public final class Controller {
|
||||
if (other.hasKa()) {
|
||||
setKa(other.ka);
|
||||
}
|
||||
if (other.hasDt()) {
|
||||
setDt(other.dt);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -298,6 +346,7 @@ public final class Controller {
|
||||
kg = 0D;
|
||||
kv = 0D;
|
||||
ka = 0D;
|
||||
dt = 0D;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -324,7 +373,8 @@ public final class Controller {
|
||||
&& (!hasKs() || ProtoUtil.isEqual(ks, other.ks))
|
||||
&& (!hasKg() || ProtoUtil.isEqual(kg, other.kg))
|
||||
&& (!hasKv() || ProtoUtil.isEqual(kv, other.kv))
|
||||
&& (!hasKa() || ProtoUtil.isEqual(ka, other.ka));
|
||||
&& (!hasKa() || ProtoUtil.isEqual(ka, other.ka))
|
||||
&& (!hasDt() || ProtoUtil.isEqual(dt, other.dt));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -345,6 +395,10 @@ public final class Controller {
|
||||
output.writeRawByte((byte) 33);
|
||||
output.writeDoubleNoTag(ka);
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
output.writeRawByte((byte) 41);
|
||||
output.writeDoubleNoTag(dt);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -362,6 +416,9 @@ public final class Controller {
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
size += 9;
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
size += 9;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@@ -404,6 +461,15 @@ public final class Controller {
|
||||
ka = input.readDouble();
|
||||
bitField0_ |= 0x00000008;
|
||||
tag = input.readTag();
|
||||
if (tag != 41) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 41: {
|
||||
// dt
|
||||
dt = input.readDouble();
|
||||
bitField0_ |= 0x00000010;
|
||||
tag = input.readTag();
|
||||
if (tag != 0) {
|
||||
break;
|
||||
}
|
||||
@@ -437,6 +503,9 @@ public final class Controller {
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
output.writeDouble(FieldNames.ka, ka);
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
output.writeDouble(FieldNames.dt, dt);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@@ -491,6 +560,17 @@ public final class Controller {
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3216: {
|
||||
if (input.isAtField(FieldNames.dt)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
dt = input.readDouble();
|
||||
bitField0_ |= 0x00000010;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
@@ -558,6 +638,8 @@ public final class Controller {
|
||||
static final FieldName kv = FieldName.forField("kv");
|
||||
|
||||
static final FieldName ka = FieldName.forField("ka");
|
||||
|
||||
static final FieldName dt = FieldName.forField("dt");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1089,6 +1171,11 @@ public final class Controller {
|
||||
*/
|
||||
private double ka;
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
*/
|
||||
private double dt;
|
||||
|
||||
private ProtobufElevatorFeedforward() {
|
||||
}
|
||||
|
||||
@@ -1247,6 +1334,43 @@ public final class Controller {
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return whether the dt field is set
|
||||
*/
|
||||
public boolean hasDt() {
|
||||
return (bitField0_ & 0x00000010) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return this
|
||||
*/
|
||||
public ProtobufElevatorFeedforward clearDt() {
|
||||
bitField0_ &= ~0x00000010;
|
||||
dt = 0D;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @return the dt
|
||||
*/
|
||||
public double getDt() {
|
||||
return dt;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional double dt = 5;</code>
|
||||
* @param value the dt to set
|
||||
* @return this
|
||||
*/
|
||||
public ProtobufElevatorFeedforward setDt(final double value) {
|
||||
bitField0_ |= 0x00000010;
|
||||
dt = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProtobufElevatorFeedforward copyFrom(final ProtobufElevatorFeedforward other) {
|
||||
cachedSize = other.cachedSize;
|
||||
@@ -1256,6 +1380,7 @@ public final class Controller {
|
||||
kg = other.kg;
|
||||
kv = other.kv;
|
||||
ka = other.ka;
|
||||
dt = other.dt;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
@@ -1278,6 +1403,9 @@ public final class Controller {
|
||||
if (other.hasKa()) {
|
||||
setKa(other.ka);
|
||||
}
|
||||
if (other.hasDt()) {
|
||||
setDt(other.dt);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -1292,6 +1420,7 @@ public final class Controller {
|
||||
kg = 0D;
|
||||
kv = 0D;
|
||||
ka = 0D;
|
||||
dt = 0D;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -1318,7 +1447,8 @@ public final class Controller {
|
||||
&& (!hasKs() || ProtoUtil.isEqual(ks, other.ks))
|
||||
&& (!hasKg() || ProtoUtil.isEqual(kg, other.kg))
|
||||
&& (!hasKv() || ProtoUtil.isEqual(kv, other.kv))
|
||||
&& (!hasKa() || ProtoUtil.isEqual(ka, other.ka));
|
||||
&& (!hasKa() || ProtoUtil.isEqual(ka, other.ka))
|
||||
&& (!hasDt() || ProtoUtil.isEqual(dt, other.dt));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1339,6 +1469,10 @@ public final class Controller {
|
||||
output.writeRawByte((byte) 33);
|
||||
output.writeDoubleNoTag(ka);
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
output.writeRawByte((byte) 41);
|
||||
output.writeDoubleNoTag(dt);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1356,6 +1490,9 @@ public final class Controller {
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
size += 9;
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
size += 9;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@@ -1398,6 +1535,15 @@ public final class Controller {
|
||||
ka = input.readDouble();
|
||||
bitField0_ |= 0x00000008;
|
||||
tag = input.readTag();
|
||||
if (tag != 41) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 41: {
|
||||
// dt
|
||||
dt = input.readDouble();
|
||||
bitField0_ |= 0x00000010;
|
||||
tag = input.readTag();
|
||||
if (tag != 0) {
|
||||
break;
|
||||
}
|
||||
@@ -1431,6 +1577,9 @@ public final class Controller {
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
output.writeDouble(FieldNames.ka, ka);
|
||||
}
|
||||
if ((bitField0_ & 0x00000010) != 0) {
|
||||
output.writeDouble(FieldNames.dt, dt);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@@ -1485,6 +1634,17 @@ public final class Controller {
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3216: {
|
||||
if (input.isAtField(FieldNames.dt)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
dt = input.readDouble();
|
||||
bitField0_ |= 0x00000010;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
@@ -1553,6 +1713,8 @@ public final class Controller {
|
||||
static final FieldName kv = FieldName.forField("kv");
|
||||
|
||||
static final FieldName ka = FieldName.forField("ka");
|
||||
|
||||
static final FieldName dt = FieldName.forField("dt");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user