Solid::Device

Search for usage in LXR

#include <Solid/Device>

Public Member Functions

 Device (const Device &device)
 
 Device (const QString &udi=QString())
 
 ~Device ()
 
template<class DevIface >
DevIface * as ()
 
template<class DevIface >
const DevIface * as () const
 
DeviceInterfaceasDeviceInterface (const DeviceInterface::Type &type)
 
const DeviceInterfaceasDeviceInterface (const DeviceInterface::Type &type) const
 
QString description () const
 
QString displayName () const
 
QStringList emblems () const
 
QString icon () const
 
template<class DevIface >
bool is () const
 
bool isDeviceInterface (const DeviceInterface::Type &type) const
 
bool isValid () const
 
Deviceoperator= (const Device &device)
 
Device parent () const
 
QString parentUdi () const
 
QString product () const
 
QString udi () const
 
QString vendor () const
 

Static Public Member Functions

static QList< DeviceallDevices ()
 
static QList< DevicelistFromQuery (const Predicate &predicate, const QString &parentUdi=QString())
 
static QList< DevicelistFromQuery (const QString &predicate, const QString &parentUdi=QString())
 
static QList< DevicelistFromType (const DeviceInterface::Type &type, const QString &parentUdi=QString())
 
static Device storageAccessFromPath (const QString &path)
 

Detailed Description

This class allows applications to deal with devices available in the underlying system.

Device stores a reference to device data provided by the backend. Device objects are designed to be used by value. Copying these objects is quite cheap, so using pointers to the me is generally not needed.

Author
Kevin Ottens ervin.nosp@m.@kde.nosp@m..org

Constructor & Destructor Documentation

◆ Device() [1/2]

Solid::Device::Device ( const QString & udi = QString())
explicit

Constructs a device for a given Universal Device Identifier (UDI).

Parameters
udithe udi of the device to create

Definition at line 42 of file frontend/device.cpp.

◆ Device() [2/2]

Solid::Device::Device ( const Device & device)

Constructs a copy of a device.

Parameters
devicethe device to copy

Definition at line 48 of file frontend/device.cpp.

◆ ~Device()

Solid::Device::~Device ( )

Destroys the device.

Definition at line 53 of file frontend/device.cpp.

Member Function Documentation

◆ allDevices()

QList< Solid::Device > Solid::Device::allDevices ( )
static

Retrieves all the devices available in the underlying system.

Returns
the list of the devices available

Definition at line 59 of file frontend/devicemanager.cpp.

◆ as() [1/2]

template<class DevIface >
DevIface * Solid::Device::as ( )
inline

Retrieves a specialized interface to interact with the device corresponding to a given device interface.

Returns
a pointer to the device interface if it exists, 0 otherwise

Definition at line 235 of file frontend/device.h.

◆ as() [2/2]

template<class DevIface >
const DevIface * Solid::Device::as ( ) const
inline

Retrieves a specialized interface to interact with the device corresponding to a given device interface.

Returns
a pointer to the device interface if it exists, 0 otherwise

Definition at line 249 of file frontend/device.h.

◆ asDeviceInterface() [1/2]

Solid::DeviceInterface * Solid::Device::asDeviceInterface ( const DeviceInterface::Type & type)

Retrieves a specialized interface to interact with the device corresponding to a particular device interface.

Parameters
typethe device interface type
Returns
a pointer to the device interface interface if it exists, 0 otherwise

Definition at line 126 of file frontend/device.cpp.

◆ asDeviceInterface() [2/2]

const Solid::DeviceInterface * Solid::Device::asDeviceInterface ( const DeviceInterface::Type & type) const

Retrieves a specialized interface to interact with the device corresponding to a particular device interface.

Parameters
typethe device interface type
Returns
a pointer to the device interface interface if it exists, 0 otherwise

Definition at line 132 of file frontend/device.cpp.

◆ description()

QString Solid::Device::description ( ) const

Retrieves the description of device.

Returns
the description
Since
4.4

Definition at line 114 of file frontend/device.cpp.

◆ displayName()

QString Solid::Device::displayName ( ) const

Retrieves the display Name to use for this device.

Same as description when not defined.

Returns
the display Name
Since
5.71

Definition at line 109 of file frontend/device.cpp.

◆ emblems()

QStringList Solid::Device::emblems ( ) const

Retrieves the names of the emblems representing the state of this device.

The naming follows the freedesktop.org specification.

Returns
the emblem names
Since
4.4

Definition at line 104 of file frontend/device.cpp.

◆ icon()

