Solid

ifaces/camera.h
1/*
2 SPDX-FileCopyrightText: 2006 Kevin Ottens <ervin@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#ifndef SOLID_IFACES_CAMERA_H
8#define SOLID_IFACES_CAMERA_H
9
10#include <solid/devices/ifaces/deviceinterface.h>
11
12#include <QStringList>
13
14namespace Solid
15{
16namespace Ifaces
17{
18/**
19 * This device interface is available on digital camera devices.
20 *
21 * A digital camera is a device used to transform images into
22 * data. Nowaday most digital cameras are multifunctional and
23 * able to take photographs, video or sound. On the system side
24 * they are a particular type of device holding data, the access
25 * method can be different from the typical storage device, hence
26 * why it's a separate device interface.
27 */
28class Camera : virtual public DeviceInterface
29{
30public:
31 /**
32 * Destroys a Camera object.
33 */
34 ~Camera() override;
35
36 /**
37 * Retrieves known protocols this device can speak. This list may be dependent
38 * on installed device driver libraries.
39 *
40 * @return a list of known protocols this device can speak
41 */
42 virtual QStringList supportedProtocols() const = 0;
43
44 /**
45 * Retrieves known installed device drivers that claim to handle this device
46 * using the requested protocol.
47 *
48 * @param protocol The protocol to get drivers for.
49 * @return a list of known device drivers that can handle this device
50 */
51 virtual QStringList supportedDrivers(QString protocol = QString()) const = 0;
52
53 /**
54 * Retrieves a driver specific string allowing to access the device.
55 *
56 * For example for the "gphoto" driver it will return a list of the
57 * form '("usb", vendor_id, product_id)'.
58 *
59 * @return the driver specific data
60 */
61 virtual QVariant driverHandle(const QString &driver) const = 0;
62};
63}
64}
65
66Q_DECLARE_INTERFACE(Solid::Ifaces::Camera, "org.kde.Solid.Ifaces.Camera/0.1")
67
68#endif
This device interface is available on digital camera devices.
~Camera() override
Destroys a Camera object.
virtual QStringList supportedProtocols() const =0
Retrieves known protocols this device can speak.
virtual QVariant driverHandle(const QString &driver) const =0
Retrieves a driver specific string allowing to access the device.
virtual QStringList supportedDrivers(QString protocol=QString()) const =0
Retrieves known installed device drivers that claim to handle this device using the requested protoco...
Base interface of all the device interfaces.
The single responsibility of this class is to create arguments valid for logind Inhibit call.
Definition fakebattery.h:16
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri May 24 2024 11:56:28 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.