1 #ifndef vcsl_micron_h_ 2 #define vcsl_micron_h_ 3 //: 4 // \file 5 #include "vcsl_length_unit.h" 6 #include "vcsl_micron_sptr.h" 7 8 //: Standard unit associated to the length dimension 9 class vcsl_micron 10 : public vcsl_length_unit 11 { 12 //*************************************************************************** 13 // Constructors/Destructor 14 //*************************************************************************** 15 16 // Default constructor 17 vcsl_micron() = default; 18 19 public: 20 // Destructor 21 ~vcsl_micron() override = default; 22 23 //*************************************************************************** 24 // Status report 25 //*************************************************************************** 26 27 //: Returns the number of units of `this' equal of the standard_unit for the dimension 28 // Pure virtual function of vcsl_unit units_per_standard_unit()29 double units_per_standard_unit() const override { return 1000000; } 30 31 //*************************************************************************** 32 // Singleton pattern 33 //*************************************************************************** 34 35 //: Return the reference to the unique vcsl_micron object 36 static vcsl_micron_sptr instance(); 37 }; 38 39 #endif // vcsl_micron_h_ 40