public override bool Equals(XModels.XScanClass scan, float epsilon) { XModels.XScanStar sscan = scan.Star; return(base.Equals(scan) && this.AbsoluteMagnitude == sscan.AbsoluteMagnitude && this.StellarMass == sscan.StellarMass && this.Age_MY == sscan.Age_MY && this.StarTypeId == sscan.StarTypeId && (sscan.LuminosityId == 0 || this.LuminosityId == null || this.LuminosityId == sscan.LuminosityId)); }
public override List <CompareResult> GetDifferingProps(XScanClass scandata, List <CompareResult> diffs) { XModels.XScanStar sscan = scandata.Star; base.GetDifferingProps(scandata, diffs); CompareResult.AddIfUnequal(diffs, this, "AbsoluteMagnitude", this.AbsoluteMagnitude, sscan.AbsoluteMagnitude); CompareResult.AddIfUnequal(diffs, this, "StellarMass", this.StellarMass, sscan.StellarMass); CompareResult.AddIfUnequal(diffs, this, "Age_MY", this.Age_MY, sscan.Age_MY); CompareResult.AddIfUnequal(diffs, this, "StarTypeId", this.StarTypeId, sscan.StarTypeId); CompareResult.AddIfUnequal(diffs, this, "LuminosityId", this.LuminosityId, sscan.LuminosityId == 0 ? null : (byte?)sscan.LuminosityId); return(diffs); }