/// <summary> /// Creates a new instance of <see cref="NonAdoptableFailureMechanismSectionResult"/>. /// </summary> /// <param name="sectionResult">The <see cref="NonAdoptableFailureMechanismSectionResult"/> that is /// the source of this row.</param> /// <param name="failureMechanismSectionResultRowErrorProvider">The error provider to use for /// the failure mechanism section result row.</param> /// <param name="assessmentSection">The assessment section the section result belongs to.</param> /// <param name="constructionProperties">The property values required to create an instance of /// <see cref="NonAdoptableFailureMechanismSectionResultRow"/>.</param> /// <exception cref="ArgumentNullException">Throw when any parameter is <c>null</c>.</exception> public NonAdoptableFailureMechanismSectionResultRow(NonAdoptableFailureMechanismSectionResult sectionResult, IFailureMechanismSectionResultRowErrorProvider failureMechanismSectionResultRowErrorProvider, IAssessmentSection assessmentSection, ConstructionProperties constructionProperties) : base(sectionResult) { if (failureMechanismSectionResultRowErrorProvider == null) { throw new ArgumentNullException(nameof(failureMechanismSectionResultRowErrorProvider)); } if (assessmentSection == null) { throw new ArgumentNullException(nameof(assessmentSection)); } if (constructionProperties == null) { throw new ArgumentNullException(nameof(constructionProperties)); } this.failureMechanismSectionResultRowErrorProvider = failureMechanismSectionResultRowErrorProvider; this.assessmentSection = assessmentSection; initialFailureMechanismResultTypeIndex = constructionProperties.InitialFailureMechanismResultTypeIndex; initialFailureMechanismResultSectionProbabilityIndex = constructionProperties.InitialFailureMechanismResultSectionProbabilityIndex; furtherAnalysisTypeIndex = constructionProperties.FurtherAnalysisTypeIndex; refinedSectionProbabilityIndex = constructionProperties.RefinedSectionProbabilityIndex; sectionProbabilityIndex = constructionProperties.SectionProbabilityIndex; assemblyGroupIndex = constructionProperties.AssemblyGroupIndex; CreateColumnStateDefinitions(); Update(); }
/// <summary> /// Creates a new instance of <see cref="NonAdoptableWithProfileProbabilityFailureMechanismSectionResultRow"/>. /// </summary> /// <param name="sectionResult">The <see cref="NonAdoptableWithProfileProbabilityFailureMechanismSectionResult"/> that is /// the source of this row.</param> /// <param name="failureMechanismSectionResultRowErrorProvider">The error provider to use for /// the failure mechanism section result row.</param> /// <param name="performAssemblyFunc">Function to perform the assembly.</param> /// <param name="constructionProperties">The property values required to create an instance of /// <see cref="NonAdoptableWithProfileProbabilityFailureMechanismSectionResultRow"/>.</param> /// <exception cref="ArgumentNullException">Throw when any parameter is <c>null</c>.</exception> public NonAdoptableWithProfileProbabilityFailureMechanismSectionResultRow(NonAdoptableWithProfileProbabilityFailureMechanismSectionResult sectionResult, IFailureMechanismSectionResultRowErrorProvider failureMechanismSectionResultRowErrorProvider, Func <FailureMechanismSectionAssemblyResultWrapper> performAssemblyFunc, ConstructionProperties constructionProperties) : base(sectionResult) { if (failureMechanismSectionResultRowErrorProvider == null) { throw new ArgumentNullException(nameof(failureMechanismSectionResultRowErrorProvider)); } if (performAssemblyFunc == null) { throw new ArgumentNullException(nameof(performAssemblyFunc)); } if (constructionProperties == null) { throw new ArgumentNullException(nameof(constructionProperties)); } this.failureMechanismSectionResultRowErrorProvider = failureMechanismSectionResultRowErrorProvider; this.performAssemblyFunc = performAssemblyFunc; initialFailureMechanismResultTypeIndex = constructionProperties.InitialFailureMechanismResultTypeIndex; initialFailureMechanismResultProfileProbabilityIndex = constructionProperties.InitialFailureMechanismResultProfileProbabilityIndex; initialFailureMechanismResultSectionProbabilityIndex = constructionProperties.InitialFailureMechanismResultSectionProbabilityIndex; furtherAnalysisTypeIndex = constructionProperties.FurtherAnalysisTypeIndex; refinedProfileProbabilityIndex = constructionProperties.RefinedProfileProbabilityIndex; refinedSectionProbabilityIndex = constructionProperties.RefinedSectionProbabilityIndex; profileProbabilityIndex = constructionProperties.ProfileProbabilityIndex; sectionProbabilityIndex = constructionProperties.SectionProbabilityIndex; sectionNIndex = constructionProperties.SectionNIndex; assemblyGroupIndex = constructionProperties.AssemblyGroupIndex; CreateColumnStateDefinitions(); Update(); }