summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorStefan Klug <stefan.klug@ideasonboard.com>2025-04-03 17:49:08 +0200
committerStefan Klug <stefan.klug@ideasonboard.com>2025-05-20 09:46:11 +0200
commitaca9042abdf3d01f436dea147a82d37923c0eda6 (patch)
tree584ffa30c20b51b9a81d6a081af2682f31c67290 /include
parent5234e4936fab07a3540f8e6ae87d70579a51cfcc (diff)
libcamera: matrix: Add a Span based constructor
When one wants to create a Matrix from existing data, currently the only way is via std::array. Add a Span based constructor to allow creation from vectors and alike. Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/internal/matrix.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/libcamera/internal/matrix.h b/include/libcamera/internal/matrix.h
index 512c1162..6d40567a 100644
--- a/include/libcamera/internal/matrix.h
+++ b/include/libcamera/internal/matrix.h
@@ -34,6 +34,11 @@ public:
std::copy(data.begin(), data.end(), data_.begin());
}
+ Matrix(const Span<const T, Rows * Cols> data)
+ {
+ std::copy(data.begin(), data.end(), data_.begin());
+ }
+
static constexpr Matrix identity()
{
Matrix ret;