diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2019-02-05 18:00:09 +0100 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-02-06 07:41:48 +0200 |
commit | 8dbc203bb22c4616a6a2660798715fdbb9cfe25b (patch) | |
tree | bf9efb827446f6425ab4cad2403ba22fdef52829 /src | |
parent | 8628b1e5600a82f280bac5585083da4ca1a315df (diff) |
libcamera: Add geometry.h
Add geometry-related definitions in the geometry.h internal header.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/libcamera/geometry.cpp | 49 | ||||
-rw-r--r-- | src/libcamera/include/geometry.h | 22 | ||||
-rw-r--r-- | src/libcamera/meson.build | 1 |
3 files changed, 72 insertions, 0 deletions
diff --git a/src/libcamera/geometry.cpp b/src/libcamera/geometry.cpp new file mode 100644 index 00000000..57f4fc77 --- /dev/null +++ b/src/libcamera/geometry.cpp @@ -0,0 +1,49 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ +/* + * Copyright (C) 2019, Google Inc. + * + * geometry.cpp - Geometry-related structures + */ + +#include "geometry.h" + +/** + * \file geometry.h + * \brief Data structures related to geometric objects + */ + +namespace libcamera { + +/** + * \struct Rectangle + * \brief Describe a rectangle's position and dimensions + * + * Rectangles are used to identify an area of an image. They are specified by + * the coordinates of top-left corner and their horizontal and vertical size. + * + * The measure unit of the rectangle coordinates and size, as well as the + * reference point from which the Rectangle::x and Rectangle::y displacements + * refers to, are defined by the context were rectangle is used. + */ + +/** + * \var Rectangle::x + * \brief The horizontal coordinate of the rectangle's top-left corner + */ + +/** + * \var Rectangle::y + * \brief The vertical coordinate of the rectangle's top-left corner + */ + +/** + * \var Rectangle::w + * \brief The distance between the left and right sides + */ + +/** + * \var Rectangle::h + * \brief The distance between the top and bottom sides + */ + +} /* namespace libcamera */ diff --git a/src/libcamera/include/geometry.h b/src/libcamera/include/geometry.h new file mode 100644 index 00000000..cc146da7 --- /dev/null +++ b/src/libcamera/include/geometry.h @@ -0,0 +1,22 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ +/* + * Copyright (C) 2019, Google Inc. + * + * geometry.h - Geometry-related structure + */ + +#ifndef __LIBCAMERA_GEOMETRY_H__ +#define __LIBCAMERA_GEOMETRY_H__ + +namespace libcamera { + +struct Rectangle { + int x; + int y; + unsigned int w; + unsigned int h; +}; + +} /* namespace libcamera */ + +#endif /* __LIBCAMERA_GEOMETRY_H__ */ diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build index a4e9cc8f..8b33c4b2 100644 --- a/src/libcamera/meson.build +++ b/src/libcamera/meson.build @@ -6,6 +6,7 @@ libcamera_sources = files([ 'event_dispatcher.cpp', 'event_dispatcher_poll.cpp', 'event_notifier.cpp', + 'geometry.cpp', 'log.cpp', 'media_device.cpp', 'media_object.cpp', |