| /* |
| * Copyright@ Samsung Electronics Co. LTD |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| /*! |
| * \file ExynosRect.h |
| * \brief header file for ExynosRect |
| * \author Sangwoo, Park(sw5771.park@samsung.com) |
| * \date 2011/06/02 |
| * |
| * <b>Revision History: </b> |
| * - 2010/06/03 : Sangwoo, Park(sw5771.park@samsung.com) \n |
| * Initial version |
| * |
| * - 2012/03/14 : sangwoo.park(sw5771.park@samsung.com) \n |
| * Change file, struct name to ExynosXXX. |
| * |
| */ |
|
|
| #ifndef EXYNOS_RECT_H_ |
| #define EXYNOS_RECT_H_ |
| |
| //! Rectangle information |
| /*! |
| * \ingroup Exynos |
| */ |
| struct ExynosRect |
| { |
| int x; //!< x pos |
| int y; //!< y pos |
| int w; //!< width |
| int h; //!< height |
| int fullW; //!< full width of image |
| int fullH; //!< full height of image |
| int colorFormat; //!< V4L2_PIX_FMT_XXX |
| |
| #ifdef __cplusplus |
| //! Constructor |
| ExynosRect(int _x_ = 0, |
| int _y_ = 0, |
| int _w_ = 0, |
| int _h_ = 0, |
| int _fullW_ = 0, |
| int _fullH_ = 0, |
| int _colorFormat_ = 0) |
| { |
| x = _x_; |
| y = _y_; |
| w = _w_; |
| h = _h_; |
| fullW = _fullW_; |
| fullH = _fullH_; |
| colorFormat = _colorFormat_; |
| } |
| |
| //! Constructor |
| ExynosRect(const ExynosRect *other) |
| { |
| x = other->x; |
| y = other->y; |
| w = other->w; |
| h = other->h; |
| fullW = other->fullW; |
| fullH = other->fullH; |
| colorFormat = other->colorFormat; |
| } |
| |
| //! Operator(=) override |
| ExynosRect& operator =(const ExynosRect &other) |
| { |
| x = other.x; |
| y = other.y; |
| w = other.w; |
| h = other.h; |
| fullW = other.fullW; |
| fullH = other.fullH; |
| colorFormat = other.colorFormat; |
| return *this; |
| } |
| |
| //! Operator(==) override |
| bool operator ==(const ExynosRect &other) const |
| { |
| return ( x == other.x |
| && y == other.y |
| && w == other.w |
| && h == other.h |
| && fullW == other.fullW |
| && fullH == other.fullH |
| && colorFormat == other.colorFormat); |
| } |
| |
| //! Operator(!=) override |
| bool operator !=(const ExynosRect &other) const |
| { |
| // use operator(==) |
| return !(*this == other); |
| } |
| #endif |
| }; |
| |
| //! Clip information |
| /*! |
| * \ingroup Exynos |
| */ |
| struct ExynosRect2 |
| { |
| int x1; //!< Left (The x-coordinate value of upper-left corner) |
| int y1; //!< Top (The y-coordinate value of upper-left corner) |
| int x2; //!< Right (The x-coordinate value of lower-right corner) |
| int y2; //!< Bottom (The y-coordinate value of lower-right corner) |
| |
| #ifdef __cplusplus |
| //! Constructor |
| ExynosRect2(int _x1_ = 0, int _y1_ = 0, int _x2_ = 0, int _y2_ = 0) |
| { |
| x1 = _x1_; |
| y1 = _y1_; |
| x2 = _x2_; |
| y2 = _y2_; |
| } |
| |
| //! Constructor |
| ExynosRect2(const ExynosRect2 *other) |
| { |
| x1 = other->x1; |
| y1 = other->y1; |
| x2 = other->x2; |
| y2 = other->y2; |
| } |
| |
| //! Operator(=) override |
| ExynosRect2& operator =(const ExynosRect2 &other) |
| { |
| x1 = other.x1; |
| y1 = other.y1; |
| x2 = other.x2; |
| y2 = other.y2; |
| return *this; |
| } |
| |
| //! Operator(==) override |
| bool operator ==(const ExynosRect2 &other) const |
| { |
| return ( x1 == other.x1 |
| && y1 == other.y1 |
| && x2 == other.x2 |
| && y2 == other.y2); |
| } |
| |
| //! Operator(!=) override |
| bool operator !=(const ExynosRect2 &other) const |
| { |
| // use operator(==) |
| return !(*this == other); |
| } |
| #endif |
| }; |
| |
| #endif //EXYNOS_RECT_H_ |