summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/LocIpc.cpp21
-rw-r--r--utils/LocIpc.h7
-rw-r--r--utils/gps_extended_c.h43
-rw-r--r--utils/loc_gps.h2
-rw-r--r--utils/loc_nmea.cpp5
5 files changed, 35 insertions, 43 deletions
diff --git a/utils/LocIpc.cpp b/utils/LocIpc.cpp
index ecaff01..646d2d4 100644
--- a/utils/LocIpc.cpp
+++ b/utils/LocIpc.cpp
@@ -48,7 +48,7 @@ namespace loc_util {
#define SOCK_OP_AND_LOG(buf, length, opable, rtv, exe) \
if (nullptr == (buf) || 0 == (length)) { \
- LOC_LOGe("Invalid inputs: buf - %p, length - %d", (buf), (length)); \
+ LOC_LOGe("Invalid inputs: buf - %p, length - %u", (buf), (length)); \
} else if (!(opable)) { \
LOC_LOGe("Invalid object: operable - %d", (opable)); \
} else { \
@@ -60,7 +60,7 @@ namespace loc_util {
const char Sock::MSG_ABORT[] = "LocIpc::Sock::ABORT";
const char Sock::LOC_IPC_HEAD[] = "$MSGLEN$";
-ssize_t Sock::send(const void *buf, size_t len, int flags, const struct sockaddr *destAddr,
+ssize_t Sock::send(const void *buf, uint32_t len, int flags, const struct sockaddr *destAddr,
socklen_t addrlen) const {
ssize_t rtv = -1;
SOCK_OP_AND_LOG(buf, len, isValid(), rtv, sendto(buf, len, flags, destAddr, addrlen));
@@ -354,20 +354,11 @@ unique_ptr<LocIpcRecver> LocIpc::getLocIpcQrtrRecver(const shared_ptr<ILocIpcLis
int service, int instance) {
typedef unique_ptr<LocIpcRecver> (*creator_t)(const shared_ptr<ILocIpcListener>&, int, int);
static creator_t creator = (creator_t)dlGetSymFromLib(sLibQrtrHandle, sLibQrtrName,
+#ifdef USE_GLIB
+ "_ZN8loc_util22createLocIpcQrtrRecverERKSt10shared_ptrINS_15ILocIpcListenerEEii");
+#else
"_ZN8loc_util22createLocIpcQrtrRecverERKNSt3__110shared_ptrINS_15ILocIpcListenerEEEii");
- return (nullptr == creator) ? nullptr : creator(listener, service, instance);
-}
-shared_ptr<LocIpcSender> LocIpc::getLocIpcQsockSender(int service, int instance) {
- typedef shared_ptr<LocIpcSender> (*creator_t) (int, int);
- static creator_t creator = (creator_t)dlGetSymFromLib(sLibQrtrHandle, sLibQrtrName,
- "_ZN8loc_util23createLocIpcQsockSenderEii");
- return (nullptr == creator) ? nullptr : creator(service, instance);
-}
-unique_ptr<LocIpcRecver> LocIpc::getLocIpcQsockRecver(const shared_ptr<ILocIpcListener>& listener,
- int service, int instance) {
- typedef unique_ptr<LocIpcRecver> (*creator_t)(const shared_ptr<ILocIpcListener>&, int, int);
- static creator_t creator = (creator_t)dlGetSymFromLib(sLibQrtrHandle, sLibQrtrName,
- "_ZN8loc_util23createLocIpcQsockRecverERKSt10shared_ptrINS_15ILocIpcListenerEEii");
+#endif
return (nullptr == creator) ? nullptr : creator(listener, service, instance);
}
shared_ptr<LocIpcSender> LocIpc::getLocIpcInetTcpSender(const char* serverName, int32_t port) {
diff --git a/utils/LocIpc.h b/utils/LocIpc.h
index 20a1c8f..b91966c 100644
--- a/utils/LocIpc.h
+++ b/utils/LocIpc.h
@@ -70,8 +70,6 @@ public:
getLocIpcInetTcpSender(const char* serverName, int32_t port);
static shared_ptr<LocIpcSender>
getLocIpcQrtrSender(int service, int instance);
- static shared_ptr<LocIpcSender>
- getLocIpcQsockSender(int service, int instance);
static unique_ptr<LocIpcRecver>
getLocIpcLocalRecver(const shared_ptr<ILocIpcListener>& listener,
@@ -82,9 +80,6 @@ public:
static unique_ptr<LocIpcRecver>
getLocIpcQrtrRecver(const shared_ptr<ILocIpcListener>& listener,
int service, int instance);
- static unique_ptr<LocIpcRecver>
- getLocIpcQsockRecver(const shared_ptr<ILocIpcListener>& listener,
- int service, int instance);
static pair<shared_ptr<LocIpcSender>, unique_ptr<LocIpcRecver>>
getLocIpcQmiLocServiceSenderRecverPair(const shared_ptr<ILocIpcListener>& listener,
@@ -164,7 +159,7 @@ public:
inline Sock(int sid, const uint32_t maxTxSize = 8192) : mMaxTxSize(maxTxSize), mSid(sid) {}
inline ~Sock() { close(); }
inline bool isValid() const { return -1 != mSid; }
- ssize_t send(const void *buf, size_t len, int flags, const struct sockaddr *destAddr,
+ ssize_t send(const void *buf, uint32_t len, int flags, const struct sockaddr *destAddr,
socklen_t addrlen) const;
ssize_t recv(const shared_ptr<ILocIpcListener>& dataCb, int flags, struct sockaddr *srcAddr,
socklen_t *addrlen, int sid = -1) const;
diff --git a/utils/gps_extended_c.h b/utils/gps_extended_c.h
index 9f4c13c..9c63166 100644
--- a/utils/gps_extended_c.h
+++ b/utils/gps_extended_c.h
@@ -35,7 +35,12 @@
#include <string.h>
#include <loc_gps.h>
#include <LocationAPI.h>
-#include <time.h>
+
+struct timespec32_t {
+ uint32_t tv_sec; /* seconds */
+ uint32_t tv_nsec; /* and nanoseconds */
+};
+
/**
* @file
@@ -132,7 +137,7 @@ typedef enum {
typedef struct {
/** set to sizeof(UlpLocation) */
- size_t size;
+ uint32_t size;
LocGpsLocation gpsLocation;
/* Provider indicator for HYBRID or GPS */
uint16_t position_source;
@@ -142,7 +147,7 @@ typedef struct {
typedef struct {
/** set to sizeof(UlpNmea) */
- size_t size;
+ uint32_t size;
char nmea_str[ULP_MAX_NMEA_STRING_SIZE];
unsigned int len;
} UlpNmea;
@@ -208,7 +213,7 @@ typedef struct {
/** GPS extended callback structure. */
typedef struct {
/** set to sizeof(LocGpsCallbacks) */
- size_t size;
+ uint32_t size;
loc_gps_set_capabilities set_capabilities_cb;
loc_gps_acquire_wakelock acquire_wakelock_cb;
loc_gps_release_wakelock release_wakelock_cb;
@@ -232,7 +237,7 @@ typedef struct {
/** Represents the status of AGPS. */
typedef struct {
/** set to sizeof(AGpsExtStatus) */
- size_t size;
+ uint32_t size;
AGpsExtType type;
LocAGpsStatusValue status;
@@ -458,7 +463,7 @@ typedef enum {
}LocReliability;
typedef struct {
- struct timespec apTimeStamp;
+ struct timespec32_t apTimeStamp;
/*boottime received from pps-ktimer*/
float apTimeStampUncertaintyMs;
/* timestamp uncertainty in milli seconds */
@@ -685,7 +690,7 @@ typedef struct {
/** Represents gps location extended. */
typedef struct {
/** set to sizeof(GpsLocationExtended) */
- size_t size;
+ uint32_t size;
/** Contains GpsLocationExtendedFlags bits. */
uint64_t flags;
/** Contains the Altitude wrt mean sea level */
@@ -1058,7 +1063,7 @@ typedef enum
typedef struct
{
- size_t size;
+ uint32_t size;
float clockDrift;
/**< Receiver clock Drift \n
- Units: meter per sec \n
@@ -1072,7 +1077,7 @@ typedef struct
typedef struct
{
- size_t size;
+ uint32_t size;
uint8_t leapSec;
/**< GPS time leap second delta to UTC time \n
- Units: sec \n
@@ -1093,7 +1098,7 @@ typedef enum
typedef struct
{
- size_t size;
+ uint32_t size;
uint32_t validMask;
/* Validity mask as per Gnss_LocInterSystemBiasValidMaskType */
@@ -1110,7 +1115,7 @@ typedef struct
typedef struct {
- size_t size;
+ uint32_t size;
uint8_t systemRtc_valid;
/**< Validity indicator for System RTC */
@@ -1156,7 +1161,7 @@ typedef enum
typedef struct
{
- size_t size;
+ uint32_t size;
uint32_t svMs;
/**< Satellite time milisecond.\n
For GPS, BDS, GAL range of 0 thru (604800000-1) \n
@@ -1216,7 +1221,7 @@ typedef enum
typedef struct
{
- size_t size;
+ uint32_t size;
Gnss_LocSvSystemEnumType gnssSystem;
// 0 signal type mask indicates invalid value
GnssSignalTypeMask gnssSignalTypeMask;
@@ -1389,7 +1394,7 @@ typedef uint64_t GpsSvMeasHeaderFlags;
typedef struct
{
- size_t size;
+ uint32_t size;
// see defines in GNSS_SV_MEAS_HEADER_HAS_XXX_XXX
uint64_t flags;
@@ -1433,7 +1438,7 @@ typedef struct
} GnssSvMeasurementHeader;
typedef struct {
- size_t size;
+ uint32_t size;
bool isNhz;
GnssSvMeasurementHeader svMeasSetHeader;
uint32_t svMeasCount;
@@ -1473,7 +1478,7 @@ typedef enum
typedef struct
{
- size_t size;
+ uint32_t size;
uint16_t gnssSvId;
/* GPS: 1-32, GLO: 65-96, 0: Invalid,
SBAS: 120-151, BDS:201-237,GAL:301 to 336
@@ -2034,7 +2039,7 @@ typedef enum {
typedef struct
{
- size_t size;
+ uint32_t size;
Gnss_SrnTech srnTechType; /* SRN Technology type in request */
bool srnRequest; /* scan - start(true) or stop(false) */
bool e911Mode; /* If in E911 emergency */
@@ -2054,7 +2059,7 @@ typedef enum {
/* This SV Type config is injected directly to GNSS Adapter
* bypassing Location API */
typedef struct {
- size_t size; // set to sizeof(GnssSvTypeConfig)
+ uint32_t size; // set to sizeof(GnssSvTypeConfig)
// Enabled Constellations
GnssSvTypesMask enabledSvTypesMask;
// Disabled Constellations
@@ -2141,7 +2146,7 @@ enum OdcpiRequestType {
ODCPI_REQUEST_TYPE_STOP
};
struct OdcpiRequestInfo {
- size_t size;
+ uint32_t size;
OdcpiRequestType type;
uint32_t tbfMillis;
bool isEmergencyMode;
diff --git a/utils/loc_gps.h b/utils/loc_gps.h
index b58f20b..eae7383 100644
--- a/utils/loc_gps.h
+++ b/utils/loc_gps.h
@@ -548,7 +548,7 @@ typedef uint8_t LocGnssConstellationType;
/** Represents a location. */
typedef struct {
/** set to sizeof(LocGpsLocation) */
- size_t size;
+ uint32_t size;
/** Contains LocGpsLocationFlags bits. */
uint16_t flags;
/** The spoof mask */
diff --git a/utils/loc_nmea.cpp b/utils/loc_nmea.cpp
index 45b4f06..abcf5b7 100644
--- a/utils/loc_nmea.cpp
+++ b/utils/loc_nmea.cpp
@@ -792,6 +792,7 @@ SIDE EFFECTS
===========================================================================*/
static void loc_nmea_generate_DTM(const LocLla &ref_lla,
const LocLla &local_lla,
+ char *talker,
char *sentence,
int bufSize)
{
@@ -828,7 +829,7 @@ static void loc_nmea_generate_DTM(const LocLla &ref_lla,
default:
break;
}
- length = snprintf(pMarker , lengthRemaining , "$GPDTM,%s,," , local_datum);
+ length = snprintf(pMarker , lengthRemaining , "$%sDTM,%s,," , talker, local_datum);
if (length < 0 || length >= lengthRemaining) {
LOC_LOGE("NMEA Error in string formatting");
return;
@@ -1226,7 +1227,7 @@ void loc_nmea_generate_pos(const UlpLocation &location,
// -------------------
// ------$--DTM-------
// -------------------
- loc_nmea_generate_DTM(ref_lla, local_lla, sentence_DTM, sizeof(sentence_DTM));
+ loc_nmea_generate_DTM(ref_lla, local_lla, talker, sentence_DTM, sizeof(sentence_DTM));
// -------------------
// ------$--RMC-------