// Copyright (C) Stichting Deltares 2018. All rights reserved. // // This file is part of Ringtoets. // // Ringtoets is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . // // All names, logos, and references to "Deltares" are registered trademarks of // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. using System; namespace Ringtoets.Integration.Data.Merge { /// /// Class that holds the merge data. /// public class AssessmentSectionMergeData { /// /// Creates a new instance of . /// /// The assessment section to merge. /// The container of the properties for the /// . /// Thrown when any parameter is null. public AssessmentSectionMergeData(AssessmentSection assessmentSection, ConstructionProperties properties) { if (assessmentSection == null) { throw new ArgumentNullException(nameof(assessmentSection)); } if (properties == null) { throw new ArgumentNullException(nameof(properties)); } AssessmentSection = assessmentSection; MergePiping = properties.MergePiping; MergeGrassCoverErosionInwards = properties.MergeGrassCoverErosionInwards; MergeMacroStabilityInwards = properties.MergeMacroStabilityInwards; MergeMacroStabilityOutwards = properties.MergeMacroStabilityOutwards; MergeMicrostability = properties.MergeMicrostability; MergeStabilityStoneCover = properties.MergeStabilityStoneCover; MergeWaveImpactAsphaltCover = properties.MergeWaveImpactAsphaltCover; MergeWaterPressureAsphaltCover = properties.MergeWaterPressureAsphaltCover; MergeGrassCoverErosionOutwards = properties.MergeGrassCoverErosionOutwards; MergeGrassCoverSlipOffOutwards = properties.MergeGrassCoverSlipOffOutwards; MergeGrassCoverSlipOffInwards = properties.MergeGrassCoverSlipOffInwards; MergeHeightStructures = properties.MergeHeightStructures; MergeClosingStructures = properties.MergeClosingStructures; MergePipingStructure = properties.MergePipingStructure; MergeStabilityPointStructures = properties.MergeStabilityPointStructures; MergeStrengthStabilityLengthwiseConstruction = properties.MergeStrengthStabilityLengthwiseConstruction; MergeDuneErosion = properties.MergeDuneErosion; MergeTechnicalInnovation = properties.MergeTechnicalInnovation; } /// /// Gets the assessment section to merge. /// public AssessmentSection AssessmentSection { get; } /// /// Gets the indicator whether piping should be merged. /// public bool MergePiping { get; } /// /// Gets the indicator whether grass cover erosion inwards should be merged. /// public bool MergeGrassCoverErosionInwards { get; } /// /// Gets the indicator whether macro stability inwards should be merged. /// public bool MergeMacroStabilityInwards { get; } /// /// Gets the indicator whether macro stability outwards should be merged. /// public bool MergeMacroStabilityOutwards { get; } /// /// Gets the indicator whether microstability should be merged. /// public bool MergeMicrostability { get; } /// /// Gets the indicator whether stability stone cover should be merged. /// public bool MergeStabilityStoneCover { get; } /// /// Gets the indicator whether wave impact asphalt cover should be merged. /// public bool MergeWaveImpactAsphaltCover { get; } /// /// Gets the indicator whether water pressure asphalt cover should be merged. /// public bool MergeWaterPressureAsphaltCover { get; } /// /// Gets the indicator whether grass cover erosion outwards should be merged. /// public bool MergeGrassCoverErosionOutwards { get; } /// /// Gets the indicator whether grass cover slip off outwards should be merged. /// public bool MergeGrassCoverSlipOffOutwards { get; } /// /// Gets the indicator whether grass cover slip off inwards should be merged. /// public bool MergeGrassCoverSlipOffInwards { get; } /// /// Gets the indicator whether height structures should be merged. /// public bool MergeHeightStructures { get; } /// /// Gets the indicator whether closing structures should be merged. /// public bool MergeClosingStructures { get; } /// /// Gets the indicator whether piping structure should be merged. /// public bool MergePipingStructure { get; } /// /// Gets the indicator whether stability point structures should be merged. /// public bool MergeStabilityPointStructures { get; } /// /// Gets the indicator whether strength stability lengthwise construction should be merged. /// public bool MergeStrengthStabilityLengthwiseConstruction { get; } /// /// Gets the indicator whether dune erosion should be merged. /// public bool MergeDuneErosion { get; } /// /// Gets the indicator whether technical innovation should be merged. /// public bool MergeTechnicalInnovation { get; } /// /// Container for properties for constructing an . /// public class ConstructionProperties { /// /// Gets or sets the indicator whether piping should be merged. /// public bool MergePiping { internal get; set; } /// /// Gets or sets the indicator whether grass cover erosion inwards should be merged. /// public bool MergeGrassCoverErosionInwards { internal get; set; } /// /// Gets or sets the indicator whether macro stability inwards should be merged. /// public bool MergeMacroStabilityInwards { internal get; set; } /// /// Gets or sets the indicator whether macro stability outwards should be merged. /// public bool MergeMacroStabilityOutwards { internal get; set; } /// /// Gets or sets the indicator whether microstability should be merged. /// public bool MergeMicrostability { internal get; set; } /// /// Gets or sets the indicator whether stability stone cover should be merged. /// public bool MergeStabilityStoneCover { internal get; set; } /// /// Gets or sets the indicator whether wave impact asphalt cover should be merged. /// public bool MergeWaveImpactAsphaltCover { internal get; set; } /// /// Gets or sets the indicator whether water pressure asphalt cover should be merged. /// public bool MergeWaterPressureAsphaltCover { internal get; set; } /// /// Gets or sets the indicator whether grass cover erosion outwards should be merged. /// public bool MergeGrassCoverErosionOutwards { internal get; set; } /// /// Gets or sets the indicator whether grass cover slip off outwards should be merged. /// public bool MergeGrassCoverSlipOffOutwards { internal get; set; } /// /// Gets or sets the indicator whether grass cover slip off inwards should be merged. /// public bool MergeGrassCoverSlipOffInwards { internal get; set; } /// /// Gets or sets the indicator whether height structures should be merged. /// public bool MergeHeightStructures { internal get; set; } /// /// Gets or sets the indicator whether closing structures should be merged. /// public bool MergeClosingStructures { internal get; set; } /// /// Gets or sets the indicator whether piping structure should be merged. /// public bool MergePipingStructure { internal get; set; } /// /// Gets or sets the indicator whether stability point structures should be merged. /// public bool MergeStabilityPointStructures { internal get; set; } /// /// Gets or sets the indicator whether strength stability lengthwise construction should be merged. /// public bool MergeStrengthStabilityLengthwiseConstruction { internal get; set; } /// /// Gets or sets the indicator whether dune erosion should be merged. /// public bool MergeDuneErosion { internal get; set; } /// /// Gets or sets the indicator whether technical innovation should be merged. /// public bool MergeTechnicalInnovation { internal get; set; } } } }