From 6a8582dc20eedeba90431fa1ab1ba2ee432f5bbc Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Mon, 3 Aug 2020 02:10:28 +0300 Subject: libcamera: file: Turn MapFlag and OpenModeFlag into enum class Add type safety by turning the MapFlag and OpenModeFlag enum into enum class. Signed-off-by: Laurent Pinchart Reviewed-by: Jacopo Mondi --- include/libcamera/base/file.h | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'include') diff --git a/include/libcamera/base/file.h b/include/libcamera/base/file.h index eebb2402..60851d38 100644 --- a/include/libcamera/base/file.h +++ b/include/libcamera/base/file.h @@ -23,14 +23,14 @@ namespace libcamera { class File { public: - enum MapFlag { - MapNoOption = 0, - MapPrivate = (1 << 0), + enum class MapFlag { + NoOption = 0, + Private = (1 << 0), }; using MapFlags = Flags; - enum OpenModeFlag { + enum class OpenModeFlag { NotOpen = 0, ReadOnly = (1 << 0), WriteOnly = (1 << 1), @@ -62,7 +62,7 @@ public: ssize_t write(const Span &data); Span map(off_t offset = 0, ssize_t size = -1, - MapFlags flags = MapNoOption); + MapFlags flags = MapFlag::NoOption); bool unmap(uint8_t *addr); static bool exists(const std::string &name); @@ -80,6 +80,9 @@ private: std::map maps_; }; +LIBCAMERA_FLAGS_ENABLE_OPERATORS(File::MapFlag) +LIBCAMERA_FLAGS_ENABLE_OPERATORS(File::OpenModeFlag) + } /* namespace libcamera */ #endif /* __LIBCAMERA_BASE_FILE_H__ */ -- cgit v1.2.1