74 lines
1.4 KiB
C++
74 lines
1.4 KiB
C++
//
|
|
// Linux GPS
|
|
//
|
|
|
|
/* prevent multiple inclusions */
|
|
#ifndef __KmlFile__
|
|
#define __KmlFile__
|
|
|
|
/* includes *****************************************************************/
|
|
|
|
#include <libxml/parser.h>
|
|
#include <libxml/tree.h>
|
|
|
|
#include "netlib.h"
|
|
|
|
#include "GpsTrack.h"
|
|
|
|
/* defines ******************************************************************/
|
|
|
|
/* macros *******************************************************************/
|
|
|
|
/* structs & typedefs *******************************************************/
|
|
|
|
/* c class definitions ******************************************************/
|
|
|
|
//
|
|
// GpsLinux because it depennds on GPSd, the HAMLIB and NMEAP libraries
|
|
//
|
|
class KmlFile {
|
|
// public data
|
|
public:
|
|
xmlDocPtr xmlDoc;
|
|
xmlNodePtr xmlRoot;
|
|
|
|
// folders we're interested in
|
|
xmlNodePtr xmlRoutes;
|
|
xmlNodePtr xmlTracks;
|
|
xmlNodePtr xmlWaypoints;
|
|
|
|
// parser
|
|
|
|
// protected data
|
|
protected:
|
|
FILE *fileKml;
|
|
|
|
// private data
|
|
private:
|
|
// static data
|
|
|
|
// private methods
|
|
|
|
// public methods
|
|
public:
|
|
// constructors
|
|
KmlFile();
|
|
|
|
// destructor
|
|
virtual ~KmlFile();
|
|
|
|
// virtual functions
|
|
|
|
// public methods
|
|
int Open( const char *file );
|
|
void Close( void );
|
|
int Create( const char *file );
|
|
|
|
GpsTrack *GetTracks(void);
|
|
|
|
// static methods
|
|
static time_t ParseTime( const char *time );
|
|
};
|
|
|
|
#endif
|