summaryrefslogtreecommitdiff
path: root/libopie2/opiebluez/obluetooth.h
authormickeyl <mickeyl>2005-07-14 14:17:46 (UTC)
committer mickeyl <mickeyl>2005-07-14 14:17:46 (UTC)
commit72224480ec012cf8d68608aea5a1b035f4d16895 (patch) (side-by-side diff)
tree104feb22de493fd96823b10e318f0160cc97e68f /libopie2/opiebluez/obluetooth.h
parent237cf3ec5134e299a9da0ce7deb533383f3d11f0 (diff)
downloadopie-72224480ec012cf8d68608aea5a1b035f4d16895.zip
opie-72224480ec012cf8d68608aea5a1b035f4d16895.tar.gz
opie-72224480ec012cf8d68608aea5a1b035f4d16895.tar.bz2
- add device class
- first bits at inquiry
Diffstat (limited to 'libopie2/opiebluez/obluetooth.h') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiebluez/obluetooth.h40
1 files changed, 39 insertions, 1 deletions
diff --git a/libopie2/opiebluez/obluetooth.h b/libopie2/opiebluez/obluetooth.h
index 4423a55..ee4a90d 100644
--- a/libopie2/opiebluez/obluetooth.h
+++ b/libopie2/opiebluez/obluetooth.h
@@ -28,24 +28,25 @@
*/
#ifndef OBLUETOOTH_H
#define OBLUETOOTH_H
#include <qobject.h>
#include <qdict.h>
namespace Opie {
namespace Bluez {
class OBluetoothInterface;
+class OBluetoothDevice;
/**
* @brief A container class for all bluetooth interfaces
*
* This class provides access to all available bluetooth interfaces of your computer.
*
* @author Michael 'Mickey' Lauer <mickey@vanille.de>
*/
class OBluetooth : public QObject
{
Q_OBJECT
@@ -95,55 +96,92 @@ class OBluetooth : public QObject
class OBluetoothPrivate;
OBluetoothPrivate *d;
int _fd;
};
/*======================================================================================
* OBluetoothInterface
*======================================================================================*/
/**
* @brief An bluetooth interface wrapper.
*
- * This class provides a wrapper for an infrared interface. All the cumbersome details of
+ * This class provides a wrapper for a bluetooth HCI device. All the cumbersome details of
* Linux ioctls are hidden under a convenient high-level interface.
* @warning Most of the setting methods contained in this class require the appropriate
* process permissions to work.
*
* @author Michael 'Mickey' Lauer <mickey@vanille.de>
*/
class OBluetoothInterface : public QObject
{
+ Q_OBJECT
+ public:
+ typedef QDict<OBluetoothDevice> DeviceMap;
+ typedef QDictIterator<OBluetoothDevice> DeviceIterator;
+
public:
/**
* Constructor. Normally you don't create @ref OBluetoothInterface objects yourself,
* but access them via @ref OBluetooth::interface().
*/
OBluetoothInterface( QObject* parent, const char* name, void* devinfo, int ctlfd );
/**
* Destructor.
*/
virtual ~OBluetoothInterface();
/**
* @return the MAC address of the interfaces
*/
QString macAddress() const;
/**
* Setting an interface to up enables it to receive packets.
*/
bool setUp( bool );
/**
* @returns true if the interface is up.
*/
bool isUp() const;
+ /**
+ * @returns an iterator usable for iterating through the devices in range
+ */
+ DeviceIterator neighbourhood();
private:
+ DeviceMap _devices;
class Private;
Private *d;
};
+/*======================================================================================
+ * OBluetoothDevice
+ *======================================================================================*/
+
+/**
+ * @brief An bluetooth (remote) device abstraction.
+ *
+ * This class resembles a (remote) bluetooth device.
+ * @author Michael 'Mickey' Lauer <mickey@vanille.de>
+ */
+class OBluetoothDevice : public QObject
+{
+ Q_OBJECT
+ public:
+ /**
+ * Constructor.
+ */
+ OBluetoothDevice( QObject* parent, const char* name );
+ /**
+ * Destructor.
+ */
+ virtual ~OBluetoothDevice();
+ /**
+ * @returns the MAC address of the device's interface
+ */
+ QString macAddress() const;
+};
}
}
#endif