00001 #ifndef vcsl_degree_h_ 00002 #define vcsl_degree_h_ 00003 //: 00004 // \file 00005 // \brief A unit associated to the angle dimension 00006 // \author François BERTEL 00007 // 00008 // \verbatim 00009 // Modifications 00010 // 2000/06/28 François BERTEL Creation. Adapted from IUE 00011 // 2004/09/17 Peter Vanroose made "instance_" a local static variable of method instance() 00012 // \endverbatim 00013 00014 #include <vcsl/vcsl_angle_unit.h> 00015 #include <vcsl/vcsl_degree_sptr.h> 00016 00017 //: A unit associated to the angle dimension 00018 // See also \b vcsl_radian 00019 class vcsl_degree 00020 : public vcsl_angle_unit 00021 { 00022 //*************************************************************************** 00023 // Constructors/Destructor 00024 //*************************************************************************** 00025 00026 // Default constructor 00027 vcsl_degree() {} 00028 00029 public: 00030 // Destructor 00031 virtual ~vcsl_degree() {} 00032 00033 //*************************************************************************** 00034 // Status report 00035 //*************************************************************************** 00036 00037 //: Returns the number of units of `this' equal of the standard_unit for the dimension 00038 // Pure virtual function of vcsl_unit 00039 virtual double units_per_standard_unit() const; 00040 00041 //*************************************************************************** 00042 // Singleton pattern 00043 //*************************************************************************** 00044 00045 //: Return the reference to the unique vcsl_degree object 00046 static vcsl_degree_sptr instance(); 00047 }; 00048 00049 #endif // vcsl_degree_h_