Search in sources :

Example 1 with OrientationData

use of org.andengine.input.sensor.orientation.OrientationData in project AndEngine by nicolasgramlich.

the class Engine method enableOrientationSensor.

/**
	 * @return <code>true</code> when the sensor was successfully enabled, <code>false</code> otherwise.
	 */
public boolean enableOrientationSensor(final Context pContext, final IOrientationListener pOrientationListener, final OrientationSensorOptions pOrientationSensorOptions) {
    final SensorManager sensorManager = (SensorManager) pContext.getSystemService(Context.SENSOR_SERVICE);
    if (Engine.isSensorSupported(sensorManager, Sensor.TYPE_ACCELEROMETER) && Engine.isSensorSupported(sensorManager, Sensor.TYPE_MAGNETIC_FIELD)) {
        this.mOrientationListener = pOrientationListener;
        if (this.mOrientationData == null) {
            final Display display = ((WindowManager) pContext.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
            final int displayRotation = display.getOrientation();
            this.mOrientationData = new OrientationData(displayRotation);
        }
        this.registerSelfAsSensorListener(sensorManager, Sensor.TYPE_ACCELEROMETER, pOrientationSensorOptions.getSensorDelay());
        this.registerSelfAsSensorListener(sensorManager, Sensor.TYPE_MAGNETIC_FIELD, pOrientationSensorOptions.getSensorDelay());
        return true;
    } else {
        return false;
    }
}
Also used : SensorManager(android.hardware.SensorManager) OrientationData(org.andengine.input.sensor.orientation.OrientationData) Display(android.view.Display) WindowManager(android.view.WindowManager)

Aggregations

SensorManager (android.hardware.SensorManager)1 Display (android.view.Display)1 WindowManager (android.view.WindowManager)1 OrientationData (org.andengine.input.sensor.orientation.OrientationData)1