/* initialize the sensors state */ static void _hwSensors_init( HwSensors* h ) { h->service = qemud_service_register("sensors", 0, h, _hwSensors_connect, _hwSensors_save, _hwSensors_load); if (android_hw->hw_accelerometer) h->sensors[ANDROID_SENSOR_ACCELERATION].enabled = 1; /* XXX: TODO: Add other tests when we add the corresponding * properties to hardware-properties.ini et al. */ _hwSensors_setCoarseOrientation(h, ANDROID_COARSE_PORTRAIT); }
/* initialize the sensors state */ static void _hwSensors_init( HwSensors* h ) { /* Try to see if there is a device attached that can be used for * sensor emulation. */ h->sensors_port = sensors_port_create(h); if (h->sensors_port == NULL) { V("Realistic sensor emulation is not available, since the remote controller is not accessible:\n %s", strerror(errno)); } h->service = qemud_service_register("sensors", 0, h, _hwSensors_connect, _hwSensors_save, _hwSensors_load); if (android_hw->hw_accelerometer) { h->sensors[ANDROID_SENSOR_ACCELERATION].enabled = 1; } if (android_hw->hw_sensors_proximity) { h->sensors[ANDROID_SENSOR_PROXIMITY].enabled = 1; } if (android_hw->hw_sensors_magnetic_field) { h->sensors[ANDROID_SENSOR_MAGNETIC_FIELD].enabled = 1; } if (android_hw->hw_sensors_orientation) { h->sensors[ANDROID_SENSOR_ORIENTATION].enabled = 1; } if (android_hw->hw_sensors_temperature) { h->sensors[ANDROID_SENSOR_TEMPERATURE].enabled = 1; } if (h->sensors_port != NULL) { /* Init sensors on the attached device. */ sensors_port_init_sensors(h->sensors_port); } /* XXX: TODO: Add other tests when we add the corresponding * properties to hardware-properties.ini et al. */ _hwSensors_setCoarseOrientation(h, ANDROID_COARSE_PORTRAIT); _hwSensors_setProximity(h, 1); }
/* change the coarse orientation value */ extern void android_sensors_set_coarse_orientation( AndroidCoarseOrientation orient ) { android_hw_sensors_init(); _hwSensors_setCoarseOrientation(_sensorsState, orient); }