Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages | Examples

ArGPSConnector Class Reference

#include <ArGPSConnector.h>

List of all members.


Detailed Description

Factory for creating ArGPS objects based on command-line parameters.

Use createGPS() to create a GPS object.

Note:
The device connection object created by ArGPSConnector is destroyed when ArGPSConnector is destroyed. Therefore, you must not destroy an ArGPSConnector while its associated ArGPS is in use.
The following command-line arguments are checked:
GPS options:
-gpsType <standard|novatel|novatelspan|trimble>	Select GPS device type (default: standard)
-gpsPort <gpsSerialPort>	Use the given serial port (default: /dev/ttyS1)
-gpsBaud <gpsSerialBaudRate>	Use the given serial Baud rate (default: 9600)
-remoteGpsTcpHost <host>	Use a TCP connection instead of serial, and connect to remote host <host>
-remoteGpsTcpPort <host>	Use the given port number for TCP connection, if using TCP. (default 8103)
Examples:

gpsExample.cpp, and gpsRobotTaskExample.cpp.


Public Types

enum  GPSType {
  Standard, Novatel, Trimble, Invalid,
  NovatelSPAN
}
 Device type identifiers. More...

Public Member Functions

 ArGPSConnector (ArArgumentParser *argParser)
ArGPScreate (ArRobot *robot=NULL)
ArGPScreateGPS (ArRobot *robot=NULL)
GPSType getGPSType () const
bool parseArgs ()

Protected Member Functions

GPSType deviceTypeFromString (const char *str)
void logOptions ()

Protected Attributes

ArArgumentParsermyArgParser
int myBaud
ArDeviceConnectionmyDeviceCon
GPSType myDeviceType
ArFunctorC< ArGPSConnectormyLogArgsCallback
ArRetFunctorC< bool, ArGPSConnectormyParseArgsCallback
const char * myPort
const char * myTCPHost
int myTCPPort


Member Enumeration Documentation

enum ArGPSConnector::GPSType
 

Device type identifiers.

Enumeration values:
Standard  For a standard NMEA GPS device (no extra initialization or interpretation needed) accessible using ArGPS.
Novatel  For a Novatel device accessible using ArNovatelGPS.
Trimble  For a Trimble device accessible using ArTrimbleGPS.
Invalid  Not set or invalid.
NovatelSPAN  Novatel SPAN
Since:
Aria 2.7.2


Member Function Documentation

ArGPS* ArGPSConnector::create ArRobot robot = NULL  )  [inline]
 

Create a new GPS object (may be an ArGPS subclass based on device type) and a device connection for that GPS. Use ArGPS::blockingConnect() to open the connection.

Parameters:
robot If not NULL, obtain default values for GPS type, port and baud from this robot's parameters (given in parameter file), for any of these not set from command-line arguments in parseArgs().
Returns:
NULL if there was an error creating a GPS object or an error creating and opening its device connection. Otherwise, return the new GPS object.

ArGPS * ArGPSConnector::createGPS ArRobot robot = NULL  ) 
 

Create a new GPS object (may be an ArGPS subclass based on device type) and a device connection for that GPS. Use ArGPS::blockingConnect() to open the connection.

Parameters:
robot If not NULL, obtain default values for GPS type, port and baud from this robot's parameters (given in parameter file), for any of these not set from command-line arguments in parseArgs().
Returns:
NULL if there was an error creating a GPS object or an error creating and opening its device connection. Otherwise, return the new GPS object.

void ArGPSConnector::logOptions  )  [protected]
 

Log argument option information

bool ArGPSConnector::parseArgs  ) 
 

Gets command line arguments


The documentation for this class was generated from the following files:
Generated on Thu Jan 7 10:34:41 2010 for Aria by  doxygen 1.4.2