コード例 #1
0
        private Tristate AddressExplicitBiomom( )
        {
            Tristate explicitBiomomPass1 = (Tristate)_drValue.ExplicitShareBiomomPass1;
            if ( explicitBiomomPass1 != Tristate.DoNotKnow ) return explicitBiomomPass1;

            DataColumn dcPass1 = _dsLinks.tblRelatedValues.ExplicitShareBiomomPass1Column;
            PairShare[] pairs = PairShare.BuildRelatedPairsOfGen1Housemates(dcPass1, _drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2, _drLeft.ExtendedID, _dsLinks);

            InterpolateShare interpolate = new InterpolateShare(pairs);
            return interpolate.Interpolate(_drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2);
        }
コード例 #2
0
        private Tristate AddressImplicitBiomom( )
        {
            Tristate implicitBiomomPass1 = (Tristate)_drValue.ImplicitShareBiomomPass1;
            if ( implicitBiomomPass1 != Tristate.DoNotKnow ) return implicitBiomomPass1;
            const Bioparent bioparent = Bioparent.Mom;

            DataColumn dcPass1 = _dsLinks.tblRelatedValues.ImplicitShareBiomomPass1Column;
            PairShare[] pairs = PairShare.BuildRelatedPairsOfGen1Housemates(dcPass1, _drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2, _drLeft.ExtendedID, _dsLinks);

            InterpolateShare interpolate = new InterpolateShare(pairs);
            Tristate newShare = interpolate.Interpolate(_drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2);

            if ( newShare != Tristate.DoNotKnow ) {
                return newShare;
            }
            else {
                MarkerEvidence alwaysWithBothBioparents = MarkerGen1.RetrieveParentMarkerSingleYear(_idRelatedOlderAboutYounger, MarkerType.Gen1AlwaysLivedWithBothBioparents, bioparent, _dtMarkersGen1);
                MarkerEvidence inHH1980 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomInHH, 1980, bioparent, _dtMarkersGen1);
                MarkerEvidence inHH1978 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomInHH, 1978, bioparent, _dtMarkersGen1);
                MarkerEvidence inHH1977 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomInHH, 1977, bioparent, _dtMarkersGen1);
                MarkerEvidence inHH1976 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomInHH, 1976, bioparent, _dtMarkersGen1);
                MarkerEvidence birthCountry = MarkerGen1.RetrieveParentMarkerSingleYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomBirthCountry, bioparent, _dtMarkersGen1);
                MarkerEvidence birthState = MarkerGen1.RetrieveParentMarkerSingleYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomBirthState, bioparent, _dtMarkersGen1);
                MarkerEvidence birthYearAskedIn1988 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomBirthYear, 1988, bioparent, _dtMarkersGen1);
                MarkerEvidence birthYearAskedIn1987 = MarkerGen1.RetrieveParentMarkerMultiYear(_idRelatedOlderAboutYounger, MarkerType.Gen1BiomomBirthYear, 1987, bioparent, _dtMarkersGen1);
                return ImplicitShareBioparent(alwaysWithBothBioparents, inHH1980, inHH1978, inHH1977, inHH1976, birthCountry, birthState, birthYearAskedIn1988, birthYearAskedIn1987);
            }
        }
コード例 #3
0
        private Tristate AddressBiomom( Tristate explicitShare, Tristate implicitShare )
        {
            Tristate biomomPass1 = (Tristate)_drValue.ShareBiomomPass1;
            if ( biomomPass1 != Tristate.DoNotKnow ) return biomomPass1;

            DataColumn dcPass1 = _dsLinks.tblRelatedValues.ShareBiomomPass1Column;
            PairShare[] pairs = PairShare.BuildRelatedPairsOfGen1Housemates(dcPass1, _drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2, _drLeft.ExtendedID, _dsLinks);

            InterpolateShare interpolate = new InterpolateShare(pairs);
            Tristate newShare = interpolate.Interpolate(_drLeft.SubjectTag_S1, _drLeft.SubjectTag_S2);
            if ( newShare != Tristate.DoNotKnow )
                return newShare;
            else
                return CommonFunctions.TakePriority(explicitShare, implicitShare);
        }