package cgeo.geocaching.utils;
import cgeo.geocaching.CgeoApplication;
import cgeo.geocaching.IGeoData;
import cgeo.geocaching.settings.Settings;
import android.os.Handler;
import android.os.Message;
/**
* GeoData and Direction handler. Manipulating geodata and direction information
* through a GeoDirHandler ensures that all listeners are registered from a {@link android.os.Looper} thread.
*
* To use this class, override at least one of {@link #updateDirection(float)} or {@link #updateGeoData(IGeoData)}. You
* need to start the handler using one of
*
*
{@link #startDir()}
*
{@link #startGeo()}
*
{@link #startGeoAndDir()}
*
* A good place might be the {@code onResume} method of the Activity. Stop the Handler accordingly in {@code onPause}.
*
*/
public abstract class GeoDirHandler extends Handler implements IObserver