core/vcsl/vcsl_degree.h
Go to the documentation of this file.
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_