// Copyright (C) Stichting Deltares 2018. All rights reserved. // // This file is part of the Dam Engine. // // The Dam Engine is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero 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 Affero General Public License for more details. // // You should have received a copy of the GNU Affero 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 Deltares.DamEngine.Data.Design; using Deltares.DamEngine.Data.Geotechnics; namespace Deltares.DamEngine.Data.General.Results { public class PipingDesignResults { private string resultMessage = ""; private double? upliftFactor; private double? heaveFactor; private double? blighFactor; private double? blighHcritical; private double? sellmeijer4ForcesFactor; private double? sellmeijer4ForcesHcritical; private double? sellmeijerVnkFactor; private double? sellmeijerVnkHcritical; private double? wti2017Factor; private double? wti2017Hcritical; private double? localExitPointX; private UpliftSituation? upliftSituation; private SurfaceLine2 redesignedSurfaceLine; private readonly PipingModelType pipingModelType; public PipingDesignResults(PipingModelType aPipingModelType) { pipingModelType = aPipingModelType; } /// /// Gets or sets the result message. /// /// /// The result message. /// public string ResultMessage { get { return resultMessage; } set { resultMessage = value; } } public double? SafetyFactor() { switch (pipingModelType) { case PipingModelType.Bligh: return blighFactor; case PipingModelType.SellmeijerVnk: return sellmeijerVnkFactor; case PipingModelType.Sellmeijer4Forces: return sellmeijer4ForcesFactor; case PipingModelType.Wti2017: return wti2017Factor; default: return null; } } /// /// Gets or sets the uplift factor. /// /// /// The uplift factor. /// public double? UpliftFactor { get { return upliftFactor; } set { upliftFactor = value; } } /// /// Gets or sets the heave factor. /// /// /// The heave factor. /// public double? HeaveFactor { get { return heaveFactor; } set { heaveFactor = value; } } /// /// Gets or sets the bligh factor. /// /// /// The bligh factor. /// public double? BlighFactor { get { return blighFactor; } set { blighFactor = value; } } /// /// Gets or sets the bligh hcritical. /// /// /// The bligh hcritical. /// public double? BlighHcritical { get { return blighHcritical; } set { blighHcritical = value; } } /// /// Gets or sets the sellmeijer4 forces factor. /// /// /// The sellmeijer4 forces factor. /// public double? Sellmeijer4ForcesFactor { get { return sellmeijer4ForcesFactor; } set { sellmeijer4ForcesFactor = value; } } /// /// Gets or sets the sellmeijer4 forces hcritical. /// /// /// The sellmeijer4 forces hcritical. /// public double? Sellmeijer4ForcesHcritical { get { return sellmeijer4ForcesHcritical; } set { sellmeijer4ForcesHcritical = value; } } /// /// Gets or sets the sellmeijer VNK factor. /// /// /// The sellmeijer VNK factor. /// public double? SellmeijerVnkFactor { get { return sellmeijerVnkFactor; } set { sellmeijerVnkFactor = value; } } /// /// Gets or sets the sellmeijer VNK hcritical. /// /// /// The sellmeijer VNK hcritical. /// public double? SellmeijerVnkHcritical { get { return sellmeijerVnkHcritical; } set { sellmeijerVnkHcritical = value; } } /// /// Gets or sets the wti2017 factor. /// /// /// The wti2017 factor. /// public double? Wti2017Factor { get { return wti2017Factor; } set { wti2017Factor = value; } } /// /// Gets or sets the wti2017 hcritical. /// /// /// The wti2017 hcritical. /// public double? Wti2017Hcritical { get { return wti2017Hcritical; } set { wti2017Hcritical = value; } } /// /// Gets or sets the local exit point x. /// /// /// The local exit point x. /// public double? LocalExitPointX { get { return localExitPointX; } set { localExitPointX = value; } } /// /// Gets or sets the uplift situation. /// /// /// The uplift situation. /// public UpliftSituation? UpliftSituation { get { return upliftSituation; } set { upliftSituation = value; } } /// /// Gets or sets the redesigned surface line. /// /// /// The redesigned surface line. /// public SurfaceLine2 RedesignedSurfaceLine { get { return redesignedSurfaceLine; } set { redesignedSurfaceLine = value; } } } }