An application to log WiFi SSIDs for position lookup testing
Dependencies: C027_Support SWO mbed-rtos mbed picojson
Fork of lpc4088_ebb_ublox_Cellular_PubNubDemo_rtos by
MbedAgent.cpp
- Committer:
- rosterloh84
- Date:
- 2015-02-15
- Revision:
- 1:cac9b2960637
File content as of revision 1:cac9b2960637:
#include "MbedAgent.h"
#include "rtos.h"
MbedAgent::MbedAgent(DeviceIO& io, MDMSerial& mdm, DeviceInfo& deviceInfo, DeviceMemory& deviceMemory) :
_io(io),
_mdm(mdm),
_deviceInfo(deviceInfo),
_deviceMemory(deviceMemory),
_configurationProperties(_deviceConfiguration),
_signalQualityMeasurement(_deviceInfo),
_analogMeasurement(_io.analog1(), _io.analog2()),
_locationUpdate(_io.gpsTracker())
{
}
bool MbedAgent::init()
{
if ((!_signalQualityMeasurement.init()) ||
(!_analogMeasurement.init()) ||
(!_locationUpdate.init())) {
puts("Initialization failed.");
return false;
}
return true;
}
bool MbedAgent::run()
{
// add some config setup if needed
loop();
return true;
}
void MbedAgent::loop()
{
Timer timer; int interval;
timer.start();
while (true) {
timer.reset();
_signalQualityMeasurement.run();
_analogMeasurement.run();
_locationUpdate.run();
if ((interval = _configurationProperties.readInterval()) == 0)
break;
while (timer.read() < interval) {
Thread::yield();
}
}
}
Richard Osterloh
