SEScalarLength.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 LengthUnit : public CCompoundUnit
8 {
9 public:
10  LengthUnit(const std::string& u) : CCompoundUnit(u) {}
11  virtual ~LengthUnit() {}
12 
13  // Please use static units below
14  LengthUnit(const LengthUnit&) = delete;
15  LengthUnit& operator= (const LengthUnit&) = delete;
16 
17  static bool IsValidUnit(const std::string& unit);
18  static const LengthUnit& GetCompoundUnit(const std::string& unit);
19 
20  static const LengthUnit m;
21  static const LengthUnit cm;
22  static const LengthUnit mm;
23  static const LengthUnit um;
24  static const LengthUnit in;
25  static const LengthUnit ft;
26 };
27 
28 class CDM_DECL SEScalarLength : public SEScalarQuantity<LengthUnit>
29 {
30 public:
32  virtual ~SEScalarLength() {}
33 };
Definition: CompoundUnit.h:40
CCompoundUnit & operator=(const CCompoundUnit &rhs)
Definition: CompoundUnit.h:132
Definition: SEScalarLength.h:8
static const LengthUnit um
Definition: SEScalarLength.h:23
static const LengthUnit ft
Definition: SEScalarLength.h:25
LengthUnit(const std::string &u)
Definition: SEScalarLength.h:10
virtual ~LengthUnit()
Definition: SEScalarLength.h:11
static const LengthUnit in
Definition: SEScalarLength.h:24
static const LengthUnit cm
Definition: SEScalarLength.h:21
static const LengthUnit mm
Definition: SEScalarLength.h:22
LengthUnit(const LengthUnit &)=delete
static const LengthUnit m
Definition: SEScalarLength.h:20
Definition: SEScalarLength.h:29
virtual ~SEScalarLength()
Definition: SEScalarLength.h:32
SEScalarLength()
Definition: SEScalarLength.h:31
Definition: SEScalar.h:208

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.