SESegmentSigmoidal.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5
6#include "cdm/properties/SESegment.h"
7
8class CDM_DECL SESegmentSigmoidal : public SESegment
9{
10protected:
11 friend class PBProperty;//friend the serialization class
12 friend class SECurve;
14public:
15 virtual ~SESegmentSigmoidal();
16
17 virtual void Clear() override;
18 virtual bool IsValid() const override;
19
20 virtual bool HasLowerCorner() const;
21 virtual SEScalarPressure& GetLowerCorner();
22 virtual double GetLowerCorner(const PressureUnit& unit) const;
23
24 virtual bool HasUpperCorner() const;
25 virtual SEScalarPressure& GetUpperCorner();
26 virtual double GetUpperCorner(const PressureUnit& unit) const;
27
28 virtual bool HasBaselineCompliance() const;
29 virtual SEScalarVolumePerPressure& GetBaselineCompliance();
30 virtual double GetBaselineCompliance(const VolumePerPressureUnit& unit) const;
31
32 virtual std::string ToString() const override;
33 virtual void ToString(std::ostream& str) const override;
34
35protected:
36 virtual void Abstract() override { };
37
41};
Definition: PBProperties.h:86
Definition: SEScalarPressure.h:8
Definition: SECurve.h:12
Definition: SEScalarPressure.h:29
Definition: SEScalarVolumePerPressure.h:28
Definition: SESegment.h:7
virtual bool IsValid() const
Definition: SESegment.cpp:27
virtual std::string ToString() const
Definition: SESegment.cpp:66
virtual void Clear()
Definition: SESegment.cpp:21
Definition: SESegmentSigmoidal.h:9
SEScalarVolumePerPressure * m_BaselineCompliance
Definition: SESegmentSigmoidal.h:40
virtual void Abstract() override
Definition: SESegmentSigmoidal.h:36
SEScalarPressure * m_LowerCorner
Definition: SESegmentSigmoidal.h:38
SEScalarPressure * m_UpperCorner
Definition: SESegmentSigmoidal.h:39
Definition: SEScalarVolumePerPressure.h:8

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.