[libcamera-devel,v8,02/13] libcamera: geometry: Add Size structure

Message ID 20190403080148.11479-3-jacopo@jmondi.org
State Accepted
Headers show
Series
  • libcamera: ipu3: Add ImgU support
Related show

Commit Message

Jacopo Mondi April 3, 2019, 8:01 a.m. UTC
Add a simple Size structure that contains an image width and height.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
---
 src/libcamera/geometry.cpp       | 29 +++++++++++++++++++++++++++++
 src/libcamera/include/geometry.h | 15 +++++++++++++++
 2 files changed, 44 insertions(+)

Patch

diff --git a/src/libcamera/geometry.cpp b/src/libcamera/geometry.cpp
index f76001d94562..d0c63c353ab3 100644
--- a/src/libcamera/geometry.cpp
+++ b/src/libcamera/geometry.cpp
@@ -105,4 +105,33 @@  const std::string Rectangle::toString() const
  * \brief The maximum image height
  */
 
+/**
+ * \struct Size
+ * \brief Describe a two-dimensional size
+ *
+ * The Size structure defines a two-dimensional size with integer precision.
+ */
+
+/**
+ * \fn Size::Size()
+ * \brief Construct a Size with width and height set to 0
+ */
+
+/**
+ * \fn Size::Size(unsigned int width, unsigned int height)
+ * \brief Construct a Size with given \a width and \a height
+ * \param width The Size width
+ * \param height The Size height
+ */
+
+/**
+ * \var Size::width
+ * \brief The Size width
+ */
+
+/**
+ * \var Size::height
+ * \brief The Size height
+ */
+
 } /* namespace libcamera */
diff --git a/src/libcamera/include/geometry.h b/src/libcamera/include/geometry.h
index d8d587d3b47b..f41017aa47bf 100644
--- a/src/libcamera/include/geometry.h
+++ b/src/libcamera/include/geometry.h
@@ -40,6 +40,21 @@  struct SizeRange {
 	unsigned int maxHeight;
 };
 
+struct Size {
+	Size()
+		: Size(0, 0)
+	{
+	}
+
+	Size(unsigned int w, unsigned int h)
+		: width(w), height(h)
+	{
+	}
+
+	unsigned int width;
+	unsigned int height;
+};
+
 } /* namespace libcamera */
 
 #endif /* __LIBCAMERA_GEOMETRY_H__ */