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 
20 namespace gbxgarminacfr {
21 
23 class Config
24 {
25 public:
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 
87 class Driver
88 {
89 
90 public:
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 
122 private:
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
bool ignoreUnknown
Definition: gbxgarminacfr/driver.h:58
bool readRmc
Read GPRMC sentence.
Definition: gbxgarminacfr/driver.h:53
std::string protocol
Serial Protocol: Garmin or NMEA.
Definition: gbxgarminacfr/driver.h:44
std::string toString() const
Returns human-readable configuration description.
Definition: gbxgarminacfr/driver.cpp:55
bool readGga
Read GPGGA sentence.
Definition: gbxgarminacfr/driver.h:47
Garmin GPS driver.
Local and remote tracing.
Definition: tracer.h:111
std::string device
Serial device. e.g. "/dev/ttyS0".
Definition: gbxgarminacfr/driver.h:41
Definition: gbxgarminacfr/driver.h:87
bool isValid(std::string &reason) const
Returns true if the configuration is sane. Checks include:
Definition: gbxgarminacfr/driver.cpp:31
Local interface to component status.
Definition: status.h:253
Configuration structure.
Definition: gbxgarminacfr/driver.h:23
bool readVtg
Read GPVTG sentence.
Definition: gbxgarminacfr/driver.h:49
bool readRme
Read PGRME sentence.
Definition: gbxgarminacfr/driver.h:51
 

Generated for GearBox by  doxygen 1.4.5