INTRODUCTION
Overview
Download and Install
Documentation
Publications

REPOSITORY
Libraries

DEVELOPER
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         
gbxgarminacfr/driver.h
1/*
2 * GearBox Project: Peer-Reviewed Open-Source Libraries for Robotics
3 * http://gearbox.sf.net/
4 * Copyright (c) 2004-2010 Duncan Mercer, Alex Brooks, Alexei Makarenko, Tobias Kaupp
5 *
6 * This distribution is licensed to you under the terms described in
7 * the LICENSE file included in this distribution.
8 *
9 */
10
11#ifndef GBXGARMINACFR_DRIVER_H
12#define GBXGARMINACFR_DRIVER_H
13
14#include <gbxserialacfr/serial.h>
15#include <gbxutilacfr/tracer.h>
16#include <gbxutilacfr/status.h>
17#include <memory>
18#include <gbxgarminacfr/nmeamessages.h>
19
20namespace gbxgarminacfr {
21
23class Config
24{
25public:
26 Config() :
27 protocol("Garmin"),
28 readGga(true),
29 readVtg(true),
30 readRme(true),
31 readRmc(false),
32 ignoreUnknown(false) {};
33
35 bool isValid( std::string &reason ) const;
36
38 std::string toString() const;
39
41 std::string device;
42
44 std::string protocol;
45
47 bool readGga;
49 bool readVtg;
51 bool readRme;
53 bool readRmc;
54
59};
60
87class Driver
88{
89
90public:
91
97 Driver( const Config &config,
98 gbxutilacfr::Tracer &tracer,
99 gbxutilacfr::Status &status,
100 int serialDebugLevel = 0 );
101
102 ~Driver();
103
120 std::auto_ptr<GenericData> read();
121
122private:
123
124 void init();
125 void enableDevice();
126 void disableDevice();
127
128 std::auto_ptr<gbxserialacfr::Serial> serial_;
129
130 Config config_;
131 gbxutilacfr::Tracer& tracer_;
132 gbxutilacfr::Status& status_;
133};
134
135} // namespace
136
137#endif
Configuration structure.
Definition: gbxgarminacfr/driver.h:24
bool readVtg
Read GPVTG sentence.
Definition: gbxgarminacfr/driver.h:49
bool isValid(std::string &reason) const
Returns true if the configuration is sane. Checks include:
Definition: gbxgarminacfr/driver.cpp:31
std::string device
Serial device. e.g. "/dev/ttyS0".
Definition: gbxgarminacfr/driver.h:41
bool readGga
Read GPGGA sentence.
Definition: gbxgarminacfr/driver.h:47
bool readRmc
Read GPRMC sentence.
Definition: gbxgarminacfr/driver.h:53
bool readRme
Read PGRME sentence.
Definition: gbxgarminacfr/driver.h:51
std::string toString() const
Returns human-readable configuration description.
Definition: gbxgarminacfr/driver.cpp:55
std::string protocol
Serial Protocol: Garmin or NMEA.
Definition: gbxgarminacfr/driver.h:44
bool ignoreUnknown
Definition: gbxgarminacfr/driver.h:58
Definition: gbxgarminacfr/driver.h:88
Driver(const Config &config, gbxutilacfr::Tracer &tracer, gbxutilacfr::Status &status, int serialDebugLevel=0)
Definition: gbxgarminacfr/driver.cpp:67
std::auto_ptr< GenericData > read()
Definition: gbxgarminacfr/driver.cpp:184
Local interface to component status.
Definition: status.h:254
Definition: tracer.h:112
Garmin GPS driver.
 

Generated for GearBox by  doxygen 1.4.5