camera: Single/Double (QtMultimediaCamera)

This commit is contained in:
zhupengfei 2018-06-02 22:13:54 +08:00
parent 3cb91338e9
commit 341c07156a
No known key found for this signature in database
GPG key ID: 85B82A3E62174206
4 changed files with 23 additions and 8 deletions

View file

@ -6,6 +6,7 @@
#include <array>
#include <string>
#include <unordered_map>
#include <vector>
#include <QAbstractVideoSurface>
#include <QCamera>
@ -62,7 +63,7 @@ class QtMultimediaCameraHandler final : public QObject {
public:
/// Creates the global handler. Must be called in UI thread.
static void Init();
static std::shared_ptr<QtMultimediaCameraHandler> GetHandler();
static std::shared_ptr<QtMultimediaCameraHandler> GetHandler(const std::string& camera_name);
static void ReleaseHandler(const std::shared_ptr<QtMultimediaCameraHandler>& handler);
/**
@ -92,6 +93,7 @@ private:
static std::array<std::shared_ptr<QtMultimediaCameraHandler>, 3> handlers;
static std::array<bool, 3> status;
static std::unordered_map<std::string, std::shared_ptr<QtMultimediaCameraHandler>> loaded;
friend class QtMultimediaCamera; // For access to camera_surface (and camera)
};