Fixed incorrect casting for SystemStatus::setNetworkInfo call
An incorrect casting at SystemStatus::eventDataItemNotify was causing a heap overflow when trying to cast NetworkInfoDataItem into SystemStatusNetworkInfo, that is bigger. Change-Id: I3fbd88a1daf210c3c687a6f49ad868968a6efd96 CRs-fixed: 2137958
This commit is contained in:
parent
bac0979ae6
commit
53a1aa5ed5
2 changed files with 100 additions and 55 deletions
|
@ -1301,12 +1301,11 @@ SystemStatus::SystemStatus(const MsgTask* msgTask) :
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
SystemStatus - storing dataitems
|
SystemStatus - storing dataitems
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
bool SystemStatus::setNetworkInfo(const SystemStatusNetworkInfo& s)
|
template <typename TYPE_SYSTEMSTATUS_ITEM, typename TYPE_REPORT, typename TYPE_ITEMBASE>
|
||||||
|
bool SystemStatus::setItemBaseinReport(TYPE_REPORT& report, const TYPE_ITEMBASE& s)
|
||||||
{
|
{
|
||||||
mConnected = s.mConnected;
|
TYPE_SYSTEMSTATUS_ITEM sout(s);
|
||||||
SystemStatusNetworkInfo sout = s;
|
return setIteminReport(report, sout);
|
||||||
sout.mType = s.getType();
|
|
||||||
return setIteminReport(mCache.mNetworkInfo, sout);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TYPE_REPORT, typename TYPE_ITEM>
|
template <typename TYPE_REPORT, typename TYPE_ITEM>
|
||||||
|
@ -1451,93 +1450,94 @@ bool SystemStatus::eventDataItemNotify(IDataItemCore* dataitem)
|
||||||
switch(dataitem->getId())
|
switch(dataitem->getId())
|
||||||
{
|
{
|
||||||
case AIRPLANEMODE_DATA_ITEM_ID:
|
case AIRPLANEMODE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mAirplaneMode,
|
ret = setItemBaseinReport<SystemStatusAirplaneMode>(mCache.mAirplaneMode,
|
||||||
*(static_cast<SystemStatusAirplaneMode*>(dataitem)));
|
*(static_cast<AirplaneModeDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case ENH_DATA_ITEM_ID:
|
case ENH_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mENH,
|
ret = setItemBaseinReport<SystemStatusENH>(mCache.mENH,
|
||||||
*(static_cast<SystemStatusENH*>(dataitem)));
|
*(static_cast<ENHDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case GPSSTATE_DATA_ITEM_ID:
|
case GPSSTATE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mGPSState,
|
ret = setItemBaseinReport<SystemStatusGpsState>(mCache.mGPSState,
|
||||||
*(static_cast<SystemStatusGpsState*>(dataitem)));
|
*(static_cast<GPSStateDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case NLPSTATUS_DATA_ITEM_ID:
|
case NLPSTATUS_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mNLPStatus,
|
ret = setItemBaseinReport<SystemStatusNLPStatus>(mCache.mNLPStatus,
|
||||||
*(static_cast<SystemStatusNLPStatus*>(dataitem)));
|
*(static_cast<NLPStatusDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case WIFIHARDWARESTATE_DATA_ITEM_ID:
|
case WIFIHARDWARESTATE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mWifiHardwareState,
|
ret = setItemBaseinReport<SystemStatusWifiHardwareState>(mCache.mWifiHardwareState,
|
||||||
*(static_cast<SystemStatusWifiHardwareState*>(dataitem)));
|
*(static_cast<WifiHardwareStateDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case NETWORKINFO_DATA_ITEM_ID:
|
case NETWORKINFO_DATA_ITEM_ID:
|
||||||
// need special handling for this item to map emums
|
ret = setItemBaseinReport<SystemStatusNetworkInfo>(mCache.mNetworkInfo,
|
||||||
ret = setNetworkInfo(
|
*(static_cast<NetworkInfoDataItemBase*>(dataitem)));
|
||||||
*(static_cast<SystemStatusNetworkInfo*>(dataitem)));
|
|
||||||
break;
|
break;
|
||||||
case RILSERVICEINFO_DATA_ITEM_ID:
|
case RILSERVICEINFO_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mRilServiceInfo,
|
ret = setItemBaseinReport<SystemStatusServiceInfo>(mCache.mRilServiceInfo,
|
||||||
*(static_cast<SystemStatusServiceInfo*>(dataitem)));
|
*(static_cast<RilServiceInfoDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case RILCELLINFO_DATA_ITEM_ID:
|
case RILCELLINFO_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mRilCellInfo,
|
ret = setItemBaseinReport<SystemStatusRilCellInfo>(mCache.mRilCellInfo,
|
||||||
*(static_cast<SystemStatusRilCellInfo*>(dataitem)));
|
*(static_cast<RilCellInfoDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case SERVICESTATUS_DATA_ITEM_ID:
|
case SERVICESTATUS_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mServiceStatus,
|
ret = setItemBaseinReport<SystemStatusServiceStatus>(mCache.mServiceStatus,
|
||||||
*(static_cast<SystemStatusServiceStatus*>(dataitem)));
|
*(static_cast<ServiceStatusDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case MODEL_DATA_ITEM_ID:
|
case MODEL_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mModel,
|
ret = setItemBaseinReport<SystemStatusModel>(mCache.mModel,
|
||||||
*(static_cast<SystemStatusModel*>(dataitem)));
|
*(static_cast<ModelDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case MANUFACTURER_DATA_ITEM_ID:
|
case MANUFACTURER_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mManufacturer,
|
ret = setItemBaseinReport<SystemStatusManufacturer>(mCache.mManufacturer,
|
||||||
*(static_cast<SystemStatusManufacturer*>(dataitem)));
|
*(static_cast<ManufacturerDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case ASSISTED_GPS_DATA_ITEM_ID:
|
case ASSISTED_GPS_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mAssistedGps,
|
ret = setItemBaseinReport<SystemStatusAssistedGps>(mCache.mAssistedGps,
|
||||||
*(static_cast<SystemStatusAssistedGps*>(dataitem)));
|
*(static_cast<AssistedGpsDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case SCREEN_STATE_DATA_ITEM_ID:
|
case SCREEN_STATE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mScreenState,
|
ret = setItemBaseinReport<SystemStatusScreenState>(mCache.mScreenState,
|
||||||
*(static_cast<SystemStatusScreenState*>(dataitem)));
|
*(static_cast<ScreenStateDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case POWER_CONNECTED_STATE_DATA_ITEM_ID:
|
case POWER_CONNECTED_STATE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mPowerConnectState,
|
ret = setItemBaseinReport<SystemStatusPowerConnectState>(mCache.mPowerConnectState,
|
||||||
*(static_cast<SystemStatusPowerConnectState*>(dataitem)));
|
*(static_cast<PowerConnectStateDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case TIMEZONE_CHANGE_DATA_ITEM_ID:
|
case TIMEZONE_CHANGE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mTimeZoneChange,
|
ret = setItemBaseinReport<SystemStatusTimeZoneChange>(mCache.mTimeZoneChange,
|
||||||
*(static_cast<SystemStatusTimeZoneChange*>(dataitem)));
|
*(static_cast<TimeZoneChangeDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case TIME_CHANGE_DATA_ITEM_ID:
|
case TIME_CHANGE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mTimeChange,
|
ret = setItemBaseinReport<SystemStatusTimeChange>(mCache.mTimeChange,
|
||||||
*(static_cast<SystemStatusTimeChange*>(dataitem)));
|
*(static_cast<TimeChangeDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case WIFI_SUPPLICANT_STATUS_DATA_ITEM_ID:
|
case WIFI_SUPPLICANT_STATUS_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mWifiSupplicantStatus,
|
ret = setItemBaseinReport<SystemStatusWifiSupplicantStatus>(
|
||||||
*(static_cast<SystemStatusWifiSupplicantStatus*>(dataitem)));
|
mCache.mWifiSupplicantStatus,
|
||||||
|
*(static_cast<WifiSupplicantStatusDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case SHUTDOWN_STATE_DATA_ITEM_ID:
|
case SHUTDOWN_STATE_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mShutdownState,
|
ret = setItemBaseinReport<SystemStatusShutdownState>(mCache.mShutdownState,
|
||||||
*(static_cast<SystemStatusShutdownState*>(dataitem)));
|
*(static_cast<ShutdownStateDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case TAC_DATA_ITEM_ID:
|
case TAC_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mTac,
|
ret = setItemBaseinReport<SystemStatusTac>(mCache.mTac,
|
||||||
*(static_cast<SystemStatusTac*>(dataitem)));
|
*(static_cast<TacDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case MCCMNC_DATA_ITEM_ID:
|
case MCCMNC_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mMccMnc,
|
ret = setItemBaseinReport<SystemStatusMccMnc>(mCache.mMccMnc,
|
||||||
*(static_cast<SystemStatusMccMnc*>(dataitem)));
|
*(static_cast<MccmncDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case BTLE_SCAN_DATA_ITEM_ID:
|
case BTLE_SCAN_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mBtDeviceScanDetail,
|
ret = setItemBaseinReport<SystemStatusBtDeviceScanDetail>(mCache.mBtDeviceScanDetail,
|
||||||
*(static_cast<SystemStatusBtDeviceScanDetail*>(dataitem)));
|
*(static_cast<BtDeviceScanDetailsDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
case BT_SCAN_DATA_ITEM_ID:
|
case BT_SCAN_DATA_ITEM_ID:
|
||||||
ret = setIteminReport(mCache.mBtLeDeviceScanDetail,
|
ret = setItemBaseinReport<SystemStatusBtleDeviceScanDetail>(
|
||||||
*(static_cast<SystemStatusBtleDeviceScanDetail*>(dataitem)));
|
mCache.mBtLeDeviceScanDetail,
|
||||||
|
*(static_cast<BtLeDeviceScanDetailsDataItemBase*>(dataitem)));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -391,6 +391,8 @@ class SystemStatusAirplaneMode : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusAirplaneMode(bool mode=false) :
|
inline SystemStatusAirplaneMode(bool mode=false) :
|
||||||
AirplaneModeDataItemBase(mode) {}
|
AirplaneModeDataItemBase(mode) {}
|
||||||
|
inline SystemStatusAirplaneMode(const AirplaneModeDataItemBase& itemBase) :
|
||||||
|
AirplaneModeDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusAirplaneMode& peer) {
|
inline bool equals(const SystemStatusAirplaneMode& peer) {
|
||||||
return (mMode == peer.mMode);
|
return (mMode == peer.mMode);
|
||||||
}
|
}
|
||||||
|
@ -402,6 +404,8 @@ class SystemStatusENH : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusENH(bool enabled=false) :
|
inline SystemStatusENH(bool enabled=false) :
|
||||||
ENHDataItemBase(enabled) {}
|
ENHDataItemBase(enabled) {}
|
||||||
|
inline SystemStatusENH(const ENHDataItemBase& itemBase) :
|
||||||
|
ENHDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusENH& peer) {
|
inline bool equals(const SystemStatusENH& peer) {
|
||||||
return (mEnabled == peer.mEnabled);
|
return (mEnabled == peer.mEnabled);
|
||||||
}
|
}
|
||||||
|
@ -413,6 +417,8 @@ class SystemStatusGpsState : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusGpsState(bool enabled=false) :
|
inline SystemStatusGpsState(bool enabled=false) :
|
||||||
GPSStateDataItemBase(enabled) {}
|
GPSStateDataItemBase(enabled) {}
|
||||||
|
inline SystemStatusGpsState(const GPSStateDataItemBase& itemBase) :
|
||||||
|
GPSStateDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusGpsState& peer) {
|
inline bool equals(const SystemStatusGpsState& peer) {
|
||||||
return (mEnabled == peer.mEnabled);
|
return (mEnabled == peer.mEnabled);
|
||||||
}
|
}
|
||||||
|
@ -427,6 +433,8 @@ class SystemStatusNLPStatus : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusNLPStatus(bool enabled=false) :
|
inline SystemStatusNLPStatus(bool enabled=false) :
|
||||||
NLPStatusDataItemBase(enabled) {}
|
NLPStatusDataItemBase(enabled) {}
|
||||||
|
inline SystemStatusNLPStatus(const NLPStatusDataItemBase& itemBase) :
|
||||||
|
NLPStatusDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusNLPStatus& peer) {
|
inline bool equals(const SystemStatusNLPStatus& peer) {
|
||||||
return (mEnabled == peer.mEnabled);
|
return (mEnabled == peer.mEnabled);
|
||||||
}
|
}
|
||||||
|
@ -438,6 +446,8 @@ class SystemStatusWifiHardwareState : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusWifiHardwareState(bool enabled=false) :
|
inline SystemStatusWifiHardwareState(bool enabled=false) :
|
||||||
WifiHardwareStateDataItemBase(enabled) {}
|
WifiHardwareStateDataItemBase(enabled) {}
|
||||||
|
inline SystemStatusWifiHardwareState(const WifiHardwareStateDataItemBase& itemBase) :
|
||||||
|
WifiHardwareStateDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusWifiHardwareState& peer) {
|
inline bool equals(const SystemStatusWifiHardwareState& peer) {
|
||||||
return (mEnabled == peer.mEnabled);
|
return (mEnabled == peer.mEnabled);
|
||||||
}
|
}
|
||||||
|
@ -461,6 +471,10 @@ public:
|
||||||
available,
|
available,
|
||||||
connected,
|
connected,
|
||||||
roaming) {}
|
roaming) {}
|
||||||
|
inline SystemStatusNetworkInfo(const NetworkInfoDataItemBase& itemBase) :
|
||||||
|
NetworkInfoDataItemBase(itemBase) {
|
||||||
|
mType = itemBase.getType();
|
||||||
|
}
|
||||||
inline bool equals(const SystemStatusNetworkInfo& peer) {
|
inline bool equals(const SystemStatusNetworkInfo& peer) {
|
||||||
if ((mType == peer.mType) &&
|
if ((mType == peer.mType) &&
|
||||||
(mTypeName == peer.mTypeName) &&
|
(mTypeName == peer.mTypeName) &&
|
||||||
|
@ -470,8 +484,8 @@ public:
|
||||||
(mRoaming == peer.mRoaming)) {
|
(mRoaming == peer.mRoaming)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
inline void dump(void) override {
|
inline void dump(void) override {
|
||||||
LOC_LOGD("NetworkInfo: type=%u connected=%u", mType, mConnected);
|
LOC_LOGD("NetworkInfo: type=%u connected=%u", mType, mConnected);
|
||||||
}
|
}
|
||||||
|
@ -483,6 +497,8 @@ class SystemStatusServiceInfo : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusServiceInfo() :
|
inline SystemStatusServiceInfo() :
|
||||||
RilServiceInfoDataItemBase() {}
|
RilServiceInfoDataItemBase() {}
|
||||||
|
inline SystemStatusServiceInfo(const RilServiceInfoDataItemBase& itemBase) :
|
||||||
|
RilServiceInfoDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusServiceInfo& /*peer*/) {
|
inline bool equals(const SystemStatusServiceInfo& /*peer*/) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -494,6 +510,8 @@ class SystemStatusRilCellInfo : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusRilCellInfo() :
|
inline SystemStatusRilCellInfo() :
|
||||||
RilCellInfoDataItemBase() {}
|
RilCellInfoDataItemBase() {}
|
||||||
|
inline SystemStatusRilCellInfo(const RilCellInfoDataItemBase& itemBase) :
|
||||||
|
RilCellInfoDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusRilCellInfo& /*peer*/) {
|
inline bool equals(const SystemStatusRilCellInfo& /*peer*/) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -505,6 +523,8 @@ class SystemStatusServiceStatus : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusServiceStatus(int32_t mServiceState=0) :
|
inline SystemStatusServiceStatus(int32_t mServiceState=0) :
|
||||||
ServiceStatusDataItemBase(mServiceState) {}
|
ServiceStatusDataItemBase(mServiceState) {}
|
||||||
|
inline SystemStatusServiceStatus(const ServiceStatusDataItemBase& itemBase) :
|
||||||
|
ServiceStatusDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusServiceStatus& peer) {
|
inline bool equals(const SystemStatusServiceStatus& peer) {
|
||||||
return (mServiceState == peer.mServiceState);
|
return (mServiceState == peer.mServiceState);
|
||||||
}
|
}
|
||||||
|
@ -516,6 +536,8 @@ class SystemStatusModel : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusModel(string name="") :
|
inline SystemStatusModel(string name="") :
|
||||||
ModelDataItemBase(name) {}
|
ModelDataItemBase(name) {}
|
||||||
|
inline SystemStatusModel(const ModelDataItemBase& itemBase) :
|
||||||
|
ModelDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusModel& peer) {
|
inline bool equals(const SystemStatusModel& peer) {
|
||||||
return (mModel == peer.mModel);
|
return (mModel == peer.mModel);
|
||||||
}
|
}
|
||||||
|
@ -527,6 +549,8 @@ class SystemStatusManufacturer : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusManufacturer(string name="") :
|
inline SystemStatusManufacturer(string name="") :
|
||||||
ManufacturerDataItemBase(name) {}
|
ManufacturerDataItemBase(name) {}
|
||||||
|
inline SystemStatusManufacturer(const ManufacturerDataItemBase& itemBase) :
|
||||||
|
ManufacturerDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusManufacturer& peer) {
|
inline bool equals(const SystemStatusManufacturer& peer) {
|
||||||
return (mManufacturer == peer.mManufacturer);
|
return (mManufacturer == peer.mManufacturer);
|
||||||
}
|
}
|
||||||
|
@ -538,6 +562,8 @@ class SystemStatusAssistedGps : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusAssistedGps(bool enabled=false) :
|
inline SystemStatusAssistedGps(bool enabled=false) :
|
||||||
AssistedGpsDataItemBase(enabled) {}
|
AssistedGpsDataItemBase(enabled) {}
|
||||||
|
inline SystemStatusAssistedGps(const AssistedGpsDataItemBase& itemBase) :
|
||||||
|
AssistedGpsDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusAssistedGps& peer) {
|
inline bool equals(const SystemStatusAssistedGps& peer) {
|
||||||
return (mEnabled == peer.mEnabled);
|
return (mEnabled == peer.mEnabled);
|
||||||
}
|
}
|
||||||
|
@ -549,6 +575,8 @@ class SystemStatusScreenState : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusScreenState(bool state=false) :
|
inline SystemStatusScreenState(bool state=false) :
|
||||||
ScreenStateDataItemBase(state) {}
|
ScreenStateDataItemBase(state) {}
|
||||||
|
inline SystemStatusScreenState(const ScreenStateDataItemBase& itemBase) :
|
||||||
|
ScreenStateDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusScreenState& peer) {
|
inline bool equals(const SystemStatusScreenState& peer) {
|
||||||
return (mState == peer.mState);
|
return (mState == peer.mState);
|
||||||
}
|
}
|
||||||
|
@ -560,6 +588,8 @@ class SystemStatusPowerConnectState : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusPowerConnectState(bool state=false) :
|
inline SystemStatusPowerConnectState(bool state=false) :
|
||||||
PowerConnectStateDataItemBase(state) {}
|
PowerConnectStateDataItemBase(state) {}
|
||||||
|
inline SystemStatusPowerConnectState(const PowerConnectStateDataItemBase& itemBase) :
|
||||||
|
PowerConnectStateDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusPowerConnectState& peer) {
|
inline bool equals(const SystemStatusPowerConnectState& peer) {
|
||||||
return (mState == peer.mState);
|
return (mState == peer.mState);
|
||||||
}
|
}
|
||||||
|
@ -572,6 +602,8 @@ public:
|
||||||
inline SystemStatusTimeZoneChange(
|
inline SystemStatusTimeZoneChange(
|
||||||
int64_t currTimeMillis=0ULL, int32_t rawOffset=0, int32_t dstOffset=0) :
|
int64_t currTimeMillis=0ULL, int32_t rawOffset=0, int32_t dstOffset=0) :
|
||||||
TimeZoneChangeDataItemBase(currTimeMillis, rawOffset, dstOffset) {}
|
TimeZoneChangeDataItemBase(currTimeMillis, rawOffset, dstOffset) {}
|
||||||
|
inline SystemStatusTimeZoneChange(const TimeZoneChangeDataItemBase& itemBase) :
|
||||||
|
TimeZoneChangeDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusTimeZoneChange& peer) {
|
inline bool equals(const SystemStatusTimeZoneChange& peer) {
|
||||||
return ((mCurrTimeMillis == peer.mCurrTimeMillis) &&
|
return ((mCurrTimeMillis == peer.mCurrTimeMillis) &&
|
||||||
(mRawOffsetTZ == peer.mRawOffsetTZ) &&
|
(mRawOffsetTZ == peer.mRawOffsetTZ) &&
|
||||||
|
@ -586,6 +618,8 @@ public:
|
||||||
inline SystemStatusTimeChange(
|
inline SystemStatusTimeChange(
|
||||||
int64_t currTimeMillis=0ULL, int32_t rawOffset=0, int32_t dstOffset=0) :
|
int64_t currTimeMillis=0ULL, int32_t rawOffset=0, int32_t dstOffset=0) :
|
||||||
TimeChangeDataItemBase(currTimeMillis, rawOffset, dstOffset) {}
|
TimeChangeDataItemBase(currTimeMillis, rawOffset, dstOffset) {}
|
||||||
|
inline SystemStatusTimeChange(const TimeChangeDataItemBase& itemBase) :
|
||||||
|
TimeChangeDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusTimeChange& peer) {
|
inline bool equals(const SystemStatusTimeChange& peer) {
|
||||||
return ((mCurrTimeMillis == peer.mCurrTimeMillis) &&
|
return ((mCurrTimeMillis == peer.mCurrTimeMillis) &&
|
||||||
(mRawOffsetTZ == peer.mRawOffsetTZ) &&
|
(mRawOffsetTZ == peer.mRawOffsetTZ) &&
|
||||||
|
@ -599,6 +633,8 @@ class SystemStatusWifiSupplicantStatus : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusWifiSupplicantStatus() :
|
inline SystemStatusWifiSupplicantStatus() :
|
||||||
WifiSupplicantStatusDataItemBase() {}
|
WifiSupplicantStatusDataItemBase() {}
|
||||||
|
inline SystemStatusWifiSupplicantStatus(const WifiSupplicantStatusDataItemBase& itemBase) :
|
||||||
|
WifiSupplicantStatusDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusWifiSupplicantStatus& peer) {
|
inline bool equals(const SystemStatusWifiSupplicantStatus& peer) {
|
||||||
return ((mState == peer.mState) &&
|
return ((mState == peer.mState) &&
|
||||||
(mApMacAddressValid == peer.mApMacAddressValid) &&
|
(mApMacAddressValid == peer.mApMacAddressValid) &&
|
||||||
|
@ -613,6 +649,8 @@ class SystemStatusShutdownState : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusShutdownState(bool state=false) :
|
inline SystemStatusShutdownState(bool state=false) :
|
||||||
ShutdownStateDataItemBase(state) {}
|
ShutdownStateDataItemBase(state) {}
|
||||||
|
inline SystemStatusShutdownState(const ShutdownStateDataItemBase& itemBase) :
|
||||||
|
ShutdownStateDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusShutdownState& peer) {
|
inline bool equals(const SystemStatusShutdownState& peer) {
|
||||||
return (mState == peer.mState);
|
return (mState == peer.mState);
|
||||||
}
|
}
|
||||||
|
@ -624,7 +662,8 @@ class SystemStatusTac : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusTac(std::string value="") :
|
inline SystemStatusTac(std::string value="") :
|
||||||
TacDataItemBase(value) {}
|
TacDataItemBase(value) {}
|
||||||
|
inline SystemStatusTac(const TacDataItemBase& itemBase) :
|
||||||
|
TacDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusTac& peer) {
|
inline bool equals(const SystemStatusTac& peer) {
|
||||||
return (mValue == peer.mValue);
|
return (mValue == peer.mValue);
|
||||||
}
|
}
|
||||||
|
@ -639,6 +678,8 @@ class SystemStatusMccMnc : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusMccMnc(std::string value="") :
|
inline SystemStatusMccMnc(std::string value="") :
|
||||||
MccmncDataItemBase(value) {}
|
MccmncDataItemBase(value) {}
|
||||||
|
inline SystemStatusMccMnc(const MccmncDataItemBase& itemBase) :
|
||||||
|
MccmncDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusMccMnc& peer) {
|
inline bool equals(const SystemStatusMccMnc& peer) {
|
||||||
return (mValue == peer.mValue);
|
return (mValue == peer.mValue);
|
||||||
}
|
}
|
||||||
|
@ -653,6 +694,8 @@ class SystemStatusBtDeviceScanDetail : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusBtDeviceScanDetail() :
|
inline SystemStatusBtDeviceScanDetail() :
|
||||||
BtDeviceScanDetailsDataItemBase() {}
|
BtDeviceScanDetailsDataItemBase() {}
|
||||||
|
inline SystemStatusBtDeviceScanDetail(const BtDeviceScanDetailsDataItemBase& itemBase) :
|
||||||
|
BtDeviceScanDetailsDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusBtDeviceScanDetail& /*peer*/) {
|
inline bool equals(const SystemStatusBtDeviceScanDetail& /*peer*/) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -664,6 +707,8 @@ class SystemStatusBtleDeviceScanDetail : public SystemStatusItemBase,
|
||||||
public:
|
public:
|
||||||
inline SystemStatusBtleDeviceScanDetail() :
|
inline SystemStatusBtleDeviceScanDetail() :
|
||||||
BtLeDeviceScanDetailsDataItemBase() {}
|
BtLeDeviceScanDetailsDataItemBase() {}
|
||||||
|
inline SystemStatusBtleDeviceScanDetail(const BtLeDeviceScanDetailsDataItemBase& itemBase) :
|
||||||
|
BtLeDeviceScanDetailsDataItemBase(itemBase) {}
|
||||||
inline bool equals(const SystemStatusBtleDeviceScanDetail& /*peer*/) {
|
inline bool equals(const SystemStatusBtleDeviceScanDetail& /*peer*/) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -739,8 +784,8 @@ private:
|
||||||
SystemStatusReports mCache;
|
SystemStatusReports mCache;
|
||||||
bool mConnected;
|
bool mConnected;
|
||||||
|
|
||||||
// set dataitem derived item in report cache
|
template <typename TYPE_SYSTEMSTATUS_ITEM, typename TYPE_REPORT, typename TYPE_ITEMBASE>
|
||||||
bool setNetworkInfo(const SystemStatusNetworkInfo& s);
|
bool setItemBaseinReport(TYPE_REPORT& report, const TYPE_ITEMBASE& s);
|
||||||
|
|
||||||
template <typename TYPE_REPORT, typename TYPE_ITEM>
|
template <typename TYPE_REPORT, typename TYPE_ITEM>
|
||||||
bool setIteminReport(TYPE_REPORT& report, const TYPE_ITEM& s);
|
bool setIteminReport(TYPE_REPORT& report, const TYPE_ITEM& s);
|
||||||
|
|
Loading…
Reference in a new issue