43 | 43 |
* @author Will Brown
|
44 | 44 |
*/
|
45 | 45 |
public final class ChopperStatusImpl implements Runnable, SensorEventListener, Constants, LocationListener, ChopperStatus {
|
46 | |
public static final String logfilename = "sensors.txt";
|
|
46 |
public static final String logfilename = "orientation_timestamps.txt";
|
47 | 47 |
public static BufferedWriter logwriter;
|
48 | 48 |
|
49 | 49 |
/** Parameter to specify GPS minimum update distance, with the usual trade-off between accuracy and power consumption.
|
|
252 | 252 |
/* Gets a sensor manager */
|
253 | 253 |
final SensorManager sensors = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE);
|
254 | 254 |
List<Sensor> sensorList = sensors.getSensorList(Sensor.TYPE_ALL);
|
255 | |
for (Sensor sensor : sensorList) {
|
|
255 |
/*for (Sensor sensor : sensorList) {
|
256 | 256 |
try {
|
257 | 257 |
if (logwriter != null) {
|
258 | 258 |
logwriter.write("\nName : " + sensor.getName() + "\n");
|
|
268 | 268 |
} catch (IOException e) {
|
269 | 269 |
e.printStackTrace();
|
270 | 270 |
}
|
271 | |
}
|
|
271 |
}*/
|
272 | 272 |
/* Registers this class as a sensor listener for every necessary sensor. */
|
273 | 273 |
//sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_FASTEST);
|
274 | 274 |
//sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_LIGHT), SensorManager.SENSOR_DELAY_NORMAL);
|
|
279 | 279 |
//sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_PROXIMITY), SensorManager.SENSOR_DELAY_NORMAL);
|
280 | 280 |
//sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_TEMPERATURE), SensorManager.SENSOR_DELAY_NORMAL);
|
281 | 281 |
//sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_GRAVITY), SensorManager.SENSOR_DELAY_FASTEST);
|
282 | |
sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_ROTATION_VECTOR), SensorManager.SENSOR_DELAY_GAME);
|
|
282 |
sensors.registerListener(this, sensors.getDefaultSensor(Sensor.TYPE_ROTATION_VECTOR), SensorManager.SENSOR_DELAY_FASTEST);
|
283 | 283 |
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
|
284 | 284 |
|
285 | 285 |
|
|
315 | 315 |
public void onLocationChanged(Location loc) {
|
316 | 316 |
if (loc != null && mGps != null) {
|
317 | 317 |
if (!loc.hasAltitude()) {
|
318 | |
// loc.setAltitude(300.0);
|
319 | 318 |
Log.w(TAG, "No altitude fix");
|
320 | 319 |
}
|
321 | 320 |
double newalt = loc.getAltitude();
|
|
423 | 422 |
case Sensor.TYPE_ROTATION_VECTOR:
|
424 | 423 |
Log.v(TAG, "my grav time: " + ((time - grav_time)/1000000));
|
425 | 424 |
grav_time = time;
|
426 | |
String timestring = Long.toString(time);
|
|
425 |
String timestring = Long.toString(time/1000000);
|
427 | 426 |
try {
|
428 | 427 |
if (logwriter != null) {
|
429 | 428 |
logwriter.write(timestring + "\n");
|