SESegmentParabolic.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 
8 class CDM_DECL SESegmentParabolic : public SESegment
9 {
10 protected:
11  friend class PBProperty;//friend the serialization class
12  friend class SECurve;
14 public:
15  virtual ~SESegmentParabolic();
16 
17  virtual void Clear() override;
18  virtual bool IsValid() const override;
19 
20  virtual bool HasCoefficient1() const;
21  virtual SEScalar& GetCoefficient1();
22  virtual double GetCoefficient1() const;
23 
24  virtual bool HasCoefficient2() const;
25  virtual SEScalar& GetCoefficient2();
26  virtual double GetCoefficient2() const;
27 
28  virtual bool HasCoefficient3() const;
29  virtual SEScalar& GetCoefficient3();
30  virtual double GetCoefficient3() const;
31 
32  virtual bool HasCoefficient4() const;
33  virtual SEScalar& GetCoefficient4();
34  virtual double GetCoefficient4() const;
35 
36  virtual std::string ToString() const override;
37  virtual void ToString(std::ostream& str) const override;
38 
39 protected:
40  virtual void Abstract() override { };
41 
46 };
Definition: PBProperties.h:87
Definition: SECurve.h:12
Definition: SEScalar.h:19
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: SESegmentParabolic.h:9
virtual void Abstract() override
Definition: SESegmentParabolic.h:40
SEScalar * m_Coefficient4
Definition: SESegmentParabolic.h:45
SEScalar * m_Coefficient3
Definition: SESegmentParabolic.h:44
SEScalar * m_Coefficient2
Definition: SESegmentParabolic.h:43
SEScalar * m_Coefficient1
Definition: SESegmentParabolic.h:40

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.