summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-05-22 03:54:29 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-06-06 00:25:04 +0300
commit79f96256071eec9ecf7fd2ebb7261d26e5344f9f (patch)
tree2704da21a9c2cbb92fc875461ec8cbf5aa7d492f /include
parent4bd09795a17dd1acd556c5549a71e9a5fe2fbcbe (diff)
libcamera: pixel_format: Make PixelFormat usable as a constexpr
The PixelFormat class is a lightweight wrapper around a 32-bit FourCC and a 64-bit modifier. Make is usable as a constexpr. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/pixel_format.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/include/libcamera/pixel_format.h b/include/libcamera/pixel_format.h
index e3b371ef..8dfeb892 100644
--- a/include/libcamera/pixel_format.h
+++ b/include/libcamera/pixel_format.h
@@ -18,18 +18,25 @@ namespace libcamera {
class PixelFormat
{
public:
- PixelFormat();
- explicit PixelFormat(uint32_t fourcc, uint64_t modifier = 0);
+ constexpr PixelFormat()
+ : fourcc_(0), modifier_(0)
+ {
+ }
+
+ explicit constexpr PixelFormat(uint32_t fourcc, uint64_t modifier = 0)
+ : fourcc_(fourcc), modifier_(modifier)
+ {
+ }
bool operator==(const PixelFormat &other) const;
bool operator!=(const PixelFormat &other) const { return !(*this == other); }
bool operator<(const PixelFormat &other) const;
- bool isValid() const { return fourcc_ != 0; }
+ constexpr bool isValid() const { return fourcc_ != 0; }
- operator uint32_t() const { return fourcc_; }
- uint32_t fourcc() const { return fourcc_; }
- uint64_t modifier() const { return modifier_; }
+ constexpr operator uint32_t() const { return fourcc_; }
+ constexpr uint32_t fourcc() const { return fourcc_; }
+ constexpr uint64_t modifier() const { return modifier_; }
std::string toString() const;