diff options
author | Umang Jain <umang.jain@ideasonboard.com> | 2024-09-26 15:06:20 +0530 |
---|---|---|
committer | Umang Jain <umang.jain@ideasonboard.com> | 2024-10-24 14:04:31 +0530 |
commit | 7fad22efae4e89374d1767642cdd0bb4d683df1f (patch) | |
tree | ddb51ae296679d2e6175abb81ea96242705944d6 /include | |
parent | 994588fb75838b46d5eb74b916d66f0b9fc49421 (diff) |
libcamera: converter: Add interface for feature flags
This patch intends to extend the converter interface to have feature
flags, which enables each converter to expose the set of features
it supports.
Signed-off-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/libcamera/internal/converter.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/include/libcamera/internal/converter.h b/include/libcamera/internal/converter.h index b51563d7..6623de4d 100644 --- a/include/libcamera/internal/converter.h +++ b/include/libcamera/internal/converter.h @@ -17,6 +17,7 @@ #include <vector> #include <libcamera/base/class.h> +#include <libcamera/base/flags.h> #include <libcamera/base/signal.h> #include <libcamera/geometry.h> @@ -32,7 +33,13 @@ struct StreamConfiguration; class Converter { public: - Converter(MediaDevice *media); + enum class Feature { + None = 0, + }; + + using Features = Flags<Feature>; + + Converter(MediaDevice *media, Features features = Feature::None); virtual ~Converter(); virtual int loadConfiguration(const std::string &filename) = 0; @@ -61,6 +68,11 @@ public: const std::string &deviceNode() const { return deviceNode_; } + Features features() const { return features_; } + +protected: + Features features_; + private: std::string deviceNode_; }; |