Hot Door CORE  0.7.1
Adobe® Illustrator® Plug-in Library
hdicoreSize.h
Go to the documentation of this file.
1 
7 #ifndef __HDI_CORE_SIZE__
8 #define __HDI_CORE_SIZE__
9 
10 #include "hdicoreAngle.h"
11 
12 namespace hdi
13 {
14  namespace geo
15  {
16  class Size;
17  }
18 
19  namespace core
20  {
24  class Size
25  {
26  public:
30  double width;
31 
35  double height;
36 
42  Size();
43 
52  Size(const double width_, const double height_);
53 
61  Size(const Size& size_);
62 
68  virtual ~Size();
69 
78  virtual Size& operator=(const Size& rhs_);
79 
88  virtual bool operator==(const Size& rhs_) const;
89 
98  virtual bool operator!=(const Size& rhs_) const;
99 
108  virtual Size operator+(const Size& rhs_) const;
109 
119  virtual Size& operator+=(const Size& rhs_);
120 
130  virtual Size operator-(const Size& rhs_) const;
131 
142  virtual Size& operator-=(const Size& rhs_);
143 
151  virtual Angle diagonalAngle() const;
152 
161  virtual double diagonalLength() const;
162 
163 
164  private:
165  friend geo::Size* __accessImpl(const Size&);
166  friend Size __accessCtor(const geo::Size&);
167 
171  geo::Size* __impl;
172 
178  Size(const geo::Size&);
179  };
180 
181  typedef std::auto_ptr<Size> SizeAP;
182 
183  extern geo::Size* __accessImpl(const Size&);
184  extern Size __accessCtor(const geo::Size&);
185  }
186 }
187 
188 #endif
189 // __HDI_CORE_SIZE__
Header file for describing angles.
hdi::core::Date operator+(const hdi::core::Duration &lhs_, const hdi::core::Date &rhs_)
Adds a duration to a date.
double height
Definition: hdicoreSize.h:35
Contains a width and height for a rectangular shape.
Definition: hdicoreSize.h:24
Definition: hdicoreaiArray.h:12
double width
Width of the item.
Definition: hdicoreSize.h:30
Describes an angle, and allows for easy conversion between various units.
Definition: hdicoreAngle.h:25