Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QHardwareManager Class Reference
[QtBaseModule]

The QHardwareManager class finds available hardware abstraction providers for a given interface. More...

    #include <QHardwareManager>

Inherits QAbstractIpcInterfaceGroupManager.

Public Functions

Signals

Static Public Members

  • 4 static public members inherited from QObject

Additional Inherited Members

  • 1 property inherited from QObject
  • 1 public slot inherited from QObject
  • 1 public type inherited from QObject
  • 7 protected functions inherited from QObject
  • 2 protected variables inherited from QObject

Detailed Description

The QHardwareManager class finds available hardware abstraction providers for a given interface.

QHardwareManager is part of the Qt Extended Hardware Abstraction, which provides information about the available hardware devices.

A QHardwareMonitor can be used to monitor the availability of a given type of hardware, providing a list of providers through providers() and emitting signals providerAdded() and providerRemoved() when that list changes. The type of hardware monitored is given as a parameter to constructing the QHardwareMonitor.

The following example responds whenever a new QSignalSource becomes available:

    QHardwareManager* manager = new QHardwareManager( "QSignalSource" );
    connect( manager, SIGNAL(providerAdded(QString)),
        this, SLOT(newBatteryAdded(QString)));

The types of a hardware abstraction is the name of the abstraction classes which implement the interface to the device. Any class that is subclassing QHardwareInterface is considered to be a Qt Extended hardware abstraction.

See also QHardwareInterface, QPowerSource, QSignalSource, and QVibrateAccessory.


Member Function Documentation

QHardwareManager::QHardwareManager ( const QString & interface, QObject * parent = 0 )

Creates a QHardwareManager object and attaches it to parent. interface is the name of the hardware interface that this object is monitoring.

The following code assumes that Qt Extended is running on a device that has a modem as power source (for more details see QPowerStatus and QPowerSource).

    QHardwareManager manager( "QPowerSource" );
    QStringList providers = manager.providers();

    //Qt Extended always has a virtual power source with id DefaultBattery
    providers.contains( "DefaultBattery" ); //always true
    providers.contains( "modem" ); //true

Another way to achieve the same as the above example would be:

    QStringList providers = QHardwareManager::providers<QPowerSource>();
    providers.contains( "DefaultBattery" ); //always true
    providers.contains( "modem" ); //true

QHardwareManager::~QHardwareManager ()   [virtual]

Destroys the QHardwareManager object.

QString QHardwareManager::interface () const

Returns the interface that this object is monitoring.

void QHardwareManager::providerAdded ( const QString & id )   [signal]

This signal is emitted when provider id is added.

void QHardwareManager::providerRemoved ( const QString & id )   [signal]

This signal is emitted when provider id is removed.

QStringList QHardwareManager::providers () const

Returns a list of providers that support the interface that this object was initialized with.

QStringList QHardwareManager::providers ()   [static]

This is an overloaded member function, provided for convenience.

Returns a list of providers which support the given interface of type T. The following example demonstrates how to get the list of providers that supports the QPowerSource interface.

    QStringList providers = QHardwareManager::providers<QPowerSource>();

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 94
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 42
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 9
Page suivante

Le Qt Labs au hasard

Logo

Velours et QML Scene Graph

Les Qt Labs sont les laboratoires des développeurs de Qt, où ils peuvent partager des impressions sur le framework, son utilisation, ce que pourrait être son futur. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt qtextended4.4
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web