diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/libcamera/camera.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h index 0386671c..6038da63 100644 --- a/include/libcamera/camera.h +++ b/include/libcamera/camera.h @@ -24,6 +24,35 @@ class Stream; class StreamConfiguration; class StreamUsage; +class CameraConfiguration +{ +public: + using iterator = std::vector<Stream *>::iterator; + using const_iterator = std::vector<Stream *>::const_iterator; + + CameraConfiguration(); + + iterator begin(); + iterator end(); + const_iterator begin() const; + const_iterator end() const; + + bool isValid() const; + bool isEmpty() const; + std::size_t size() const; + + Stream *front(); + const Stream *front() const; + + Stream *operator[](unsigned int index) const; + StreamConfiguration &operator[](Stream *stream); + const StreamConfiguration &operator[](Stream *stream) const; + +private: + std::vector<Stream *> order_; + std::map<Stream *, StreamConfiguration> config_; +}; + class Camera final { public: |