diff options
Diffstat (limited to 'sensor_test_app/src/sensor/test/com/android/sensor/Main.java')
-rw-r--r-- | sensor_test_app/src/sensor/test/com/android/sensor/Main.java | 500 |
1 files changed, 0 insertions, 500 deletions
diff --git a/sensor_test_app/src/sensor/test/com/android/sensor/Main.java b/sensor_test_app/src/sensor/test/com/android/sensor/Main.java deleted file mode 100644 index 0dca112..0000000 --- a/sensor_test_app/src/sensor/test/com/android/sensor/Main.java +++ /dev/null | |||
@@ -1,500 +0,0 @@ | |||
1 | /* | ||
2 | * Android Sensor Test Application | ||
3 | * | ||
4 | * Copyright 2010 Texas Instruments, Inc. - http://www.ti.com/ | ||
5 | * | ||
6 | * Written by Dan Murphy <dmurphy@ti.com> | ||
7 | * | ||
8 | * Licensed under the Apache License, Version 2.0 (the "License"); | ||
9 | * you may not use this file except in compliance with the License. | ||
10 | * You may obtain a copy of the License at | ||
11 | * | ||
12 | * http://www.apache.org/licenses/LICENSE-2.0 | ||
13 | * | ||
14 | * Unless required by applicable law or agreed to in writing, software | ||
15 | * distributed under the License is distributed on an "AS IS" BASIS, | ||
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
17 | * See the License for the specific language governing permissions and | ||
18 | * limitations under the License. | ||
19 | */ | ||
20 | |||
21 | package sensor.test.com.android.sensor; | ||
22 | |||
23 | import java.text.DecimalFormat; | ||
24 | import java.util.List; | ||
25 | |||
26 | import sensor.test.R; | ||
27 | |||
28 | import android.app.Activity; | ||
29 | import android.app.AlertDialog; | ||
30 | import android.content.DialogInterface; | ||
31 | import android.hardware.Sensor; | ||
32 | import android.hardware.SensorManager; | ||
33 | import android.os.Bundle; | ||
34 | import android.util.Log; | ||
35 | import android.view.ContextMenu; | ||
36 | import android.view.ContextMenu.ContextMenuInfo; | ||
37 | import android.view.Menu; | ||
38 | import android.view.MenuItem; | ||
39 | import android.view.View; | ||
40 | import android.view.View.OnClickListener; | ||
41 | import android.widget.Button; | ||
42 | import android.widget.CheckBox; | ||
43 | import android.widget.TextView; | ||
44 | import android.widget.Toast; | ||
45 | |||
46 | |||
47 | public class Main extends Activity { | ||
48 | private static final String TESTING_TAG = "SensorTestOutput"; | ||
49 | private static final String FAIL_TAG = "FAILIED: "; | ||
50 | private static final String WARN_TAG = "WARNING: "; | ||
51 | private static final String INFO_TAG = "Information: "; | ||
52 | private static final String VER_NUM = "1.0"; | ||
53 | static Sensor_data data = new Sensor_data(new DecimalFormat("0.000000")); | ||
54 | static Sensor_management manage = new Sensor_management(); | ||
55 | public List<Sensor> all; | ||
56 | |||
57 | |||
58 | public void onCreate(Bundle savedInstanceState) { | ||
59 | super.onCreate(savedInstanceState); | ||
60 | setContentView(R.layout.main); | ||
61 | |||
62 | this.setTitle(R.string.app_title); | ||
63 | Log.d(TESTING_TAG, "Texas Instruments Sensor Test Application: " + VER_NUM); | ||
64 | //Acquire SensorManager | ||
65 | data.sensmang = (SensorManager) getSystemService(SENSOR_SERVICE); | ||
66 | all = data.sensmang.getSensorList(Sensor.TYPE_ALL); | ||
67 | for (int i = 0; i < all.size(); i++) { | ||
68 | Sensor s = all.get(i); | ||
69 | Log.d(TESTING_TAG, "Found Sensor: " + s.getName()); | ||
70 | Log.d(TESTING_TAG, " Vendor: " + s.getVendor()); | ||
71 | Log.d(TESTING_TAG, " Max: " + s.getMaximumRange()); | ||
72 | Log.d(TESTING_TAG, " Resolution: " + s.getResolution()); | ||
73 | Log.d(TESTING_TAG, " Version: " + s.getVersion()); | ||
74 | }; | ||
75 | |||
76 | //Proximity initialisation | ||
77 | data.proximity = data.sensmang.getDefaultSensor(Sensor.TYPE_PROXIMITY); | ||
78 | data.prox_lbl = (TextView) findViewById(R.id.prox_lbl_id); | ||
79 | data.prox = (TextView) findViewById(R.id.proximity); | ||
80 | data.prox_check = (CheckBox) findViewById(R.id.prox_check_box); | ||
81 | data.prox_state = false; | ||
82 | |||
83 | if (data.proximity == null) { | ||
84 | Log.d(TESTING_TAG, WARN_TAG + "No proximity sensor avaliable."); | ||
85 | data.prox_lbl.setText("No Proximity Sensor available"); | ||
86 | data.prox.setText("Proximity State: N/A"); | ||
87 | data.prox_check.setClickable(false); | ||
88 | } else { | ||
89 | data.prox_lbl.setText(data.proximity.getName()); | ||
90 | data.prox_check.setChecked(data.prox_state); | ||
91 | data.prox_check.setClickable(true); | ||
92 | manage.set_sensor_state(Sensor.TYPE_PROXIMITY, data.prox_state, SensorManager.SENSOR_DELAY_FASTEST); | ||
93 | |||
94 | data.prox_check.setOnClickListener(new OnClickListener() { | ||
95 | public void onClick(View arg0) { | ||
96 | if (data.prox_check.isChecked()) | ||
97 | data.prox_state = true; | ||
98 | else | ||
99 | data.prox_state = false; | ||
100 | |||
101 | manage.set_sensor_state(Sensor.TYPE_PROXIMITY, data.prox_state, data.sensor_delay); | ||
102 | } | ||
103 | }); | ||
104 | } | ||
105 | |||
106 | //Ambient Light sensor initialisation | ||
107 | data.alsensor = data.sensmang.getDefaultSensor(Sensor.TYPE_LIGHT); | ||
108 | data.als_lbl = (TextView) findViewById(R.id.als_lbl_id); | ||
109 | data.als = (TextView) findViewById(R.id.light); | ||
110 | data.accel_lbl = (TextView) findViewById(R.id.accel_lbl_id); | ||
111 | |||
112 | if (data.alsensor == null) { | ||
113 | Log.d(TESTING_TAG, WARN_TAG + "No ALS sensor avaliable."); | ||
114 | data.als_lbl.setText("No ALS Sensor available"); | ||
115 | } else { | ||
116 | data.als_lbl.setText(data.alsensor.getName()); | ||
117 | manage.set_sensor_state(Sensor.TYPE_LIGHT, true, data.sensor_delay); | ||
118 | } | ||
119 | |||
120 | //Pressure Sensor initialisation | ||
121 | data.pressure = data.sensmang.getDefaultSensor(Sensor.TYPE_PRESSURE); | ||
122 | data.press_lbl = (TextView) findViewById(R.id.pressure_lbl_id); | ||
123 | data.press = (TextView) findViewById(R.id.pressure); | ||
124 | data.pressure_check = (CheckBox) findViewById(R.id.pressure_check_box); | ||
125 | data.press_unit_butt = (Button) findViewById(R.id.press_unit); | ||
126 | data.pressure_state = false; | ||
127 | |||
128 | if (data.pressure == null) { | ||
129 | Log.d(TESTING_TAG, WARN_TAG + "No pressure sensor avaliable."); | ||
130 | data.press_lbl.setText("No Pressure Sensor available"); | ||
131 | data.press.setText("Pressure Reading: N/A"); | ||
132 | data.press_unit_butt.setText("N/A"); | ||
133 | data.pressure_check.setClickable(false); | ||
134 | data.press_unit_butt.setEnabled(false); | ||
135 | } else { | ||
136 | data.press_lbl.setText(data.pressure.getName()); | ||
137 | data.pressure_check.setChecked(data.pressure_state); | ||
138 | data.pressure_check.setClickable(true); | ||
139 | manage.set_sensor_state(Sensor.TYPE_PRESSURE, data.pressure_state, data.sensor_delay); | ||
140 | registerForContextMenu(findViewById(R.id.press_unit)); | ||
141 | data.pressure_check.setOnClickListener(new OnClickListener() { | ||
142 | public void onClick(View arg0) { | ||
143 | if (data.pressure_check.isChecked()) | ||
144 | data.pressure_state = true; | ||
145 | else | ||
146 | data.pressure_state = false; | ||
147 | manage.set_sensor_state(Sensor.TYPE_PRESSURE, data.pressure_state, data.sensor_delay); | ||
148 | } | ||
149 | }); | ||
150 | } | ||
151 | //Temperature Sensor initialisation | ||
152 | data.temperature = data.sensmang.getDefaultSensor(Sensor.TYPE_TEMPERATURE); | ||
153 | data.temp_lbl = (TextView) findViewById(R.id.temp_lbl_id); | ||
154 | data.temp = (TextView) findViewById(R.id.temperature); | ||
155 | data.temperature_check = (CheckBox) findViewById(R.id.temp_check_box); | ||
156 | data.temp_unit_butt = (Button) findViewById(R.id.temp_unit); | ||
157 | data.temperature_state = false; | ||
158 | |||
159 | if ( data.temperature == null) { | ||
160 | Log.d(TESTING_TAG, WARN_TAG + "No temperature sensor avaliable."); | ||
161 | data.temp_lbl.setText("No temperature Sensor available"); | ||
162 | data.temp.setText("Temperature Reading: N/A"); | ||
163 | data.temp_unit_butt.setText("N/A"); | ||
164 | data.temperature_check.setClickable(false); | ||
165 | data.temp_unit_butt.setEnabled(false); | ||
166 | } else { | ||
167 | data.temp_lbl.setText(data.temperature.getName()); | ||
168 | data.temperature_check.setChecked(data.temperature_state); | ||
169 | data.temperature_check.setClickable(true); | ||
170 | manage.set_sensor_state(Sensor.TYPE_TEMPERATURE, data.temperature_state, data.sensor_delay); | ||
171 | registerForContextMenu(findViewById(R.id.temp_unit)); | ||
172 | data.temperature_check.setOnClickListener(new OnClickListener() { | ||
173 | public void onClick(View arg0) { | ||
174 | if (data.temperature_check.isChecked()) | ||
175 | data.temperature_state = true; | ||
176 | else | ||
177 | data.temperature_state = false; | ||
178 | manage.set_sensor_state(Sensor.TYPE_TEMPERATURE, data.temperature_state, data.sensor_delay); | ||
179 | } | ||
180 | }); | ||
181 | } | ||
182 | //Accelerometer sensor initialisation | ||
183 | data.accelerometer = data.sensmang.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); | ||
184 | data.accel_lbl = (TextView) findViewById(R.id.accel_lbl_id); | ||
185 | data.accel_x = (TextView) findViewById(R.id.accel_x); | ||
186 | data.accel_y = (TextView) findViewById(R.id.accel_y); | ||
187 | data.accel_z = (TextView) findViewById(R.id.accel_z); | ||
188 | data.accel_delay_butt = (Button) findViewById(R.id.acc_delay); | ||
189 | data.accel_check = (CheckBox) findViewById(R.id.accel_check_box); | ||
190 | |||
191 | if (data.accelerometer == null) { | ||
192 | Log.d(TESTING_TAG, WARN_TAG + "No Accelerometer sensor avaliable."); | ||
193 | data.accel_lbl.setText("No Accelerometer Sensor available"); | ||
194 | data.accel_check.setClickable(false); | ||
195 | data.accel_delay_butt.setEnabled(false); | ||
196 | data.accel_delay_butt.setText("N/A"); | ||
197 | data.accel_x.setText("X Data: N/A"); | ||
198 | data.accel_y.setText("Y Data: N/A"); | ||
199 | data.accel_z.setText("Z Data: N/A"); | ||
200 | |||
201 | } else { | ||
202 | data.accel_lbl.setText(data.accelerometer.getName()); | ||
203 | registerForContextMenu(findViewById(R.id.acc_delay)); | ||
204 | data.accel_state = false; | ||
205 | data.accel_check.setChecked(data.accel_state); | ||
206 | manage.set_sensor_state(Sensor.TYPE_ACCELEROMETER, data.accel_state, data.sensor_delay); | ||
207 | data.accel_check.setOnClickListener(new OnClickListener() { | ||
208 | public void onClick(View arg0) { | ||
209 | if (data.accel_check.isChecked()) | ||
210 | data.accel_state = true; | ||
211 | else | ||
212 | data.accel_state = false; | ||
213 | manage.set_sensor_state(Sensor.TYPE_ACCELEROMETER, data.accel_state, data.sensor_delay); | ||
214 | } | ||
215 | }); | ||
216 | } | ||
217 | |||
218 | //Magnetometer sensor initialisation | ||
219 | data.magnetometer = data.sensmang.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD); | ||
220 | data.mag_lbl = (TextView) findViewById(R.id.mag_lbl_id); | ||
221 | data.mag_x = (TextView) findViewById(R.id.mag_x); | ||
222 | data.mag_y = (TextView) findViewById(R.id.mag_y); | ||
223 | data.mag_z = (TextView) findViewById(R.id.mag_z); | ||
224 | data.mag_delay_butt = (Button) findViewById(R.id.mag_delay); | ||
225 | data.mag_check = (CheckBox) findViewById(R.id.mag_check_box); | ||
226 | |||
227 | if (data.magnetometer == null) { | ||
228 | Log.d(TESTING_TAG, WARN_TAG + "No Magnetometer sensor avaliable."); | ||
229 | data.mag_lbl.setText("No Magnetometer Sensor available"); | ||
230 | data.mag_check.setClickable(false); | ||
231 | data.mag_delay_butt.setEnabled(false); | ||
232 | data.mag_delay_butt.setText("N/A"); | ||
233 | data.mag_x.setText("X Data: N/A"); | ||
234 | data.mag_y.setText("Y Data: N/A"); | ||
235 | data.mag_z.setText("Z Data: N/A"); | ||
236 | |||
237 | } else { | ||
238 | data.mag_lbl.setText(data.magnetometer.getName()); | ||
239 | registerForContextMenu(findViewById(R.id.mag_delay)); | ||
240 | data.mag_state = false; | ||
241 | data.mag_check.setChecked(data.accel_state); | ||
242 | manage.set_sensor_state(Sensor.TYPE_MAGNETIC_FIELD, data.mag_state, data.sensor_delay); | ||
243 | data.mag_check.setOnClickListener(new OnClickListener() { | ||
244 | public void onClick(View arg0) { | ||
245 | if (data.mag_check.isChecked()) | ||
246 | data.mag_state = true; | ||
247 | else | ||
248 | data.mag_state = false; | ||
249 | manage.set_sensor_state(Sensor.TYPE_MAGNETIC_FIELD, data.mag_state, data.sensor_delay); | ||
250 | } | ||
251 | }); | ||
252 | } | ||
253 | //Gyroscope sensor initialisation | ||
254 | data.gyroscope = data.sensmang.getDefaultSensor(Sensor.TYPE_GYROSCOPE); | ||
255 | data.gyro_lbl = (TextView) findViewById(R.id.gyro_lbl_id); | ||
256 | data.gyro_x = (TextView) findViewById(R.id.gyro_x); | ||
257 | data.gyro_y = (TextView) findViewById(R.id.gyro_y); | ||
258 | data.gyro_z = (TextView) findViewById(R.id.gyro_z); | ||
259 | data.gyro_delay_butt = (Button) findViewById(R.id.gyro_delay); | ||
260 | data.gyro_check = (CheckBox) findViewById(R.id.gyro_check_box); | ||
261 | |||
262 | if (data.gyroscope == null) { | ||
263 | Log.d(TESTING_TAG, WARN_TAG + "No Gyroscope sensor avaliable."); | ||
264 | data.gyro_lbl.setText("No Gyroscope Sensor available"); | ||
265 | data.gyro_check.setClickable(false); | ||
266 | data.gyro_delay_butt.setEnabled(false); | ||
267 | data.gyro_delay_butt.setText("N/A"); | ||
268 | data.gyro_x.setText("X Data: N/A"); | ||
269 | data.gyro_y.setText("Y Data: N/A"); | ||
270 | data.gyro_z.setText("Z Data: N/A"); | ||
271 | |||
272 | } else { | ||
273 | data.gyro_lbl.setText(data.gyroscope.getName()); | ||
274 | registerForContextMenu(findViewById(R.id.gyro_delay)); | ||
275 | data.gyro_state = false; | ||
276 | data.gyro_check.setChecked(data.gyro_state); | ||
277 | manage.set_sensor_state(Sensor.TYPE_GYROSCOPE, data.gyro_state, data.sensor_delay); | ||
278 | data.gyro_check.setOnClickListener(new OnClickListener() { | ||
279 | public void onClick(View arg0) { | ||
280 | if (data.gyro_check.isChecked()) | ||
281 | data.gyro_state = true; | ||
282 | else | ||
283 | data.gyro_state = false; | ||
284 | manage.set_sensor_state(Sensor.TYPE_GYROSCOPE, data.gyro_state, data.sensor_delay); | ||
285 | } | ||
286 | }); | ||
287 | } | ||
288 | } | ||
289 | |||
290 | @Override | ||
291 | protected void onResume() { | ||
292 | data.accel_state = data.accel_check.isChecked(); | ||
293 | data.prox_state = data.prox_check.isChecked(); | ||
294 | data.mag_state = data.mag_check.isChecked(); | ||
295 | data.pressure_state = data.pressure_check.isChecked(); | ||
296 | data.temperature_state = data.temperature_check.isChecked(); | ||
297 | data.gyro_state = data.gyro_check.isChecked(); | ||
298 | |||
299 | manage.set_sensor_state(Sensor.TYPE_PROXIMITY, data.prox_state, data.sensor_delay); | ||
300 | manage.set_sensor_state(Sensor.TYPE_LIGHT, true, data.sensor_delay); | ||
301 | manage.set_sensor_state(Sensor.TYPE_ACCELEROMETER, data.accel_state, data.sensor_delay); | ||
302 | manage.set_sensor_state(Sensor.TYPE_MAGNETIC_FIELD, data.mag_state, data.sensor_delay); | ||
303 | manage.set_sensor_state(Sensor.TYPE_PRESSURE, data.pressure_state, data.sensor_delay); | ||
304 | manage.set_sensor_state(Sensor.TYPE_TEMPERATURE, data.temperature_state, data.sensor_delay); | ||
305 | manage.set_sensor_state(Sensor.TYPE_GYROSCOPE, data.gyro_state, data.sensor_delay); | ||
306 | manage.ok_to_toast = false; | ||
307 | super.onResume(); | ||
308 | } | ||
309 | |||
310 | @Override | ||
311 | protected void onStop() { | ||
312 | manage.set_sensor_state(Sensor.TYPE_PROXIMITY, false, data.sensor_delay); | ||
313 | manage.set_sensor_state(Sensor.TYPE_LIGHT, false, data.sensor_delay); | ||
314 | manage.set_sensor_state(Sensor.TYPE_ACCELEROMETER, false, data.sensor_delay); | ||
315 | manage.set_sensor_state(Sensor.TYPE_MAGNETIC_FIELD, false, data.sensor_delay); | ||
316 | manage.set_sensor_state(Sensor.TYPE_PRESSURE, false, data.sensor_delay); | ||
317 | manage.set_sensor_state(Sensor.TYPE_TEMPERATURE, false, data.sensor_delay); | ||
318 | manage.set_sensor_state(Sensor.TYPE_GYROSCOPE, false, data.sensor_delay); | ||
319 | manage.ok_to_toast = false; | ||
320 | super.onStop(); | ||
321 | } | ||
322 | @Override | ||
323 | public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { | ||
324 | |||
325 | super.onCreateContextMenu(menu, v, menuInfo); | ||
326 | if (v.getId() == R.id.acc_delay) { | ||
327 | if (data.accel_state == true) { | ||
328 | menu.setHeaderTitle("Accelerometer Delay Menu"); | ||
329 | Main.manage.sensor_to_manage = Sensor.TYPE_ACCELEROMETER; | ||
330 | menu.add(0, 0, 0, "Fastest"); | ||
331 | menu.add(0, 1, 0, "Gamer"); | ||
332 | menu.add(0, 2, 0, "UI"); | ||
333 | menu.add(0, 3, 0, "Normal"); | ||
334 | } else { | ||
335 | Log.e(TESTING_TAG, WARN_TAG + "Accelerometer not enabled"); | ||
336 | return; | ||
337 | } | ||
338 | } else if (v.getId() == R.id.mag_delay) { | ||
339 | if (data.mag_state == true) { | ||
340 | menu.setHeaderTitle("Magnetometer Delay Menu"); | ||
341 | Main.manage.sensor_to_manage = Sensor.TYPE_MAGNETIC_FIELD; | ||
342 | menu.add(0, 0, 0, "Fastest"); | ||
343 | menu.add(0, 1, 0, "Gamer"); | ||
344 | menu.add(0, 2, 0, "UI"); | ||
345 | menu.add(0, 3, 0, "Normal"); | ||
346 | } else { | ||
347 | Log.e(TESTING_TAG, WARN_TAG + "Magnetometer not enabled"); | ||
348 | return; | ||
349 | } | ||
350 | } else if (v.getId() == R.id.gyro_delay) { | ||
351 | if (data.gyro_state == true) { | ||
352 | menu.setHeaderTitle("Gyroscope Delay Menu"); | ||
353 | Main.manage.sensor_to_manage = Sensor.TYPE_GYROSCOPE; | ||
354 | menu.add(0, 0, 0, "Fastest"); | ||
355 | menu.add(0, 1, 0, "Gamer"); | ||
356 | menu.add(0, 2, 0, "UI"); | ||
357 | menu.add(0, 3, 0, "Normal"); | ||
358 | } else { | ||
359 | Log.e(TESTING_TAG, WARN_TAG + "Gyroscope not enabled"); | ||
360 | return; | ||
361 | } | ||
362 | } else if (v.getId() == R.id.press_unit) { | ||
363 | if (data.pressure_state == true) { | ||
364 | Main.manage.sensor_to_manage = Sensor.TYPE_PRESSURE; | ||
365 | menu.setHeaderTitle("Pressure Unit Menu"); | ||
366 | menu.add(0, 0, 0, "Pascals"); | ||
367 | menu.add(0, 1, 0, "mmHg"); | ||
368 | menu.add(0, 2, 0, "inHg"); | ||
369 | } else { | ||
370 | Log.e(TESTING_TAG, WARN_TAG + "Pressure Sensor not enabled"); | ||
371 | return; | ||
372 | } | ||
373 | } else if (v.getId() == R.id.temp_unit) { | ||
374 | if (data.temperature_state == true) { | ||
375 | Main.manage.sensor_to_manage = Sensor.TYPE_TEMPERATURE; | ||
376 | menu.setHeaderTitle("Temperature Unit Menu"); | ||
377 | menu.add(0, 0, 0, "Celcius"); | ||
378 | menu.add(0, 1, 0, "Farenheit"); | ||
379 | } else { | ||
380 | Log.e(TESTING_TAG, WARN_TAG + "Temperature Sensor not enabled"); | ||
381 | return; | ||
382 | } | ||
383 | }else { | ||
384 | return; | ||
385 | } | ||
386 | } | ||
387 | |||
388 | @Override | ||
389 | public boolean onContextItemSelected(MenuItem item) { | ||
390 | boolean err = false; | ||
391 | int delay = SensorManager.SENSOR_DELAY_NORMAL; | ||
392 | |||
393 | if (Main.manage.sensor_to_manage == Sensor.TYPE_PRESSURE) { | ||
394 | if(item.getItemId() == 0) { | ||
395 | data.pressure_measurement = 0; | ||
396 | Log.d(TESTING_TAG, INFO_TAG + "Setting Pressure data to Pascals"); | ||
397 | } else if(item.getItemId() == 1){ | ||
398 | data.pressure_measurement = 1; | ||
399 | Log.d(TESTING_TAG, INFO_TAG + "Setting Pressure data to mmHg"); | ||
400 | } else if(item.getItemId() == 2){ | ||
401 | data.pressure_measurement = 2; | ||
402 | Log.d(TESTING_TAG, INFO_TAG + "Setting Pressure data to inHg"); | ||
403 | } else { | ||
404 | Log.e(TESTING_TAG, FAIL_TAG + "Unknown Pressure scale requested"); | ||
405 | return false; | ||
406 | } | ||
407 | } else if (Main.manage.sensor_to_manage == Sensor.TYPE_TEMPERATURE) { | ||
408 | if(item.getItemId() == 0) { | ||
409 | if (data.temperature_units == 1) | ||
410 | data.temp.setText("Temperature Reading: " + data.temperature_measurement + " C"); | ||
411 | |||
412 | data.temperature_units = 0; | ||
413 | Log.d(TESTING_TAG, INFO_TAG + "Setting Temperature data to Celcius"); | ||
414 | } else if(item.getItemId() == 1){ | ||
415 | if (data.temperature_units == 0) | ||
416 | data.temp.setText("Temperature Reading: " + (data.temperature_measurement * 1.8f + 32) + " F"); | ||
417 | |||
418 | data.temperature_units = 1; | ||
419 | Log.d(TESTING_TAG, INFO_TAG + "Setting Temperature to Farenheit"); | ||
420 | } else { | ||
421 | Log.e(TESTING_TAG, FAIL_TAG + "Unknown Pressure scale requested"); | ||
422 | return false; | ||
423 | } | ||
424 | } else { | ||
425 | if(item.getItemId() == 0) { | ||
426 | Toast.makeText(getBaseContext(), "Setting to Fastest Speed", | ||
427 | Toast.LENGTH_SHORT).show(); | ||
428 | delay = SensorManager.SENSOR_DELAY_FASTEST; | ||
429 | Log.d(TESTING_TAG, INFO_TAG + "Fastest data rate requested"); | ||
430 | } else if(item.getItemId() == 1){ | ||
431 | Toast.makeText(getBaseContext(), "Setting to Gaming Speed", | ||
432 | Toast.LENGTH_SHORT).show(); | ||
433 | delay = SensorManager.SENSOR_DELAY_GAME; | ||
434 | Log.d(TESTING_TAG, INFO_TAG + "Gaming data rate requested"); | ||
435 | } else if(item.getItemId() == 2){ | ||
436 | Toast.makeText(getBaseContext(), "Setting to UI Speed", | ||
437 | Toast.LENGTH_SHORT).show(); | ||
438 | delay = SensorManager.SENSOR_DELAY_UI; | ||
439 | Log.d(TESTING_TAG, INFO_TAG + "UI data rate requested"); | ||
440 | } else if(item.getItemId() == 3){ | ||
441 | Toast.makeText(getBaseContext(), "Setting to Normal Speed", | ||
442 | Toast.LENGTH_SHORT).show(); | ||
443 | delay = SensorManager.SENSOR_DELAY_NORMAL; | ||
444 | Log.d(TESTING_TAG, INFO_TAG + "Normal data rate requested"); | ||
445 | } else { | ||
446 | Log.e(TESTING_TAG, FAIL_TAG + "Unknown data rate requested"); | ||
447 | return false; | ||
448 | } | ||
449 | |||
450 | data.sensor_delay = delay; | ||
451 | |||
452 | err = manage.set_sensor_delay(Main.manage.sensor_to_manage, delay); | ||
453 | if (err != true) { | ||
454 | Toast.makeText(getBaseContext(), "Delay was not set", | ||
455 | Toast.LENGTH_SHORT).show(); | ||
456 | Log.e(TESTING_TAG, FAIL_TAG + "Sensor delay was not set"); | ||
457 | return err; | ||
458 | } | ||
459 | } | ||
460 | |||
461 | return true; | ||
462 | } | ||
463 | @Override | ||
464 | public boolean onCreateOptionsMenu(Menu menu) { | ||
465 | super.onCreateOptionsMenu(menu); | ||
466 | int groupId = 0; | ||
467 | int menuItemOrder = Menu.NONE; | ||
468 | MenuItem quitmenuItem = menu.add(groupId, 0, menuItemOrder, "Quit"); | ||
469 | quitmenuItem.setIcon(R.drawable.exit); | ||
470 | MenuItem aboutmenuItem = menu.add(groupId, 1, menuItemOrder, "About This Application"); | ||
471 | aboutmenuItem.setIcon(R.drawable.about); | ||
472 | |||
473 | return true; | ||
474 | } | ||
475 | @Override | ||
476 | public boolean onOptionsItemSelected(MenuItem item) { | ||
477 | // Handle item selection | ||
478 | switch (item.getItemId()) { | ||
479 | //Quit | ||
480 | case 0: | ||
481 | this.onStop(); | ||
482 | finish(); | ||
483 | break; | ||
484 | //Help | ||
485 | case 1: | ||
486 | AlertDialog.Builder helpbox = new AlertDialog.Builder(this); | ||
487 | helpbox.setMessage("Texas Instruments Sensor Test Application Version: " + VER_NUM); | ||
488 | helpbox.setNeutralButton("Ok", new DialogInterface.OnClickListener() { | ||
489 | public void onClick(DialogInterface arg0, int arg1) { | ||
490 | // Do nothing as there is nothing to do | ||
491 | } | ||
492 | }); | ||
493 | helpbox.show(); | ||
494 | return true; | ||
495 | default: | ||
496 | return super.onOptionsItemSelected(item); | ||
497 | } | ||
498 | return true; | ||
499 | } | ||
500 | } | ||