NMEAParser
NMEA Parser Library - Monte Variakojis @VisualGPS
|
This class will parse NMEA data, store its data and report that it has received data. More...
#include <NMEAParser.h>
Public Member Functions | |
CNMEAParser () | |
virtual | ~CNMEAParser () |
void | ResetData (void) |
Resets or clears all NMEA data to a known default value. More... | |
CNMEAParserData::ERROR_E | GetGPGGA (CNMEAParserData::GGA_DATA_T &sentenseData) |
Places a copy of the GPGGA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGPGSV (CNMEAParserData::GSV_DATA_T &sentenseData) |
Places a copy of the GPGSV data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGPGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the GPGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGPRMC (CNMEAParserData::RMC_DATA_T &sentenseData) |
Places a copy of the GPRMC data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGNGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the GNGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGLGSV (CNMEAParserData::GSV_DATA_T &sentenseData) |
Places a copy of the GLGSV data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGLGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the GLGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetQZGSV (CNMEAParserData::GSV_DATA_T &sentenseData) |
Places a copy of the QZGSV data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetQZGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the QZGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetBDGSV (CNMEAParserData::GSV_DATA_T &sentenseData) |
Places a copy of the BDGSV data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetBDGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the QZGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGAGGA (CNMEAParserData::GGA_DATA_T &sentenseData) |
Places a copy of the GAGGA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGAGSA (CNMEAParserData::GSA_DATA_T &sentenseData) |
Places a copy of the GAGSA data into sentenseData. More... | |
CNMEAParserData::ERROR_E | GetGARMC (CNMEAParserData::RMC_DATA_T &sentenseData) |
Places a copy of the GARMC data into sentenseData. More... | |
Public Member Functions inherited from CNMEAParserPacket | |
CNMEAParserPacket () | |
~CNMEAParserPacket () | |
CNMEAParserData::ERROR_E | ProcessNMEABuffer (char *pData, size_t nBufferSize) |
Parses pData for NMEA data. More... | |
void | Reset (void) |
Reset the parser. More... | |
virtual void | OnError (CNMEAParserData::ERROR_E nError, char *pCmd) |
This method is called whenever there is a parsing error. More... | |
Protected Member Functions | |
virtual CNMEAParserData::ERROR_E | ProcessRxCommand (char *pCmd, char *pData) |
This method is redefined from CNMEAParserPacket::ProcessRxCommand(char *pCmd, char *pData) More... | |
virtual void | DataAccessSemaphoreLock (void) |
This method will invoke a semaphore lock (mutex) for data access. More... | |
virtual void | DataAccessSemaphoreUnlock (void) |
This method will invoke a semaphore unlock (mutex) for data access. More... | |
Protected Member Functions inherited from CNMEAParserPacket | |
virtual void | TimeTag (void) |
This method is called when receiving the start of message of the NMEA packet. More... | |
Private Attributes | |
CNMEASentenceGGA | m_GPGGA |
GPGGA Specific sentence data. More... | |
CNMEASentenceGSV | m_GPGSV |
GPGSV Satellite message (GPS) More... | |
CNMEASentenceGSA | m_GPGSA |
GPGSA GNSS DOP and active satellites. More... | |
CNMEASentenceRMC | m_GPRMC |
GPRMC Recommended minimum data for GPS. More... | |
CNMEASentenceGGA | m_GAGGA |
GAGGA Specific sentence data. More... | |
CNMEASentenceGSA | m_GAGSA |
GAGSA GNSS DOP and active satellites. More... | |
CNMEASentenceRMC | m_GARMC |
GARMC Recommended minimum data for GPS. More... | |
CNMEASentenceGSA | m_GNGSA |
GNGSA GNSS DOP and active satellites (usually GPS and GLONASS but can be GLONASS only) More... | |
CNMEASentenceGSV | m_GLGSV |
GLGSV Satellite message (GLONASS) More... | |
CNMEASentenceGSA | m_GLGSA |
GLGSA GNSS DOP and active satellites. More... | |
CNMEASentenceGSV | m_QZGSV |
QZGSV Satellite message (BeiDou) More... | |
CNMEASentenceGSA | m_QZGSA |
QZGSA GNSS DOP and active satellites. More... | |
CNMEASentenceGSV | m_BDGSV |
BDGSV Satellite message (QZSS) More... | |
CNMEASentenceGSA | m_BDGSA |
BDGSA GNSS DOP and active satellites. More... | |
This class will parse NMEA data, store its data and report that it has received data.
Definition at line 42 of file NMEAParser.h.
CNMEAParser::CNMEAParser | ( | ) |
Definition at line 29 of file NMEAParser.cpp.
|
virtual |
Definition at line 34 of file NMEAParser.cpp.
|
inlineprotectedvirtual |
This method will invoke a semaphore lock (mutex) for data access.
Redefine this method if you will be access this class from different threads.
Definition at line 188 of file NMEAParser.h.
|
inlineprotectedvirtual |
This method will invoke a semaphore unlock (mutex) for data access.
Redefine this method if you will be access this class from different threads.
Definition at line 195 of file NMEAParser.h.
CNMEAParserData::ERROR_E CNMEAParser::GetBDGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the QZGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 146 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetBDGSV | ( | CNMEAParserData::GSV_DATA_T & | sentenseData | ) |
Places a copy of the BDGSV data into sentenseData.
sentenseData | reference to a CNMEASentenceGSV object to place the data into. |
Definition at line 138 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGAGGA | ( | CNMEAParserData::GGA_DATA_T & | sentenseData | ) |
Places a copy of the GAGGA data into sentenseData.
sentenseData | reference to a CNMEASentenceGGA object to place the data into. |
Definition at line 154 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGAGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the GAGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 162 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGARMC | ( | CNMEAParserData::RMC_DATA_T & | sentenseData | ) |
Places a copy of the GARMC data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 170 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGLGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the GLGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 114 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGLGSV | ( | CNMEAParserData::GSV_DATA_T & | sentenseData | ) |
Places a copy of the GLGSV data into sentenseData.
sentenseData | reference to a CNMEASentenceGSV object to place the data into. |
Definition at line 106 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGNGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the GNGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 98 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGPGGA | ( | CNMEAParserData::GGA_DATA_T & | sentenseData | ) |
Places a copy of the GPGGA data into sentenseData.
sentenseData | reference to a CNMEASentenceGGA object to place the data into. |
Definition at line 66 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGPGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the GPGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 82 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGPGSV | ( | CNMEAParserData::GSV_DATA_T & | sentenseData | ) |
Places a copy of the GPGSV data into sentenseData.
sentenseData | reference to a CNMEASentenceGSV object to place the data into. |
Definition at line 74 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetGPRMC | ( | CNMEAParserData::RMC_DATA_T & | sentenseData | ) |
Places a copy of the GPRMC data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 90 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetQZGSA | ( | CNMEAParserData::GSA_DATA_T & | sentenseData | ) |
Places a copy of the QZGSA data into sentenseData.
sentenseData | reference to a CNMEASentenceGSA object to place the data into. |
Definition at line 130 of file NMEAParser.cpp.
CNMEAParserData::ERROR_E CNMEAParser::GetQZGSV | ( | CNMEAParserData::GSV_DATA_T & | sentenseData | ) |
Places a copy of the QZGSV data into sentenseData.
sentenseData | reference to a CNMEASentenceGSV object to place the data into. |
Definition at line 122 of file NMEAParser.cpp.
|
protectedvirtual |
This method is redefined from CNMEAParserPacket::ProcessRxCommand(char *pCmd, char *pData)
pCmd | Pointer to the NMEA command string |
pData | Comma separated data that belongs to the command |
Implements CNMEAParserPacket.
Definition at line 178 of file NMEAParser.cpp.
void CNMEAParser::ResetData | ( | void | ) |
Resets or clears all NMEA data to a known default value.
Definition at line 38 of file NMEAParser.cpp.
|
private |
BDGSA GNSS DOP and active satellites.
Definition at line 64 of file NMEAParser.h.
|
private |
BDGSV Satellite message (QZSS)
Definition at line 63 of file NMEAParser.h.
|
private |
GAGGA Specific sentence data.
Definition at line 51 of file NMEAParser.h.
|
private |
GAGSA GNSS DOP and active satellites.
Definition at line 52 of file NMEAParser.h.
|
private |
GARMC Recommended minimum data for GPS.
Definition at line 53 of file NMEAParser.h.
|
private |
GLGSA GNSS DOP and active satellites.
Definition at line 58 of file NMEAParser.h.
|
private |
GLGSV Satellite message (GLONASS)
Definition at line 57 of file NMEAParser.h.
|
private |
GNGSA GNSS DOP and active satellites (usually GPS and GLONASS but can be GLONASS only)
Definition at line 55 of file NMEAParser.h.
|
private |
GPGGA Specific sentence data.
Definition at line 46 of file NMEAParser.h.
|
private |
GPGSA GNSS DOP and active satellites.
Definition at line 48 of file NMEAParser.h.
|
private |
GPGSV Satellite message (GPS)
Definition at line 47 of file NMEAParser.h.
|
private |
GPRMC Recommended minimum data for GPS.
Definition at line 49 of file NMEAParser.h.
|
private |
QZGSA GNSS DOP and active satellites.
Definition at line 61 of file NMEAParser.h.
|
private |
QZGSV Satellite message (BeiDou)
Definition at line 60 of file NMEAParser.h.