2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
17 #ifndef HERE_GRAPHIC_FLOATDIMENTION_H
18 #define HERE_GRAPHIC_FLOATDIMENTION_H
20 #include "common/HereMaps_global.h"
21 #include "base/BaseObject.h"
23 TIZEN_MAPS_BEGIN_NAMESPACE
27 class EXPORT_API FloatDimension : public Object
31 * This is the default constructor for this class. @n
32 * This constructor initializes an instance of %FloatDimension with the width and the height set as @c 0.f.
39 * This is the copy constructor for the %FloatDimension class.
43 * @param[in] rhs An instance of %FloatDimension
45 FloatDimension(const FloatDimension& rhs);
48 * Initializes an instance of %FloatDimension with the specified values of width and height.
52 * @param[in] width The width to set
53 * @param[in] height The height to set
55 FloatDimension(float width, float height);
58 * This is the destructor for this class.
62 virtual ~FloatDimension(void);
65 * This is the default assignment operator for this class.
69 * @param[in] rhs An instance of %FloatDimension
71 FloatDimension& operator=(const FloatDimension& rhs);
74 * Checks whether the two instances of %FloatDimension have equal width and height values.
78 * @return @c true if the values of the width and height of the two instances of %FloatDimension are equal, @n
80 * @param[in] rhs An instance of %FloatDimension
82 bool operator==(const FloatDimension& rhs) const;
85 * Checks whether the two instances of %FloatDimension have different width and height values.
89 * @return @c true if the values of the width and height of the two instances of %FloatDimension are not equal, @n
91 * @param[in] rhs An instance of %FloatDimension
93 bool operator!=(const FloatDimension& rhs) const;
96 * Checks whether the value of the current instance of %FloatDimension equals the value of the specified instance.
100 * @return @c true if the value of the current instance equals the value of the specified instance, @n
102 * @param[in] rhs An instance of %FloatDimension
103 * @remarks The %FloatDimension class has a semantic value, which means that the
104 * Equals() method checks whether the two instances have the same width and height.
106 virtual bool Equals(const Object& rhs) const;
109 * Gets the hash value of the current instance.
113 * @return The hash value of the current instance
114 * @remarks Two equal instances must return the same hash value. For better performance,
115 * the used hash function must generate a random distribution for all inputs.
117 virtual long GetHashCode(void) const;
120 * Sets the size of the current instance of %FloatDimension.
124 * @param[in] width The new width
125 * @param[in] height The new height
127 void SetSize(float width, float height);
131 * The width of the current instance of %FloatDimension.
138 * The height of the current instance of %FloatDimension.
145 friend class _FloatDimensionImpl;
148 // This variable is for internal use only.
149 // Using this variable can cause behavioral, security-related, and consistency-related issues in the application.
153 class _FloatDimensionImpl* __pImpl;
157 TIZEN_MAPS_END_NAMESPACE
159 #endif /* HERE_GRAPHIC_FLOATDIMENTION_H */