libcamera: controls: Generate and use fixed-sized Span types

Define Span types explicitly as either variable- or fixed-sized. This
introduces a new convention for defining Span dimensions in the property
and control value definitions and generates Span types as variable-sized
Span<T> or as fixed-sized Span<T,N>.

Signed-off-by: Christian Rauch <Rauch.Christian@gmx.de>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Christian Rauch 2022-08-02 23:03:24 +02:00 committed by Laurent Pinchart
parent 293e23e21c
commit 09c1b081ba
6 changed files with 38 additions and 25 deletions

View file

@ -168,7 +168,7 @@ public:
using V = typename T::value_type;
const V *value = reinterpret_cast<const V *>(data().data());
return { value, numElements_ };
return T{ value, numElements_ };
}
#ifndef __DOXYGEN__