14035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. 24035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * 34035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * Redistribution and use in source and binary forms, with or without 44035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * modification, are permitted provided that the following conditions are 54035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * met: 64035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * * Redistributions of source code must retain the above copyright 74035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * notice, this list of conditions and the following disclaimer. 84035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * * Redistributions in binary form must reproduce the above 94035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * copyright notice, this list of conditions and the following 104035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * disclaimer in the documentation and/or other materials provided 114035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * with the distribution. 124035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * * Neither the name of The Linux Foundation, nor the names of its 134035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * contributors may be used to endorse or promote products derived 144035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * from this software without specific prior written permission. 154035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * 164035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 174035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 184035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 194035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 204035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 214035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 224035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 234035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 244035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 254035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 264035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 274035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin * 284035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin */ 294035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#ifndef LOC_ENG_MSG_H 304035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#define LOC_ENG_MSG_H 314035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 324035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 334035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <hardware/gps.h> 344035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <gps_extended.h> 354035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <stdlib.h> 364035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <string.h> 374035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <log_util.h> 384035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <loc_eng_log.h> 394035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <loc_eng.h> 404035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <MsgTask.h> 414035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <LocEngAdapter.h> 424035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 434035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#ifndef SSID_BUF_SIZE 444035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin #define SSID_BUF_SIZE (32+1) 454035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#endif 464035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#ifdef USE_GLIB 474035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 484035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include <glib.h> 494035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 504035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#endif /* USE_GLIB */ 514035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#include "platform_lib_includes.h" 524035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 534035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#ifdef __cplusplus 544035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinextern "C" { 554035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#endif /* __cplusplus */ 564035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 574035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinusing namespace loc_core; 584035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 594035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngPositionMode : public LocMsg { 604035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngAdapter* mAdapter; 614035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const LocPosMode mPosMode; 624035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngPositionMode(LocEngAdapter* adapter, LocPosMode &mode); 634035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 644035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 654035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 664035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 674035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 684035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 694035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngStartFix : public LocMsg { 704035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngAdapter* mAdapter; 714035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngStartFix(LocEngAdapter* adapter); 724035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 734035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 744035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 754035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 764035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 774035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 784035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngStopFix : public LocMsg { 794035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngAdapter* mAdapter; 804035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngStopFix(LocEngAdapter* adapter); 814035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 824035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 834035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 844035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 854035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 864035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 874035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReportPosition : public LocMsg { 884035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocAdapterBase* mAdapter; 894035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const UlpLocation mLocation; 904035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const GpsLocationExtended mLocationExtended; 914035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const void* mLocationExt; 924035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const enum loc_sess_status mStatus; 934035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const LocPosTechMask mTechMask; 944035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReportPosition(LocAdapterBase* adapter, 954035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin UlpLocation &loc, 964035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin GpsLocationExtended &locExtended, 974035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* locExt, 984035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin enum loc_sess_status st, 994035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocPosTechMask technology); 1004035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1014035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1024035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1034035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 1044035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1054035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1064035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReportSv : public LocMsg { 1074035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocAdapterBase* mAdapter; 10878bdcaf6f906f34d5744534024d6f6148890c023Mike Cailean const GnssSvStatus mSvStatus; 1094035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const GpsLocationExtended mLocationExtended; 1104035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const void* mSvExt; 1114035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReportSv(LocAdapterBase* adapter, 11278bdcaf6f906f34d5744534024d6f6148890c023Mike Cailean GnssSvStatus &sv, 1134035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin GpsLocationExtended &locExtended, 1144035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* svExtended); 1154035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1164035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1174035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1184035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 1194035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1204035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1214035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReportStatus : public LocMsg { 1224035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocAdapterBase* mAdapter; 1234035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const GpsStatusValue mStatus; 1244035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReportStatus(LocAdapterBase* adapter, 1254035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin GpsStatusValue engineStatus); 1264035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1274035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1284035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1294035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1304035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1314035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReportNmea : public LocMsg { 1324035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1334035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char* const mNmea; 1344035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const int mLen; 1354035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReportNmea(void* locEng, 1364035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const char* data, int len); 1374035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin inline virtual ~LocEngReportNmea() 1384035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin { 1394035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin delete[] mNmea; 1404035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin } 1414035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1424035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1434035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1444035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1454035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1464035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReportXtraServer : public LocMsg { 1474035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1484035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin int mMaxLen; 1494035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char *mServers; 1504035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReportXtraServer(void* locEng, 1514035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const char *url1, const char *url2, 1524035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const char *url3, const int maxlength); 1534035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin inline virtual ~LocEngReportXtraServer() 1544035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin { 1554035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin delete[] mServers; 1564035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin } 1574035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1584035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1594035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1604035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1614035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1624035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngSuplEsOpened : public LocMsg { 1634035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1644035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngSuplEsOpened(void* locEng); 1654035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1664035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1674035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1684035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1694035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1704035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngSuplEsClosed : public LocMsg { 1714035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1724035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngSuplEsClosed(void* locEng); 1734035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1744035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1754035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1764035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1774035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1784035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngRequestSuplEs : public LocMsg { 1794035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1804035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const int mID; 1814035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngRequestSuplEs(void* locEng, int id); 1824035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1834035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1844035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1854035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1864035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1874035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngRequestATL : public LocMsg { 1884035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 1894035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const int mID; 1904035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const AGpsExtType mType; 1914035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngRequestATL(void* locEng, int id, 1924035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin AGpsExtType agps_type); 1934035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 1944035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 1954035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 1964035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 1974035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 1984035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReleaseATL : public LocMsg { 1994035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2004035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const int mID; 2014035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReleaseATL(void* locEng, int id); 2024035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2034035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2044035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2054035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2064035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2074035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReqRelBIT : public LocMsg { 2084035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2094035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const AGpsExtType mType; 2104035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const int mIPv4Addr; 2114035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char* const mIPv6Addr; 2124035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const bool mIsReq; 2134035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReqRelBIT(void* instance, AGpsExtType type, 2144035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin int ipv4, char* ipv6, bool isReq); 2154035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual ~LocEngReqRelBIT(); 2164035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2174035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2184035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2194035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 2204035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2214035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2224035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngReqRelWifi : public LocMsg { 2234035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2244035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const AGpsExtType mType; 2254035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const loc_if_req_sender_id_e_type mSenderId; 2264035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char* const mSSID; 2274035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char* const mPassword; 2284035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const bool mIsReq; 2294035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngReqRelWifi(void* locEng, AGpsExtType type, 2304035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin loc_if_req_sender_id_e_type sender_id, 2314035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin char* s, char* p, bool isReq); 2324035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual ~LocEngReqRelWifi(); 2334035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2344035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2354035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2364035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 2374035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2384035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2394035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngRequestXtra : public LocMsg { 2404035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2414035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngRequestXtra(void* locEng); 2424035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2434035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2444035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2454035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2464035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2474035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngRequestTime : public LocMsg { 2484035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2494035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngRequestTime(void* locEng); 2504035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2514035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2524035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2534035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2544035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2554035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngRequestNi : public LocMsg { 2564035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2574035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const GpsNiNotification mNotify; 2584035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const void *mPayload; 2594035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngRequestNi(void* locEng, 2604035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin GpsNiNotification ¬if, 2614035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin const void* data); 2624035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2634035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2644035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2654035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2664035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2674035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngDown : public LocMsg { 2684035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2694035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngDown(void* locEng); 2704035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2714035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2724035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2734035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2744035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2754035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngUp : public LocMsg { 2764035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 2774035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngUp(void* locEng); 2784035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2794035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2804035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2814035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2824035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 2834035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjinstruct LocEngGetZpp : public LocMsg { 2844035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngAdapter* mAdapter; 2854035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin LocEngGetZpp(LocEngAdapter* adapter); 2864035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2874035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2884035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 2894035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void send() const; 2904035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 2914035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 29278bdcaf6f906f34d5744534024d6f6148890c023Mike Caileanstruct LocEngReportGnssMeasurement : public LocMsg { 2934035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void* mLocEng; 29478bdcaf6f906f34d5744534024d6f6148890c023Mike Cailean const GnssData mGnssData; 29578bdcaf6f906f34d5744534024d6f6148890c023Mike Cailean LocEngReportGnssMeasurement(void* locEng, 29678bdcaf6f906f34d5744534024d6f6148890c023Mike Cailean GnssData &gnssData); 2974035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void proc() const; 2984035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin void locallog() const; 2994035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin virtual void log() const; 3004035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin}; 3014035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 3024035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#ifdef __cplusplus 3034035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin} 3044035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#endif /* __cplusplus */ 3054035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin 3064035be28a255eaa5605dbd9abeb2340db584249cPatrick Tjin#endif /* LOC_ENG_MSG_H */ 307