digiKam
Loading...
Searching...
No Matches
umscamera.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2004-12-21
7 * Description : USB Mass Storage camera interface
8 *
9 * SPDX-FileCopyrightText: 2004-2005 by Renchi Raju <renchi dot raju at gmail dot com>
10 * SPDX-FileCopyrightText: 2005-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Qt includes
19
20#include <QStringList>
21
22// Local includes
23
24#include "dkcamera.h"
25
26namespace Digikam
27{
28
29class DMetadata;
30
34class UMSCamera : public DKCamera
35{
36 Q_OBJECT
37
38public:
39
40 explicit UMSCamera(const QString& title, const QString& model, const QString& port, const QString& path);
41 ~UMSCamera() override = default;
42
43 QByteArray cameraMD5ID() override;
45
46 bool doConnect() override;
47 void cancel() override;
48
49 bool getFolders(const QString& folder) override;
50 bool getItemsInfoList(const QString& folder, bool useMetadata, CamItemInfoList& infoList) override;
51 void getItemInfo(const QString& folder, const QString& itemName, CamItemInfo& info, bool useMetadata) override;
52
53 bool getThumbnail(const QString& folder, const QString& itemName, QImage& thumbnail) override;
54 bool getMetadata(const QString& folder, const QString& itemName, DMetadata& meta) override;
55
56 bool setLockItem(const QString& folder, const QString& itemName, bool lock) override;
57
58 bool downloadItem(const QString& folder, const QString& itemName, const QString& saveFile) override;
59 bool deleteItem(const QString& folder, const QString& itemName) override;
60 bool uploadItem(const QString& folder, const QString& itemName, const QString& localFile, CamItemInfo& info) override;
61
62 bool cameraSummary(QString& summary) override;
63 bool cameraManual(QString& manual) override;
64 bool cameraAbout(QString& about) override;
65
66 bool getFreeSpace(qint64& bytesSize, qint64& bytesAvail) override;
67
68 bool getPreview(QImage& preview) override;
69 bool capture(CamItemInfo& itemInfo) override;
70
71private:
72
78 void getUUIDFromSolid();
79
80private:
81
82 bool m_cancel = false;
83
84private:
85
86 // Disable
87 explicit UMSCamera(QObject*) = delete;
88};
89
90} // namespace Digikam
Definition camiteminfo.h:39
Definition dkcamera.h:35
CameraDriverType
Definition dkcamera.h:41
QString path() const
Definition dkcamera.cpp:71
QString title() const
Definition dkcamera.cpp:45
QString port() const
Definition dkcamera.cpp:55
QString model() const
Definition dkcamera.cpp:50
Definition dmetadata.h:46
Definition umscamera.h:35
void cancel() override
Definition umscamera.cpp:142
bool cameraAbout(QString &about) override
Definition umscamera.cpp:604
void getItemInfo(const QString &folder, const QString &itemName, CamItemInfo &info, bool useMetadata) override
Definition umscamera.cpp:201
bool getMetadata(const QString &folder, const QString &itemName, DMetadata &meta) override
Definition umscamera.cpp:335
bool getFolders(const QString &folder) override
Definition umscamera.cpp:149
bool setLockItem(const QString &folder, const QString &itemName, bool lock) override
Definition umscamera.cpp:419
bool deleteItem(const QString &folder, const QString &itemName) override
Definition umscamera.cpp:446
bool getFreeSpace(qint64 &bytesSize, qint64 &bytesAvail) override
NOTE: implemented in gui, outside the camera thread.
Definition umscamera.cpp:107
bool getItemsInfoList(const QString &folder, bool useMetadata, CamItemInfoList &infoList) override
If getImageDimensions is false, the camera shall set width and height to -1 if the values are not imm...
Definition umscamera.cpp:177
QByteArray cameraMD5ID() override
Definition umscamera.cpp:89
bool uploadItem(const QString &folder, const QString &itemName, const QString &localFile, CamItemInfo &info) override
Definition umscamera.cpp:474
DKCamera::CameraDriverType cameraDriverType() override
Definition umscamera.cpp:84
bool doConnect() override
Definition umscamera.cpp:112
bool cameraManual(QString &manual) override
Definition umscamera.cpp:596
bool capture(CamItemInfo &itemInfo) override
Method not supported by UMS camera.
Definition umscamera.cpp:79
bool getPreview(QImage &preview) override
Method not supported by UMS camera.
Definition umscamera.cpp:73
bool getThumbnail(const QString &folder, const QString &itemName, QImage &thumbnail) override
Definition umscamera.cpp:251
bool downloadItem(const QString &folder, const QString &itemName, const QString &saveFile) override
Definition umscamera.cpp:367
~UMSCamera() override=default
bool cameraSummary(QString &summary) override
Definition umscamera.cpp:564
Definition datefolderview.cpp:34
QList< CamItemInfo > CamItemInfoList
Definition camiteminfo.h:116