libcamera: Use utils::to_underlying()

Replace manual implementations of the utils::to_underlying() helper with
calls to the function.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
This commit is contained in:
Laurent Pinchart
2024-02-27 11:48:44 +02:00
parent 6a50c960be
commit dae4a44067
3 changed files with 6 additions and 9 deletions
+2 -1
View File
@@ -6,6 +6,7 @@
*/
#include <libcamera/base/log.h>
#include <libcamera/base/utils.h>
#include "../denoise_status.h"
#include "../noise_status.h"
@@ -60,7 +61,7 @@ void Sdn::prepare(Metadata *imageMetadata)
status.noiseConstant = noiseStatus.noiseConstant * deviation_;
status.noiseSlope = noiseStatus.noiseSlope * deviation_;
status.strength = strength_;
status.mode = static_cast<std::underlying_type_t<DenoiseMode>>(mode_);
status.mode = utils::to_underlying(mode_);
imageMetadata->set("denoise.status", status);
LOG(RPiSdn, Debug)
<< "programmed constant " << status.noiseConstant
@@ -14,6 +14,7 @@
#include <vector>
#include <libcamera/base/flags.h>
#include <libcamera/base/utils.h>
#include <libcamera/stream.h>
@@ -180,19 +181,14 @@ private:
template<typename E, std::size_t N>
class Device : public std::array<class Stream, N>
{
private:
constexpr auto index(E e) const noexcept
{
return static_cast<std::underlying_type_t<E>>(e);
}
public:
Stream &operator[](E e)
{
return std::array<class Stream, N>::operator[](index(e));
return std::array<class Stream, N>::operator[](utils::to_underlying(e));
}
const Stream &operator[](E e) const
{
return std::array<class Stream, N>::operator[](index(e));
return std::array<class Stream, N>::operator[](utils::to_underlying(e));
}
};
+1 -1
View File
@@ -433,7 +433,7 @@ std::ostream &operator<<(std::ostream &out, StreamRole role)
"Viewfinder",
};
out << names[static_cast<std::underlying_type_t<StreamRole>>(role)];
out << names[utils::to_underlying(role)];
return out;
}