SEScalarArea.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
5 #include "cdm/properties/SEScalar.h"
6 
7 class CDM_DECL AreaUnit : public CCompoundUnit
8 {
9 public:
10  AreaUnit(const std::string& u) : CCompoundUnit(u) {}
11  virtual ~AreaUnit() {}
12 
13  // Please use static units below
14  AreaUnit(const AreaUnit&) = delete;
15  AreaUnit& operator= (const AreaUnit&) = delete;
16 
17  static bool IsValidUnit(const std::string& unit);
18  static const AreaUnit& GetCompoundUnit(const std::string& unit);
19 
20  static const AreaUnit cm2;
21  static const AreaUnit m2;
22 };
23 
24 class CDM_DECL SEScalarArea : public SEScalarQuantity<AreaUnit>
25 {
26 public:
28  virtual ~SEScalarArea() {}
29 };
Definition: SEScalarArea.h:8
static const AreaUnit cm2
Definition: SEScalarArea.h:20
AreaUnit(const std::string &u)
Definition: SEScalarArea.h:10
AreaUnit(const AreaUnit &)=delete
virtual ~AreaUnit()
Definition: SEScalarArea.h:11
static const AreaUnit m2
Definition: SEScalarArea.h:21
Definition: CompoundUnit.h:40
CCompoundUnit & operator=(const CCompoundUnit &rhs)
Definition: CompoundUnit.h:132
Definition: SEScalarArea.h:25
SEScalarArea()
Definition: SEScalarArea.h:27
virtual ~SEScalarArea()
Definition: SEScalarArea.h:28
Definition: SEScalar.h:208

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.