QString Solid::Device::icon ( ) const

Retrieves the name of the icon representing this device.

The naming follows the freedesktop.org specification.

Returns
the icon name

Definition at line 99 of file frontend/device.cpp.

◆ is()

template<class DevIface >
bool Solid::Device::is ( ) const
inline

Tests if a device provides a given device interface.

Returns
true if the interface is available, false otherwise

Definition at line 262 of file frontend/device.h.

◆ isDeviceInterface()

bool Solid::Device::isDeviceInterface ( const DeviceInterface::Type & type) const

Tests if a device interface is available from the device.

Parameters
typethe device interface type to query
Returns
true if the device interface is available, false otherwise

Definition at line 119 of file frontend/device.cpp.

◆ isValid()

bool Solid::Device::isValid ( ) const

Indicates if this device is valid.

A device is considered valid if it's available in the system.

Returns
true if this device is available, false otherwise

Definition at line 63 of file frontend/device.cpp.

◆ listFromQuery() [1/2]

QList< Solid::Device > Solid::Device::listFromQuery ( const Predicate & predicate,
const QString & parentUdi = QString() )
static

Retrieves a list of devices of the system given matching the given constraints (parent and predicate)

Parameters
predicatePredicate that the devices we're searching for must verify
parentUdiUDI of the parent of the devices we're searching for, or QString() if there's no constraint on the parent
Returns
the list of devices corresponding to the given constraints
See also
Solid::Predicate

Definition at line 104 of file frontend/devicemanager.cpp.

◆ listFromQuery() [2/2]

QList< Solid::Device > Solid::Device::listFromQuery ( const QString & predicate,
const QString & parentUdi = QString() )
static

Convenience function see above.

Parameters
predicate
parentUdi
Returns
the list of devices

Definition at line 74 of file frontend/devicemanager.cpp.

◆ listFromType()

QList< Solid::Device > Solid::Device::listFromType ( const DeviceInterface::Type & type,
const QString & parentUdi = QString() )
static

Retrieves a list of devices of the system given matching the given constraints (parent and device interface type)

Parameters
typedevice interface type available on the devices we're looking for, or DeviceInterface::Unknown if there's no constraint on the device interfaces
parentUdiUDI of the parent of the devices we're searching for, or QString() if there's no constraint on the parent
Returns
the list of devices corresponding to the given constraints
See also
Solid::Predicate

Definition at line 85 of file frontend/devicemanager.cpp.

◆ operator=()

Solid::Device & Solid::Device::operator= ( const Device & device)

Assigns a device to this device and returns a reference to it.

Parameters
devicethe device to assign
Returns
a reference to the device

Definition at line 57 of file frontend/device.cpp.

◆ parent()

Solid::Device Solid::Device::parent ( ) const

Retrieves the parent of the Device.

Returns
the device's parent
See also
parentUdi()

Definition at line 78 of file frontend/device.cpp.

◆ parentUdi()

QString Solid::Device::parentUdi ( ) const

Retrieves the Universal Device Identifier (UDI) of the Device's parent.

Returns
the udi of the device's parent

Definition at line 73 of file frontend/device.cpp.

◆ product()

QString Solid::Device::product ( ) const

Retrieves the name of the product corresponding to this device.

Returns
the product name

Definition at line 94 of file frontend/device.cpp.

◆ storageAccessFromPath()

Solid::Device Solid::Device::storageAccessFromPath ( const QString & path)
static

Returns the Device containing the filesystem for the given path.

Parameters
canonicalpath to a filesystem entry, e.g. a file or directory
Returns
Device containing the given path. For Devices implementing the StorageVolume interface only ones matching UsageType::FileSystem are returned, i.e. no backing encrypted volumes.
Since
5.73
See also
QFileInfo::canonicalFilePath

Definition at line 152 of file frontend/devicemanager.cpp.

◆ udi()

QString Solid::Device::udi ( ) const

Retrieves the Universal Device Identifier (UDI).

Warning
Don't use the UDI for anything except communication with Solid. Also don't store UDIs as there's no guarantee that the UDI stays the same when the hardware setup changed. The UDI is a unique identifier that is local to the computer in question and for the current boot session. The UDIs may change after a reboot. Similar hardware in other computers may have different values; different hardware could have the same UDI.
Returns
the udi of the device

Definition at line 68 of file frontend/device.cpp.

◆ vendor()

QString Solid::Device::vendor ( ) const

Retrieves the name of the device vendor.

Returns
the vendor name

Definition at line 89 of file frontend/device.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Dec 27 2024 11:46:20 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.