NMEA Class Reference

#include <NMEA.h>

Inheritance diagram for NMEA:

GPGGA GPRMC

List of all members.


Detailed Description

NMEA abstract base class for representing NMEA 0183 message strings.

Public Types

enum  MESSAGE_TYPES {
  t_GPGGA = 0, t_GPRMC, t_GPGLL, t_GPGSV,
  t_GPGSA, t_GPMSS, t_GPVTG, tGPZDA,
  t_UNKNOWN
}
 NMEA sentence type enum (one for each sentence). More...
enum  FIELDS {
  FIELD_0 = 0, FIELD_1, FIELD_2, FIELD_3,
  FIELD_4, FIELD_5, FIELD_6, FIELD_7,
  FIELD_8, FIELD_9, FIELD_10, FIELD_11,
  FIELD_12, FIELD_13, FIELD_14, FIELD_15,
  FIELD_16, FIELD_17, FIELD_18, FIELD_19,
  FIELD_20, FIELD_21, FIELD_22, FIELD_23,
  FIELD_24, FIELD_25, FIELD_26, FIELD_27,
  FIELD_28, FIELD_29, FIELD_30, FIELD_31
}
 Enumeration of indices used to select NMEA string fields. More...
typedef enum NMEA::MESSAGE_TYPES MessageType
 NMEA sentence type enum (one for each sentence).

Public Member Functions

 NMEA ()
 Default no argument constructor.
MessageType getType ()
 
Returns:
NMEA message type

FieldgetField (NMEA::FIELDS index)
 
Returns:
specified field

void setField (NMEA::FIELDS field, int value)
 Set integer field.
void setField (NMEA::FIELDS field, unsigned int value)
 Set unsigned int field.
void setField (NMEA::FIELDS field, char *value)
 Set character pointer field.
void setField (NMEA::FIELDS field, char value)
 set character field
void setField (NMEA::FIELDS field, unsigned char value)
 Set unsigned character field.
void setField (NMEA::FIELDS field, double value)
 Set double field.
void setField (NMEA::FIELDS field, time_t value)
 Set time_t field.
unsigned short int checksum (const char *nmeaString) const
 Generate checksum of NMEA string Checksum is XOR checksum of all bytes between '$' and '*', exclusive.

Protected Attributes

unsigned int _nFields
 Number of fields in this NMEA message (differs by subclass).
MessageType _type
 NMEA sentence (message) type.
Field _fields [MAX_NMEA_FIELDS]
 Array of Field objects.

Member Typedef Documentation

typedef enum NMEA::MESSAGE_TYPES NMEA::MessageType

NMEA sentence type enum (one for each sentence).


Member Enumeration Documentation

enum NMEA::MESSAGE_TYPES

NMEA sentence type enum (one for each sentence).

Message Types

Note:
Note:
Currently only GPRMC and GPGGA messages are implemented.

enum NMEA::FIELDS

Enumeration of indices used to select NMEA string fields.

Subclasses create their own enumerations of mnemonics that reference (map onto) these field indices.

See also:
GPGGA::FIELDS, GPRMC::FIELDS

Reimplemented in GPGGA, and GPRMC.


Member Function Documentation

Field * NMEA::getField ( NMEA::FIELDS  index  ) 

Returns:
specified field

Parameters:
index field index
See also:
NMEA::FIELDS

void NMEA::setField ( NMEA::FIELDS  field,
int  value 
)

Set integer field.

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
unsigned int  value 
)

Set unsigned int field.

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
char *  value 
)

Set character pointer field.

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
char  value 
)

set character field

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
unsigned char  value 
)

Set unsigned character field.

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
double  value 
)

Set double field.

Parameters:
field field index
value new value

void NMEA::setField ( NMEA::FIELDS  field,
time_t  value 
)

Set time_t field.

Parameters:
field field index
value new value

unsigned short int NMEA::checksum ( const char *  nmeaString  )  const [inline]

Generate checksum of NMEA string Checksum is XOR checksum of all bytes between '$' and '*', exclusive.

Parameters:
nmeaString NMEA string to compute checksum for
Returns:
checksum value (unsigned short)


Member Data Documentation

MessageType NMEA::_type [protected]

NMEA sentence (message) type.

See also:
NMEA::MESSAGE_TYPES


The documentation for this class was generated from the following files:
Generated on Tue Jul 15 13:10:26 2008 for Benthic Imaging AUV by  doxygen 1.5.4