summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opietooth/lib/device.cc2
-rw-r--r--noncore/net/opietooth/lib/device.h2
-rw-r--r--noncore/net/opietooth/lib/manager.cc3
-rw-r--r--noncore/net/opietooth/lib/manager.h2
4 files changed, 4 insertions, 5 deletions
diff --git a/noncore/net/opietooth/lib/device.cc b/noncore/net/opietooth/lib/device.cc
index 18d26e4..04c50d9 100644
--- a/noncore/net/opietooth/lib/device.cc
+++ b/noncore/net/opietooth/lib/device.cc
@@ -1,58 +1,58 @@
#include <signal.h>
#include <opie2/oprocess.h>
#include "device.h"
using namespace OpieTooth;
-using namespace Opie::Core;
+using Opie::Core::OProcess;
namespace {
int parsePid( const QCString& par ){
int id=0;
QString string( par );
QStringList list = QStringList::split( '\n', string );
for( QStringList::Iterator it = list.begin(); it != list.end(); ++it ){
qWarning("parsePID: %s", (*it).latin1() );
if( !(*it).startsWith("CSR") ){
id = (*it).toInt();
break;
}
}
return id;
}
}
Device::Device(const QString &device, const QString &mode, const QString &speed )
: QObject(0, "device") {
qWarning("OpieTooth::Device create" );
m_hci = 0;
m_process = 0;
m_attached = false;
m_device = device;
m_mode = mode;
m_speed = speed;
attach();
}
Device::~Device(){
detach();
}
void Device::attach(){
qWarning("attaching %s %s %s", m_device.latin1(), m_mode.latin1(), m_speed.latin1() );
if(m_process == 0 ){
m_output.resize(0);
qWarning("new process to create" );
m_process = new OProcess();
*m_process << "hciattach";
*m_process << "-p";
*m_process << m_device << m_mode << m_speed;
connect(m_process, SIGNAL( processExited(Opie::Core::OProcess*) ),
this, SLOT( slotExited(Opie::Core::OProcess* ) ) );
connect(m_process, SIGNAL( receivedStdout(Opie::Core::OProcess*, char*, int) ),
this, SLOT(slotStdOut(Opie::Core::OProcess*,char*,int ) ) );
connect(m_process, SIGNAL(receivedStderr(Opie::Core::OProcess*, char*, int ) ),
this, SLOT(slotStdErr(Opie::Core::OProcess*,char*,int) ) );
if(!m_process->start(OProcess::NotifyOnExit, OProcess::AllOutput ) ){
qWarning("Could not start" );
diff --git a/noncore/net/opietooth/lib/device.h b/noncore/net/opietooth/lib/device.h
index f3339fc..3631c97 100644
--- a/noncore/net/opietooth/lib/device.h
+++ b/noncore/net/opietooth/lib/device.h
@@ -1,59 +1,59 @@
#ifndef OpieToothDevice_H
#define OpieToothDevice_H
#include <qobject.h>
#include <qstring.h>
#include <qvaluelist.h>
#include <sys/types.h>
-namespace Opie {namespace Core {class Opie::Core::OProcess;}}
+namespace Opie {namespace Core {class OProcess;}}
namespace OpieTooth {
/**
* Device takes care of attaching serial
* devices to the blueZ stack.
* After attaching it hciconfig ups it
*/
class Device : public QObject {
Q_OBJECT
public:
/**
* Brings up an device.
* Usage example: new Device(/dev/ttySB0, csr)
*
* @param &device QString the device name
* @param &mode QString the mode
* @param &speed QString the speed of the device, can be left blank
*/
Device(const QString &device, const QString& mode, const QString& speed);
/**
* unloads the device
*/
~Device();
/**
* attach the device
*/
void attach();
/**
* detach the device
*/
void detach();
/**
* Is the device loaded?
* @return bool, if the device is loaded
*/
bool isLoaded()const;
/**
* Returns the device name
* @return QString, the device name
*/
QString devName()const ; // hci0
diff --git a/noncore/net/opietooth/lib/manager.cc b/noncore/net/opietooth/lib/manager.cc
index 7c9ea5b..18e1df9 100644
--- a/noncore/net/opietooth/lib/manager.cc
+++ b/noncore/net/opietooth/lib/manager.cc
@@ -1,60 +1,59 @@
#include <opie2/oprocess.h>
#include "parser.h"
#include "manager.h"
using namespace OpieTooth;
-using namespace Opie::Core;
-using namespace Opie::Core;
+using Opie::Core::OProcess;
Manager::Manager( const QString& dev )
: QObject()
{
qWarning("created");
m_device = dev;
m_hcitool = 0;
m_sdp = 0;
}
Manager::Manager( Device* /*dev*/ )
: QObject()
{
m_hcitool = 0;
m_sdp = 0;
}
Manager::Manager()
: QObject()
{
m_hcitool = 0;
m_sdp = 0;
}
Manager::~Manager(){
delete m_hcitool;
delete m_sdp;
}
void Manager::setDevice( const QString& dev ){
m_device = dev;
}
void Manager::setDevice( Device* /*dev*/ ){
}
void Manager::isAvailable( const QString& device ){
OProcess* l2ping = new OProcess();
l2ping->setName( device.latin1() );
*l2ping << "l2ping" << "-c1" << device;
connect(l2ping, SIGNAL(processExited(Opie::Core::OProcess* ) ),
this, SLOT(slotProcessExited(Opie::Core::OProcess*) ) );
if (!l2ping->start() ) {
emit available( device, false );
delete l2ping;
}
}
void Manager::isAvailable( Device* /*dev*/ ){
}
void Manager::searchDevices( const QString& device ){
diff --git a/noncore/net/opietooth/lib/manager.h b/noncore/net/opietooth/lib/manager.h
index 9b1c714..930eb56 100644
--- a/noncore/net/opietooth/lib/manager.h
+++ b/noncore/net/opietooth/lib/manager.h
@@ -1,62 +1,62 @@
#ifndef OpieToothManager_H
#define OpieToothManager_H
#include <qobject.h>
#include <qstring.h>
#include <qmap.h>
#include <qvaluelist.h>
#include "connection.h"
#include "remotedevice.h"
#include "services.h"
-namespace Opie {namespace Core {class Opie::Core::OProcess;}}
+namespace Opie {namespace Core {class OProcess;}}
namespace OpieTooth {
class Device;
/** Manager manages a blueZ device (hci0 for example)
* without Manager you can control the things you
* could do from command line in a OO and asynchronus
* way.
*/
class Manager : public QObject {
Q_OBJECT
public:
/** c'tor whichs create a new Manager
* @param device is the device to use. Either a mac or blueZ device name
*
*/
Manager( const QString &device );
/** c'tor
* @param dev The Device to be managed
* We don't care of Device so you need to delete it
*/
Manager( Device* dev );
/**
* c'tor
*/
Manager();
~Manager();
/** Set the manager to control a new device
* @param device the new device to control (hci0 )
*/
void setDevice( const QString& device );
/**
* Convience functions for setting a new device
*/
void setDevice( Device *dev );
/**
* Wether or not a device is connected. The function
* is asynchron
* If device is empty it will take the currently managed
* device and see if it's up
* for Remote devices it will ping and see.
* @param either mac or hciX
*/
void isAvailable(const QString& device= QString::null );