#include <android/os/IStatsCompanionService.h>
#include <cutils/log.h>
#include <math.h>
+#include <stdint.h>
#include <algorithm>
-#include <climits>
#include "../StatsService.h"
#include "../logd/LogEvent.h"
#include "../stats_log_util.h"
namespace os {
namespace statsd {
+// Values smaller than this may require to update the alarm.
+const int64_t NO_ALARM_UPDATE = INT64_MAX;
+
const std::map<int, PullAtomInfo> StatsPullerManagerImpl::kAllPullAtomInfo = {
// wifi_bytes_transfer
{android::util::WIFI_BYTES_TRANSFER,
// temperature
{android::util::TEMPERATURE, {{}, {}, 1, new ResourceThermalManagerPuller()}}};
-StatsPullerManagerImpl::StatsPullerManagerImpl() : mNextPullTimeNs(LONG_MAX) {
+StatsPullerManagerImpl::StatsPullerManagerImpl() : mNextPullTimeNs(NO_ALARM_UPDATE) {
}
bool StatsPullerManagerImpl::Pull(const int tagId, const int64_t timeNs,
}
void StatsPullerManagerImpl::updateAlarmLocked() {
- if (mNextPullTimeNs == LONG_MAX) {
+ if (mNextPullTimeNs == NO_ALARM_UPDATE) {
VLOG("No need to set alarms. Skipping");
return;
}
void StatsPullerManagerImpl::OnAlarmFired(const int64_t currentTimeNs) {
AutoMutex _l(mLock);
- int64_t minNextPullTimeNs = LONG_MAX;
+ int64_t minNextPullTimeNs = NO_ALARM_UPDATE;
vector<pair<int, vector<ReceiverInfo*>>> needToPull =
vector<pair<int, vector<ReceiverInfo*>>>();
}
}
+ VLOG("mNextPullTimeNs: %lld updated to %lld", (long long)mNextPullTimeNs,
+ (long long)minNextPullTimeNs);
mNextPullTimeNs = minNextPullTimeNs;
updateAlarmLocked();
}