summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/modes/CameraMode.java
blob: 51806a33cd65bb20f6cf3704648c0f153b5cb1de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package com.mapbox.mapboxsdk.location.modes;

import android.location.Location;
import android.support.annotation.IntDef;

import com.mapbox.mapboxsdk.location.LocationComponent;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * Contains the variety of camera modes which determine how the camera will track
 * the user location.
 */
public final class CameraMode {

  private CameraMode() {
    // Class should not be initialized
  }

  /**
   * Determine the camera tracking behavior in the {@link LocationComponent}.
   */
  @IntDef( {NONE, NONE_COMPASS, NONE_GPS, TRACKING, TRACKING_COMPASS, TRACKING_GPS, TRACKING_GPS_NORTH})
  @Retention(RetentionPolicy.SOURCE)
  public @interface Mode {
  }

  /**
   * No camera tracking.
   */
  public static final int NONE = 0x00000008;

  /**
   * Camera does not track location, but does track compass bearing.
   */
  public static final int NONE_COMPASS = 0x00000010;

  /**
   * Camera does not track location, but does track GPS {@link Location} bearing.
   */
  public static final int NONE_GPS = 0x00000016;

  /**
   * Camera tracks the user location.
   */
  public static final int TRACKING = 0x00000018;

  /**
   * Camera tracks the user location, with bearing
   * provided by a compass.
   */
  public static final int TRACKING_COMPASS = 0x00000020;

  /**
   * Camera tracks the user location, with bearing
   * provided by a normalized {@link Location#getBearing()}.
   */
  public static final int TRACKING_GPS = 0x00000022;

  /**
   * Camera tracks the user location, with bearing
   * always set to north (0).
   */
  public static final int TRACKING_GPS_NORTH = 0x00000024;
}