1
0
Fork 0

Make the use of gpsd optional.

ycs232-kbc
Jonathan Naylor 4 years ago
parent b081264e64
commit c38a8cfd27

@ -39,7 +39,7 @@ m_suffix(suffix),
m_aprsAddress(),
m_aprsPort(port),
m_aprsSocket()
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
,m_gpsdEnabled(false),
m_gpsdAddress(),
m_gpsdPort(),
@ -78,7 +78,7 @@ void CAPRSWriter::setStaticLocation(float latitude, float longitude, int height)
void CAPRSWriter::setGPSDLocation(const std::string& address, const std::string& port)
{
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
assert(!address.empty());
assert(!port.empty());
@ -90,7 +90,7 @@ void CAPRSWriter::setGPSDLocation(const std::string& address, const std::string&
bool CAPRSWriter::open()
{
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
if (m_gpsdEnabled) {
int ret = ::gps_open(m_gpsdAddress.c_str(), m_gpsdPort.c_str(), &m_gpsdData);
if (ret != 0) {
@ -183,7 +183,7 @@ void CAPRSWriter::clock(unsigned int ms)
{
m_idTimer.clock(ms);
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
if (m_gpsdEnabled) {
if (m_idTimer.hasExpired()) {
sendIdFrameMobile();
@ -197,7 +197,7 @@ void CAPRSWriter::clock(unsigned int ms)
m_idTimer.setTimeout(20U * 60U);
m_idTimer.start();
}
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
}
#endif
}
@ -206,7 +206,7 @@ void CAPRSWriter::close()
{
m_aprsSocket.close();
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
if (m_gpsdEnabled) {
::gps_stream(&m_gpsdData, WATCH_DISABLE, NULL);
::gps_close(&m_gpsdData);
@ -278,6 +278,7 @@ void CAPRSWriter::sendIdFrameFixed()
m_aprsSocket.write((unsigned char*)output, (unsigned int)::strlen(output), m_aprsAddress, m_aprsPort);
}
#if defined(USE_GPSD)
void CAPRSWriter::sendIdFrameMobile()
{
if (!::gps_waiting(&m_gpsdData, 0))
@ -367,4 +368,4 @@ void CAPRSWriter::sendIdFrameMobile()
m_aprsSocket.write((unsigned char*)output, (unsigned int)::strlen(output), m_aprsAddress, m_aprsPort);
}
#endif

@ -71,7 +71,7 @@ private:
in_addr m_aprsAddress;
unsigned int m_aprsPort;
CUDPSocket m_aprsSocket;
#if !defined(_WIN32) && !defined(_WIN64)
#if defined(USE_GPSD)
bool m_gpsdEnabled;
std::string m_gpsdAddress;
std::string m_gpsdPort;

@ -1,6 +1,12 @@
CC = gcc
CXX = g++
# Use the following CFLAGS if you don't want to use gpsd.
CFLAGS = -g -O3 -Wall -std=c++0x -pthread
# Use the following CFLAGS if you do want to use gpsd.
CFLAGS = -g -O3 -Wall -DUSE_GPSD -std=c++0x -pthread
LIBS = -lm -lpthread -lgps
LDFLAGS = -g

@ -19,6 +19,6 @@
#if !defined(VERSION_H)
#define VERSION_H
const char* VERSION = "20200605";
const char* VERSION = "20200621";
#endif

Loading…
Cancel
Save