summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2019-04-02 11:41:30 +0200
committerJacopo Mondi <jacopo@jmondi.org>2019-04-03 10:11:17 +0200
commit289343a24a0dce38e646e6b5cee97b770f849c11 (patch)
treeacec818822605c005d819c52ff8a49781c935460
parent05a8608f1f20db721ef1cd9210f70a167eb1f54c (diff)
libcamera: geometry: Add Size structure
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>
-rw-r--r--src/libcamera/geometry.cpp29
-rw-r--r--src/libcamera/include/geometry.h15
2 files changed, 44 insertions, 0 deletions
diff --git a/src/libcamera/geometry.cpp b/src/libcamera/geometry.cpp
index f76001d9..d0c63c35 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 d8d587d3..f41017aa 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__ */