public override int GetHashCode() { int hash = 1; if (HasLastReadTime) { hash ^= LastReadTime.GetHashCode(); } if (HasLastMessageTime) { hash ^= LastMessageTime.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public void ApplyStateVector(StateVector stateVector, long version) { lock (_SyncLock) { LastSeenInOpenSkyUtc = DateTime.UtcNow; Version = Math.Max(Version, Callsign.UpdateValue(stateVector.Callsign, version)); Version = Math.Max(Version, OriginCountry.UpdateValue(stateVector.OriginCountry, version)); Version = Math.Max(Version, LastPositionTime.UpdateValue(stateVector.TimeOfLastPosition, version)); Version = Math.Max(Version, LastMessageTime.UpdateValue(stateVector.TimeOfLastMessage, version)); Version = Math.Max(Version, Latitude.UpdateValue(stateVector.Latitude, version)); Version = Math.Max(Version, Longitude.UpdateValue(stateVector.Longitude, version)); Version = Math.Max(Version, AltitudeFeet.UpdateValue(stateVector.AltitudeFeet, version)); Version = Math.Max(Version, OnGround.UpdateValue(stateVector.OnGround, version)); Version = Math.Max(Version, GroundSpeedKnots.UpdateValue(stateVector.GroundSpeedKnots, version)); Version = Math.Max(Version, Track.UpdateValue(stateVector.Track, version)); Version = Math.Max(Version, VerticalRateFeetPerSecond.UpdateValue(stateVector.VerticalRateFeetPerSecond, version)); Version = Math.Max(Version, Squawk.UpdateValue(stateVector.Squawk, version)); Version = Math.Max(Version, SpecialPurposeIndicator.UpdateValue(stateVector.SpecialPurposeIndicator, version)); Version = Math.Max(Version, PositionSource.UpdateValue(stateVector.PositionSource, version)); } }