⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nmeaparser.h

📁 SYMBIAN GPS NMEA协议实现
💻 H
字号:
/************************************************************************/
/* Bluteooth Test           The.Berlin.Factor                 Juni 2003 */
/************************************************************************/

#ifndef __CNmeaParser_H__
#define __CNmeaParser_H__

#include <E32Base.h>



// Einfacher Parser fuer das Verarbeiten von NMEA Messages.
class CNmeaParser : public CBase {

public:

	// Initialisiert den Parser mit einer neuen NMEA Message. Dabei darf
	// die uebergebene Nachricht solange nicht veraendert werden, wie
	// mittels #GetNextTokenInto auf sie zugegriffen wird!
	void SetData( TDesC8 & aNmeaMessage );

	// Kopiert das naechste Token (also die Elemente zwischen den Kommas
	// der Message) in den angegebenen Buffer. Ist das Ende der Nachricht
	// erreicht, bleibt der Puffer leer.
	void GetNextTokenIntoL( TDes8 & aBuffer );

	// Ueberspringt das naechste Token der Message.
	void SkipNextTokenL( );

	// Liest die beiden folgenden Token und interpretiert sie als Winkel-
	// und North/South-Angabe.
	TReal GetNextTokensAsLatitudeL( );

	// Liest die beiden folgenden Token und interpretiert sie als Winkel-
	// und East/West-Angabe.
	TReal GetNextTokensAsLongitudeL( );

	// Returns the next token interpreted as a TInt value.
	TInt GetNextTokenAsIntL( );

	// Returns the next token interpreted as a TReal value.
	TReal GetNextTokenAsRealL( );

	// Entfernt die interne Referenz auf die in #SetData uebergebene
	// Message.
	void ClearData( );


private:

	// Enthaelt den Pointer auf die aktuell (mit #SetData) gesetzte
	// Message.
	TDesC8 * iMessage;

	// Enthaelt die aktuelle Parse Position innerhalb der aktuellen
	// Message.
	TInt iParsePosition;

};

#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -