phins_ixsea
NmeaRecord.hpp
Go to the documentation of this file.
1 
6 #ifndef _PHINS_IXSEA_NMEARECORD_HPP_
7 #define _PHINS_IXSEA_NMEARECORD_HPP_
8 
9 #include <vector>
10 #include <string>
11 
12 
13 
14 namespace phins_ixsea{
15 
16  class NmeaRecord {
17 
18 
19  public:
20  enum {MaxFields = 64};
21 
22  NmeaRecord();
23  NmeaRecord(std::string s);
24  NmeaRecord(const char *buffer, size_t size);
25 
26  int setRecord(std::string rec);
27 
28  int size();
29  std::string checksum(std::string str) const;
30 
31  std::string field(int i) const;
32  std::string operator[](int i) const;
33  void setField(int i, const std::string& text);
34 
35  bool isEmpty() const { return (mFields.size() == 0); }
36  bool isValid() const { return mValid ; }
37  bool isValidData() const { return mValid ;}
38 
39  std::string header() const;
40 
41  std::string sentence(bool cs = true) const;
42 
43  private:
44  bool mValid;
45  std::vector<std::string> mFields;
46 
47  int clearRecord();
48  std::string toHex(uint64_t num, int len) const;
49 
50  // void setField(int i, int val);
51  // void setField(int i, double val);
52  // void setField(int i, const s &val);
53 
54  };
55 
56 } // end namespace phins_ixsea
57 
58 
59 #endif /* _PHINS_IXSEA_NMEARECORD_HPP_ */
int size()
Definition: NmeaRecord.cpp:110
bool isValid() const
Definition: NmeaRecord.hpp:36
void setField(int i, const std::string &text)
Definition: NmeaRecord.cpp:100
NmeaRecord()
Definition: NmeaRecord.cpp:21
std::string header() const
Definition: NmeaRecord.cpp:81
std::string sentence(bool cs=true) const
Definition: NmeaRecord.cpp:131
std::string checksum(std::string str) const
Definition: NmeaRecord.cpp:70
bool isEmpty() const
Definition: NmeaRecord.hpp:35
std::string field(int i) const
Definition: NmeaRecord.cpp:88
Definition: Driver.hpp:18
std::string operator[](int i) const
Definition: NmeaRecord.cpp:95
Definition: NmeaRecord.hpp:20
Definition: NmeaRecord.hpp:16
int setRecord(std::string rec)
splits coma sperated nmea string and puts each word in array of strings Error
Definition: NmeaRecord.cpp:44
bool isValidData() const
Definition: NmeaRecord.hpp:37