summaryrefslogtreecommitdiff
path: root/noncore/net/wellenreiter/gui/gps.cpp
authormickeyl <mickeyl>2003-08-11 19:04:52 (UTC)
committer mickeyl <mickeyl>2003-08-11 19:04:52 (UTC)
commite7f79ca3acf58aef3ff150a2974f8087189621f5 (patch) (side-by-side diff)
treeb8397506f85d9a3b547940e416111de4b2da1f18 /noncore/net/wellenreiter/gui/gps.cpp
parent62cb34a352c38f97967882a7ac604d9670f0e75f (diff)
downloadopie-e7f79ca3acf58aef3ff150a2974f8087189621f5.zip
opie-e7f79ca3acf58aef3ff150a2974f8087189621f5.tar.gz
opie-e7f79ca3acf58aef3ff150a2974f8087189621f5.tar.bz2
assorted fixes and more work on GPS
Diffstat (limited to 'noncore/net/wellenreiter/gui/gps.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/gui/gps.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/noncore/net/wellenreiter/gui/gps.cpp b/noncore/net/wellenreiter/gui/gps.cpp
index c3bff53..4a24647 100644
--- a/noncore/net/wellenreiter/gui/gps.cpp
+++ b/noncore/net/wellenreiter/gui/gps.cpp
@@ -15,3 +15,51 @@
#include "gps.h"
+GPS::GPS( QObject* parent, const char * name )
+ :QObject( parent, name )
+{
+ qDebug( "GPS::GPS()" );
+ _socket = new QSocket( this, "gpsd commsock" );
+}
+
+
+GPS::~GPS()
+{
+ qDebug( "GPS::~GPS()" );
+}
+
+
+bool GPS::open( const QString& host, int port )
+{
+ _socket->connectToHost( host, port );
+}
+
+
+float GPS::latitude() const
+{
+ char buf[256];
+
+ int result = _socket->writeBlock( "p\r\n", 3 );
+ if ( result )
+ {
+ qDebug( "GPS write succeeded" );
+ _socket->waitForMore( 20 );
+ if ( _socket->canReadLine() )
+ {
+
+ int num = _socket->readLine( &buf[0], sizeof buf );
+ if ( num )
+ {
+ qDebug( "GPS got line: %s", &buf );
+ return 0.0;
+ }
+ }
+ }
+ return -1.0;
+}
+
+
+float GPS::longitute() const
+{
+}
+