diff --git a/docs/html-ndk/ndk/reference/annotated.jd b/docs/html-ndk/ndk/reference/annotated.jd new file mode 100644 index 0000000000000..7a0e09a163212 --- /dev/null +++ b/docs/html-ndk/ndk/reference/annotated.jd @@ -0,0 +1,33 @@ +page.title=Data Structures +page.customHeadTag= +@jd:body + + +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + + + + + + +
oCAHeartRateEvent
oCAMetaDataEvent
oCANativeActivity
oCANativeActivityCallbacks
oCANativeWindow_Buffer
oCAndroidBitmapInfo
oCARect
oCASensorEvent
oCASensorVector
\CAUncalibratedEvent
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/asset__manager_8h.jd b/docs/html-ndk/ndk/reference/asset__manager_8h.jd new file mode 100644 index 0000000000000..140af54dabee2 --- /dev/null +++ b/docs/html-ndk/ndk/reference/asset__manager_8h.jd @@ -0,0 +1,83 @@ +page.title=asset_manager.h File Reference +page.customHeadTag= +@jd:body + + + +
+
+Typedefs | +Enumerations | +Functions
+
+
asset_manager.h File Reference
+
+
+ + + + + + + + +

+Typedefs

typedef struct AAssetManager AAssetManager
 
typedef struct AAssetDir AAssetDir
 
typedef struct AAsset AAsset
 
+ + + +

+Enumerations

enum  { AASSET_MODE_UNKNOWN = 0, +AASSET_MODE_RANDOM = 1, +AASSET_MODE_STREAMING = 2, +AASSET_MODE_BUFFER = 3 + }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

AAssetDirAAssetManager_openDir (AAssetManager *mgr, const char *dirName)
 
AAssetAAssetManager_open (AAssetManager *mgr, const char *filename, int mode)
 
const char * AAssetDir_getNextFileName (AAssetDir *assetDir)
 
void AAssetDir_rewind (AAssetDir *assetDir)
 
void AAssetDir_close (AAssetDir *assetDir)
 
int AAsset_read (AAsset *asset, void *buf, size_t count)
 
off_t AAsset_seek (AAsset *asset, off_t offset, int whence)
 
off64_t AAsset_seek64 (AAsset *asset, off64_t offset, int whence)
 
void AAsset_close (AAsset *asset)
 
const void * AAsset_getBuffer (AAsset *asset)
 
off_t AAsset_getLength (AAsset *asset)
 
off64_t AAsset_getLength64 (AAsset *asset)
 
off_t AAsset_getRemainingLength (AAsset *asset)
 
off64_t AAsset_getRemainingLength64 (AAsset *asset)
 
int AAsset_openFileDescriptor (AAsset *asset, off_t *outStart, off_t *outLength)
 
int AAsset_openFileDescriptor64 (AAsset *asset, off64_t *outStart, off64_t *outLength)
 
int AAsset_isAllocated (AAsset *asset)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/asset__manager__jni_8h.jd b/docs/html-ndk/ndk/reference/asset__manager__jni_8h.jd new file mode 100644 index 0000000000000..20fb48d0f263a --- /dev/null +++ b/docs/html-ndk/ndk/reference/asset__manager__jni_8h.jd @@ -0,0 +1,33 @@ +page.title=asset_manager_jni.h File Reference +page.customHeadTag= +@jd:body + + + +
+
+Functions
+
+
asset_manager_jni.h File Reference
+
+
+
#include <android/asset_manager.h>
+#include <jni.h>
+
+ + + +

+Functions

AAssetManagerAAssetManager_fromJava (JNIEnv *env, jobject assetManager)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/bc_s.png b/docs/html-ndk/ndk/reference/bc_s.png new file mode 100644 index 0000000000000..fd162ea76db92 Binary files /dev/null and b/docs/html-ndk/ndk/reference/bc_s.png differ diff --git a/docs/html-ndk/ndk/reference/bdwn.png b/docs/html-ndk/ndk/reference/bdwn.png new file mode 100644 index 0000000000000..7c943f0178f06 Binary files /dev/null and b/docs/html-ndk/ndk/reference/bdwn.png differ diff --git a/docs/html-ndk/ndk/reference/bitmap_8h.jd b/docs/html-ndk/ndk/reference/bitmap_8h.jd new file mode 100644 index 0000000000000..b2f999e01f3c3 --- /dev/null +++ b/docs/html-ndk/ndk/reference/bitmap_8h.jd @@ -0,0 +1,69 @@ +page.title=bitmap.h File Reference +page.customHeadTag= +@jd:body + + + +
+
+Data Structures | +Macros | +Enumerations | +Functions
+
+
bitmap.h File Reference
+
+
+
#include <stdint.h>
+#include <jni.h>
+
+ + + +

+Data Structures

struct  AndroidBitmapInfo
 
+ + + +

+Macros

#define ANDROID_BITMAP_RESUT_SUCCESS   ANDROID_BITMAP_RESULT_SUCCESS
 
+ + + + + +

+Enumerations

enum  { ANDROID_BITMAP_RESULT_SUCCESS = 0, +ANDROID_BITMAP_RESULT_BAD_PARAMETER = -1, +ANDROID_BITMAP_RESULT_JNI_EXCEPTION = -2, +ANDROID_BITMAP_RESULT_ALLOCATION_FAILED = -3 + }
 
enum  AndroidBitmapFormat {
+  ANDROID_BITMAP_FORMAT_NONE = 0, +ANDROID_BITMAP_FORMAT_RGBA_8888 = 1, +ANDROID_BITMAP_FORMAT_RGB_565 = 4, +ANDROID_BITMAP_FORMAT_RGBA_4444 = 7, +
+  ANDROID_BITMAP_FORMAT_A_8 = 8 +
+ }
 
+ + + + + + + +

+Functions

int AndroidBitmap_getInfo (JNIEnv *env, jobject jbitmap, AndroidBitmapInfo *info)
 
int AndroidBitmap_lockPixels (JNIEnv *env, jobject jbitmap, void **addrPtr)
 
int AndroidBitmap_unlockPixels (JNIEnv *env, jobject jbitmap)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/classes.jd b/docs/html-ndk/ndk/reference/classes.jd new file mode 100644 index 0000000000000..3e97e5ea86d1a --- /dev/null +++ b/docs/html-ndk/ndk/reference/classes.jd @@ -0,0 +1,28 @@ +page.title=Data Structure Index +page.customHeadTag= +@jd:body + + +
+
+
Data Structure Index
+
+
+
A
+ + + + + +
  A  
+
AMetaDataEvent   ANativeWindow_Buffer   ASensorEvent   
ANativeActivity   AndroidBitmapInfo   ASensorVector   
AHeartRateEvent   ANativeActivityCallbacks   ARect   AUncalibratedEvent   
+
A
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/closed.png b/docs/html-ndk/ndk/reference/closed.png new file mode 100644 index 0000000000000..e4e2b25adb14b Binary files /dev/null and b/docs/html-ndk/ndk/reference/closed.png differ diff --git a/docs/html-ndk/ndk/reference/configuration_8h.jd b/docs/html-ndk/ndk/reference/configuration_8h.jd new file mode 100644 index 0000000000000..3edcb8a1fe2e7 --- /dev/null +++ b/docs/html-ndk/ndk/reference/configuration_8h.jd @@ -0,0 +1,230 @@ +page.title=configuration.h File Reference +page.customHeadTag= +@jd:body + + + +
+
+Typedefs | +Enumerations | +Functions
+
+
configuration.h File Reference
+
+
+
#include <android/asset_manager.h>
+
+ + + +

+Typedefs

typedef struct AConfiguration AConfiguration
 
+ + + +

+Enumerations

enum  {
+  ACONFIGURATION_ORIENTATION_ANY = 0x0000, +ACONFIGURATION_ORIENTATION_PORT = 0x0001, +ACONFIGURATION_ORIENTATION_LAND = 0x0002, +ACONFIGURATION_ORIENTATION_SQUARE = 0x0003, +
+  ACONFIGURATION_TOUCHSCREEN_ANY = 0x0000, +ACONFIGURATION_TOUCHSCREEN_NOTOUCH = 0x0001, +ACONFIGURATION_TOUCHSCREEN_STYLUS = 0x0002, +ACONFIGURATION_TOUCHSCREEN_FINGER = 0x0003, +
+  ACONFIGURATION_DENSITY_DEFAULT = 0, +ACONFIGURATION_DENSITY_LOW = 120, +ACONFIGURATION_DENSITY_MEDIUM = 160, +ACONFIGURATION_DENSITY_TV = 213, +
+  ACONFIGURATION_DENSITY_HIGH = 240, +ACONFIGURATION_DENSITY_XHIGH = 320, +ACONFIGURATION_DENSITY_XXHIGH = 480, +ACONFIGURATION_DENSITY_XXXHIGH = 640, +
+  ACONFIGURATION_DENSITY_ANY = 0xfffe, +ACONFIGURATION_DENSITY_NONE = 0xffff, +ACONFIGURATION_KEYBOARD_ANY = 0x0000, +ACONFIGURATION_KEYBOARD_NOKEYS = 0x0001, +
+  ACONFIGURATION_KEYBOARD_QWERTY = 0x0002, +ACONFIGURATION_KEYBOARD_12KEY = 0x0003, +ACONFIGURATION_NAVIGATION_ANY = 0x0000, +ACONFIGURATION_NAVIGATION_NONAV = 0x0001, +
+  ACONFIGURATION_NAVIGATION_DPAD = 0x0002, +ACONFIGURATION_NAVIGATION_TRACKBALL = 0x0003, +ACONFIGURATION_NAVIGATION_WHEEL = 0x0004, +ACONFIGURATION_KEYSHIDDEN_ANY = 0x0000, +
+  ACONFIGURATION_KEYSHIDDEN_NO = 0x0001, +ACONFIGURATION_KEYSHIDDEN_YES = 0x0002, +ACONFIGURATION_KEYSHIDDEN_SOFT = 0x0003, +ACONFIGURATION_NAVHIDDEN_ANY = 0x0000, +
+  ACONFIGURATION_NAVHIDDEN_NO = 0x0001, +ACONFIGURATION_NAVHIDDEN_YES = 0x0002, +ACONFIGURATION_SCREENSIZE_ANY = 0x00, +ACONFIGURATION_SCREENSIZE_SMALL = 0x01, +
+  ACONFIGURATION_SCREENSIZE_NORMAL = 0x02, +ACONFIGURATION_SCREENSIZE_LARGE = 0x03, +ACONFIGURATION_SCREENSIZE_XLARGE = 0x04, +ACONFIGURATION_SCREENLONG_ANY = 0x00, +
+  ACONFIGURATION_SCREENLONG_NO = 0x1, +ACONFIGURATION_SCREENLONG_YES = 0x2, +ACONFIGURATION_UI_MODE_TYPE_ANY = 0x00, +ACONFIGURATION_UI_MODE_TYPE_NORMAL = 0x01, +
+  ACONFIGURATION_UI_MODE_TYPE_DESK = 0x02, +ACONFIGURATION_UI_MODE_TYPE_CAR = 0x03, +ACONFIGURATION_UI_MODE_TYPE_TELEVISION = 0x04, +ACONFIGURATION_UI_MODE_TYPE_APPLIANCE = 0x05, +
+  ACONFIGURATION_UI_MODE_TYPE_WATCH = 0x06, +ACONFIGURATION_UI_MODE_NIGHT_ANY = 0x00, +ACONFIGURATION_UI_MODE_NIGHT_NO = 0x1, +ACONFIGURATION_UI_MODE_NIGHT_YES = 0x2, +
+  ACONFIGURATION_SCREEN_WIDTH_DP_ANY = 0x0000, +ACONFIGURATION_SCREEN_HEIGHT_DP_ANY = 0x0000, +ACONFIGURATION_SMALLEST_SCREEN_WIDTH_DP_ANY = 0x0000, +ACONFIGURATION_LAYOUTDIR_ANY = 0x00, +
+  ACONFIGURATION_LAYOUTDIR_LTR = 0x01, +ACONFIGURATION_LAYOUTDIR_RTL = 0x02, +ACONFIGURATION_MCC = 0x0001, +ACONFIGURATION_MNC = 0x0002, +
+  ACONFIGURATION_LOCALE = 0x0004, +ACONFIGURATION_TOUCHSCREEN = 0x0008, +ACONFIGURATION_KEYBOARD = 0x0010, +ACONFIGURATION_KEYBOARD_HIDDEN = 0x0020, +
+  ACONFIGURATION_NAVIGATION = 0x0040, +ACONFIGURATION_ORIENTATION = 0x0080, +ACONFIGURATION_DENSITY = 0x0100, +ACONFIGURATION_SCREEN_SIZE = 0x0200, +
+  ACONFIGURATION_VERSION = 0x0400, +ACONFIGURATION_SCREEN_LAYOUT = 0x0800, +ACONFIGURATION_UI_MODE = 0x1000, +ACONFIGURATION_SMALLEST_SCREEN_SIZE = 0x2000, +
+  ACONFIGURATION_LAYOUTDIR = 0x4000, +ACONFIGURATION_MNC_ZERO = 0xffff +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

AConfigurationAConfiguration_new ()
 
void AConfiguration_delete (AConfiguration *config)
 
void AConfiguration_fromAssetManager (AConfiguration *out, AAssetManager *am)
 
void AConfiguration_copy (AConfiguration *dest, AConfiguration *src)
 
int32_t AConfiguration_getMcc (AConfiguration *config)
 
void AConfiguration_setMcc (AConfiguration *config, int32_t mcc)
 
int32_t AConfiguration_getMnc (AConfiguration *config)
 
void AConfiguration_setMnc (AConfiguration *config, int32_t mnc)
 
void AConfiguration_getLanguage (AConfiguration *config, char *outLanguage)
 
void AConfiguration_setLanguage (AConfiguration *config, const char *language)
 
void AConfiguration_getCountry (AConfiguration *config, char *outCountry)
 
void AConfiguration_setCountry (AConfiguration *config, const char *country)
 
int32_t AConfiguration_getOrientation (AConfiguration *config)
 
void AConfiguration_setOrientation (AConfiguration *config, int32_t orientation)
 
int32_t AConfiguration_getTouchscreen (AConfiguration *config)
 
void AConfiguration_setTouchscreen (AConfiguration *config, int32_t touchscreen)
 
int32_t AConfiguration_getDensity (AConfiguration *config)
 
void AConfiguration_setDensity (AConfiguration *config, int32_t density)
 
int32_t AConfiguration_getKeyboard (AConfiguration *config)
 
void AConfiguration_setKeyboard (AConfiguration *config, int32_t keyboard)
 
int32_t AConfiguration_getNavigation (AConfiguration *config)
 
void AConfiguration_setNavigation (AConfiguration *config, int32_t navigation)
 
int32_t AConfiguration_getKeysHidden (AConfiguration *config)
 
void AConfiguration_setKeysHidden (AConfiguration *config, int32_t keysHidden)
 
int32_t AConfiguration_getNavHidden (AConfiguration *config)
 
void AConfiguration_setNavHidden (AConfiguration *config, int32_t navHidden)
 
int32_t AConfiguration_getSdkVersion (AConfiguration *config)
 
void AConfiguration_setSdkVersion (AConfiguration *config, int32_t sdkVersion)
 
int32_t AConfiguration_getScreenSize (AConfiguration *config)
 
void AConfiguration_setScreenSize (AConfiguration *config, int32_t screenSize)
 
int32_t AConfiguration_getScreenLong (AConfiguration *config)
 
void AConfiguration_setScreenLong (AConfiguration *config, int32_t screenLong)
 
int32_t AConfiguration_getUiModeType (AConfiguration *config)
 
void AConfiguration_setUiModeType (AConfiguration *config, int32_t uiModeType)
 
int32_t AConfiguration_getUiModeNight (AConfiguration *config)
 
void AConfiguration_setUiModeNight (AConfiguration *config, int32_t uiModeNight)
 
int32_t AConfiguration_getScreenWidthDp (AConfiguration *config)
 
void AConfiguration_setScreenWidthDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getScreenHeightDp (AConfiguration *config)
 
void AConfiguration_setScreenHeightDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getSmallestScreenWidthDp (AConfiguration *config)
 
void AConfiguration_setSmallestScreenWidthDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getLayoutDirection (AConfiguration *config)
 
void AConfiguration_setLayoutDirection (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_diff (AConfiguration *config1, AConfiguration *config2)
 
int32_t AConfiguration_match (AConfiguration *base, AConfiguration *requested)
 
int32_t AConfiguration_isBetterThan (AConfiguration *base, AConfiguration *test, AConfiguration *requested)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/deprecated.jd b/docs/html-ndk/ndk/reference/deprecated.jd new file mode 100644 index 0000000000000..420c93ba69622 --- /dev/null +++ b/docs/html-ndk/ndk/reference/deprecated.jd @@ -0,0 +1,31 @@ +page.title=Deprecated List +page.customHeadTag= +@jd:body + + +
+
+
Deprecated List
+
+
+
+
Global ACONFIGURATION_ORIENTATION_SQUARE
+
Not currently supported or used.
+
Global ACONFIGURATION_TOUCHSCREEN_STYLUS
+
Not currently supported or used.
+
Global AWINDOW_FLAG_BLUR_BEHIND
+
Blurring is no longer supported.
+
Global AWINDOW_FLAG_DITHER
+
This flag is no longer used.
+
Global AWINDOW_FLAG_TOUCHABLE_WHEN_WAKING
+
This flag has no effect.
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/dir_035c76f7235f5f563d38e3ab90cb9716.jd b/docs/html-ndk/ndk/reference/dir_035c76f7235f5f563d38e3ab90cb9716.jd new file mode 100644 index 0000000000000..61261495455f4 --- /dev/null +++ b/docs/html-ndk/ndk/reference/dir_035c76f7235f5f563d38e3ab90cb9716.jd @@ -0,0 +1,57 @@ +page.title=android Directory Reference +page.customHeadTag= +@jd:body + + + +
+
+
android Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  asset_manager.h
 
file  asset_manager_jni.h
 
file  bitmap.h
 
file  configuration.h
 
file  input.h
 
file  keycodes.h
 
file  looper.h
 
file  native_activity.h
 
file  native_window.h
 
file  native_window_jni.h
 
file  obb.h
 
file  rect.h
 
file  sensor.h
 
file  storage_manager.h
 
file  window.h
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/dir_d44c64559bbebec7f509842c48db8b23.jd b/docs/html-ndk/ndk/reference/dir_d44c64559bbebec7f509842c48db8b23.jd new file mode 100644 index 0000000000000..26ed8f4e1f967 --- /dev/null +++ b/docs/html-ndk/ndk/reference/dir_d44c64559bbebec7f509842c48db8b23.jd @@ -0,0 +1,29 @@ +page.title=include Directory Reference +page.customHeadTag= +@jd:body + + + +
+
+
include Directory Reference
+
+
+ + + + +

+Directories

directory  android
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/doxygen.css b/docs/html-ndk/ndk/reference/doxygen.css new file mode 100644 index 0000000000000..94f4bf2cc35ce --- /dev/null +++ b/docs/html-ndk/ndk/reference/doxygen.css @@ -0,0 +1,1366 @@ +/* The standard CSS for doxygen 1.8.6 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #A9A9A9; + color: #585858; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #F1F1F1; + border: 1px solid #BDBDBD; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #646464; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #747474; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #B8B8B8; + color: #ffffff; + border: 1px double #A8A8A8; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px 6px; + margin: 4px 8px 4px 2px; + background-color: #FCFCFC; + border: 1px solid #D5D5D5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #F1F1F1; + font-weight: bold; + border: 1px solid #D5D5D5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #F1F1F1; + border: 1px solid #D5D5D5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #F2F2F2; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F9F9F9; + border-left: 2px solid #B8B8B8; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #BDBDBD; +} + +th.dirtab { + background: #F1F1F1; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #7A7A7A; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #FAFAFA; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #747474; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #747474; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #F1F1F1; + border: 1px solid #BDBDBD; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #C0C0C0; + border-left: 1px solid #C0C0C0; + border-right: 1px solid #C0C0C0; + padding: 6px 0px 6px 0px; + color: #3D3D3D; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #EAEAEA; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #C0C0C0; + border-left: 1px solid #C0C0C0; + border-right: 1px solid #C0C0C0; + padding: 6px 10px 2px 10px; + background-color: #FCFCFC; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #9A9A9A; + border-top:1px solid #848484; + border-left:1px solid #848484; + border-right:1px solid #D5D5D5; + border-bottom:1px solid #D5D5D5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F9F9F9; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #646464; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #464646; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #4A4A4A; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #5B5B5B; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #C0C0C0; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #C0C0C0; + border-bottom: 1px solid #C0C0C0; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #C0C0C0; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #EAEAEA; + font-size: 90%; + color: #3D3D3D; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #C0C0C0; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#ABABAB; + border:solid 1px #D3D3D3; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#595959; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #434343; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#929292; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#595959; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #FAFAFA; + margin: 0px; + border-bottom: 1px solid #D5D5D5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #848484; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #AFAFAF; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#545454; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F7F7F7; + border: 1px solid #E3E3E3; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #747474; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/docs/html-ndk/ndk/reference/doxygen.png b/docs/html-ndk/ndk/reference/doxygen.png new file mode 100644 index 0000000000000..da7e8aa7670c5 Binary files /dev/null and b/docs/html-ndk/ndk/reference/doxygen.png differ diff --git a/docs/html-ndk/ndk/reference/dynsections.js b/docs/html-ndk/ndk/reference/dynsections.js new file mode 100644 index 0000000000000..ed092c7f63048 --- /dev/null +++ b/docs/html-ndk/ndk/reference/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l +@jd:body + + +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/ftv2blank.png b/docs/html-ndk/ndk/reference/ftv2blank.png new file mode 100644 index 0000000000000..63c605bb4c3d9 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2blank.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2cl.png b/docs/html-ndk/ndk/reference/ftv2cl.png new file mode 100644 index 0000000000000..d660c7bbe8834 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2cl.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2doc.png b/docs/html-ndk/ndk/reference/ftv2doc.png new file mode 100644 index 0000000000000..7f92e54f9bbca Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2doc.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2folderclosed.png b/docs/html-ndk/ndk/reference/ftv2folderclosed.png new file mode 100644 index 0000000000000..359f2073ab18d Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2folderclosed.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2folderopen.png b/docs/html-ndk/ndk/reference/ftv2folderopen.png new file mode 100644 index 0000000000000..c5103edcf80a0 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2folderopen.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2lastnode.png b/docs/html-ndk/ndk/reference/ftv2lastnode.png new file mode 100644 index 0000000000000..63c605bb4c3d9 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2lastnode.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2link.png b/docs/html-ndk/ndk/reference/ftv2link.png new file mode 100644 index 0000000000000..7f92e54f9bbca Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2link.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2mlastnode.png b/docs/html-ndk/ndk/reference/ftv2mlastnode.png new file mode 100644 index 0000000000000..9d1437d201080 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2mlastnode.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2mnode.png b/docs/html-ndk/ndk/reference/ftv2mnode.png new file mode 100644 index 0000000000000..9d1437d201080 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2mnode.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2mo.png b/docs/html-ndk/ndk/reference/ftv2mo.png new file mode 100644 index 0000000000000..e2513ee47eaef Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2mo.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2node.png b/docs/html-ndk/ndk/reference/ftv2node.png new file mode 100644 index 0000000000000..63c605bb4c3d9 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2node.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2ns.png b/docs/html-ndk/ndk/reference/ftv2ns.png new file mode 100644 index 0000000000000..c61a541e88e66 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2ns.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2plastnode.png b/docs/html-ndk/ndk/reference/ftv2plastnode.png new file mode 100644 index 0000000000000..a2fffb6fcffd1 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2plastnode.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2pnode.png b/docs/html-ndk/ndk/reference/ftv2pnode.png new file mode 100644 index 0000000000000..a2fffb6fcffd1 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2pnode.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2splitbar.png b/docs/html-ndk/ndk/reference/ftv2splitbar.png new file mode 100644 index 0000000000000..343046b612b0b Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2splitbar.png differ diff --git a/docs/html-ndk/ndk/reference/ftv2vertline.png b/docs/html-ndk/ndk/reference/ftv2vertline.png new file mode 100644 index 0000000000000..63c605bb4c3d9 Binary files /dev/null and b/docs/html-ndk/ndk/reference/ftv2vertline.png differ diff --git a/docs/html-ndk/ndk/reference/functions.jd b/docs/html-ndk/ndk/reference/functions.jd new file mode 100644 index 0000000000000..4a86039beaba6 --- /dev/null +++ b/docs/html-ndk/ndk/reference/functions.jd @@ -0,0 +1,335 @@ +page.title=Data Fields +page.customHeadTag= +@jd:body + + +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+ + +

- w -

+ + +

- x -

+ + +

- y -

+ + +

- z -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/functions_vars.jd b/docs/html-ndk/ndk/reference/functions_vars.jd new file mode 100644 index 0000000000000..c2c53d642dee6 --- /dev/null +++ b/docs/html-ndk/ndk/reference/functions_vars.jd @@ -0,0 +1,335 @@ +page.title=Data Fields - Variables +page.customHeadTag= +@jd:body + + +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+ + +

- w -

+ + +

- x -

+ + +

- y -

+ + +

- z -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals.jd b/docs/html-ndk/ndk/reference/globals.jd new file mode 100644 index 0000000000000..6cbbe5404fd78 --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals.jd @@ -0,0 +1,2302 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+ +

- a -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_defs.jd b/docs/html-ndk/ndk/reference/globals_defs.jd new file mode 100644 index 0000000000000..64ef6c65182ec --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_defs.jd @@ -0,0 +1,32 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_enum.jd b/docs/html-ndk/ndk/reference/globals_enum.jd new file mode 100644 index 0000000000000..7d885eacb9c9b --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_enum.jd @@ -0,0 +1,20 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_eval.jd b/docs/html-ndk/ndk/reference/globals_eval.jd new file mode 100644 index 0000000000000..829635818c09f --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_eval.jd @@ -0,0 +1,1660 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+  + +

- a -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_eval_w.jd b/docs/html-ndk/ndk/reference/globals_eval_w.jd new file mode 100644 index 0000000000000..ab9cfe9f594d0 --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_eval_w.jd @@ -0,0 +1,28 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+  + +

- w -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_func.jd b/docs/html-ndk/ndk/reference/globals_func.jd new file mode 100644 index 0000000000000..b6073e62ecb61 --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_func.jd @@ -0,0 +1,559 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+  + +

- a -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_type.jd b/docs/html-ndk/ndk/reference/globals_type.jd new file mode 100644 index 0000000000000..2659971a4965d --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_type.jd @@ -0,0 +1,98 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_vars.jd b/docs/html-ndk/ndk/reference/globals_vars.jd new file mode 100644 index 0000000000000..f538a6fd4f0f6 --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_vars.jd @@ -0,0 +1,20 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/globals_w.jd b/docs/html-ndk/ndk/reference/globals_w.jd new file mode 100644 index 0000000000000..0bb34db259ff1 --- /dev/null +++ b/docs/html-ndk/ndk/reference/globals_w.jd @@ -0,0 +1,28 @@ +page.title=Globals +page.customHeadTag= +@jd:body + + +
+
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+ +

- w -

+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___asset.jd b/docs/html-ndk/ndk/reference/group___asset.jd new file mode 100644 index 0000000000000..300bc87e9f932 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___asset.jd @@ -0,0 +1,599 @@ +page.title=Asset +page.customHeadTag= +@jd:body + + +
+ +
+
Asset
+
+
+ + + + + + +

+Files

file  asset_manager.h
 
file  asset_manager_jni.h
 
+ + + + + + + +

+Typedefs

typedef struct AAssetManager AAssetManager
 
typedef struct AAssetDir AAssetDir
 
typedef struct AAsset AAsset
 
+ + + +

+Enumerations

enum  { AASSET_MODE_UNKNOWN = 0, +AASSET_MODE_RANDOM = 1, +AASSET_MODE_STREAMING = 2, +AASSET_MODE_BUFFER = 3 + }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

AAssetDirAAssetManager_openDir (AAssetManager *mgr, const char *dirName)
 
AAssetAAssetManager_open (AAssetManager *mgr, const char *filename, int mode)
 
const char * AAssetDir_getNextFileName (AAssetDir *assetDir)
 
void AAssetDir_rewind (AAssetDir *assetDir)
 
void AAssetDir_close (AAssetDir *assetDir)
 
int AAsset_read (AAsset *asset, void *buf, size_t count)
 
off_t AAsset_seek (AAsset *asset, off_t offset, int whence)
 
off64_t AAsset_seek64 (AAsset *asset, off64_t offset, int whence)
 
void AAsset_close (AAsset *asset)
 
const void * AAsset_getBuffer (AAsset *asset)
 
off_t AAsset_getLength (AAsset *asset)
 
off64_t AAsset_getLength64 (AAsset *asset)
 
off_t AAsset_getRemainingLength (AAsset *asset)
 
off64_t AAsset_getRemainingLength64 (AAsset *asset)
 
int AAsset_openFileDescriptor (AAsset *asset, off_t *outStart, off_t *outLength)
 
int AAsset_openFileDescriptor64 (AAsset *asset, off64_t *outStart, off64_t *outLength)
 
int AAsset_isAllocated (AAsset *asset)
 
AAssetManagerAAssetManager_fromJava (JNIEnv *env, jobject assetManager)
 
+

Detailed Description

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct AAsset AAsset
+
+

AAsset provides access to a read-only asset.

+

AAsset objects are NOT thread-safe, and should not be shared across threads.

+ +
+
+ +
+
+ + + + +
typedef struct AAssetDir AAssetDir
+
+

AAssetDir provides access to a chunk of the asset hierarchy as if it were a single directory. The contents are populated by the AAssetManager.

+

The list of files will be sorted in ascending order by ASCII value.

+ +
+
+ +
+
+ + + + +
typedef struct AAssetManager AAssetManager
+
+

AAssetManager provides access to an application's raw assets by creating AAsset objects.

+

AAssetManager is a wrapper to the low-level native implementation of the java AAssetManager, a pointer can be obtained using AAssetManager_fromJava().

+

The asset hierarchy may be examined like a filesystem, using AAssetDir objects to peruse a single directory.

+

A native AAssetManager pointer may be shared across multiple threads.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Available access modes for opening assets with AAssetManager_open

+ + + + + +
Enumerator
AASSET_MODE_UNKNOWN  +

No specific information about how data will be accessed.

+
AASSET_MODE_RANDOM  +

Read chunks, and seek forward and backward.

+
AASSET_MODE_STREAMING  +

Read sequentially, with an occasional forward seek.

+
AASSET_MODE_BUFFER  +

Caller plans to ask for a read-only buffer with all data.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void AAsset_close (AAssetasset)
+
+

Close the asset, freeing all associated resources.

+ +
+
+ +
+
+ + + + + + + + +
const void* AAsset_getBuffer (AAssetasset)
+
+

Get a pointer to a buffer holding the entire contents of the assset.

+

Returns NULL on failure.

+ +
+
+ +
+
+ + + + + + + + +
off_t AAsset_getLength (AAssetasset)
+
+

Report the total size of the asset data.

+ +
+
+ +
+
+ + + + + + + + +
off64_t AAsset_getLength64 (AAssetasset)
+
+

Report the total size of the asset data. Reports the size using a 64-bit number insted of 32-bit as AAsset_getLength.

+ +
+
+ +
+
+ + + + + + + + +
off_t AAsset_getRemainingLength (AAssetasset)
+
+

Report the total amount of asset data that can be read from the current position.

+ +
+
+ +
+
+ + + + + + + + +
off64_t AAsset_getRemainingLength64 (AAssetasset)
+
+

Report the total amount of asset data that can be read from the current position.

+

Uses a 64-bit number instead of a 32-bit number as AAsset_getRemainingLength does.

+ +
+
+ +
+
+ + + + + + + + +
int AAsset_isAllocated (AAssetasset)
+
+

Returns whether this asset's internal buffer is allocated in ordinary RAM (i.e. not mmapped).

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int AAsset_openFileDescriptor (AAssetasset,
off_t * outStart,
off_t * outLength 
)
+
+

Open a new file descriptor that can be used to read the asset data. If the start or length cannot be represented by a 32-bit number, it will be truncated. If the file is large, use AAsset_openFileDescriptor64 instead.

+

Returns < 0 if direct fd access is not possible (for example, if the asset is compressed).

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int AAsset_openFileDescriptor64 (AAssetasset,
off64_t * outStart,
off64_t * outLength 
)
+
+

Open a new file descriptor that can be used to read the asset data.

+

Uses a 64-bit number for the offset and length instead of 32-bit instead of as AAsset_openFileDescriptor does.

+

Returns < 0 if direct fd access is not possible (for example, if the asset is compressed).

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int AAsset_read (AAssetasset,
void * buf,
size_t count 
)
+
+

Attempt to read 'count' bytes of data from the current offset.

+

Returns the number of bytes read, zero on EOF, or < 0 on error.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
off_t AAsset_seek (AAssetasset,
off_t offset,
int whence 
)
+
+

Seek to the specified offset within the asset data. 'whence' uses the same constants as lseek()/fseek().

+

Returns the new position on success, or (off_t) -1 on error.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
off64_t AAsset_seek64 (AAssetasset,
off64_t offset,
int whence 
)
+
+

Seek to the specified offset within the asset data. 'whence' uses the same constants as lseek()/fseek().

+

Uses 64-bit data type for large files as opposed to the 32-bit type used by AAsset_seek.

+

Returns the new position on success, or (off64_t) -1 on error.

+ +
+
+ +
+
+ + + + + + + + +
void AAssetDir_close (AAssetDirassetDir)
+
+

Close an opened AAssetDir, freeing any related resources.

+ +
+
+ +
+
+ + + + + + + + +
const char* AAssetDir_getNextFileName (AAssetDirassetDir)
+
+

Iterate over the files in an asset directory. A NULL string is returned when all the file names have been returned.

+

The returned file name is suitable for passing to AAssetManager_open().

+

The string returned here is owned by the AssetDir implementation and is not guaranteed to remain valid if any other calls are made on this AAssetDir instance.

+ +
+
+ +
+
+ + + + + + + + +
void AAssetDir_rewind (AAssetDirassetDir)
+
+

Reset the iteration state of AAssetDir_getNextFileName() to the beginning.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
AAssetManager* AAssetManager_fromJava (JNIEnv * env,
jobject assetManager 
)
+
+

Given a Dalvik AssetManager object, obtain the corresponding native AAssetManager object. Note that the caller is responsible for obtaining and holding a VM reference to the jobject to prevent its being garbage collected while the native object is in use.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
AAsset* AAssetManager_open (AAssetManagermgr,
const char * filename,
int mode 
)
+
+

Open an asset.

+

The object returned here should be freed by calling AAsset_close().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
AAssetDir* AAssetManager_openDir (AAssetManagermgr,
const char * dirName 
)
+
+

Open the named directory within the asset hierarchy. The directory can then be inspected with the AAssetDir functions. To open the top-level directory, pass in "" as the dirName.

+

The object returned here should be freed by calling AAssetDir_close().

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___bitmap.jd b/docs/html-ndk/ndk/reference/group___bitmap.jd new file mode 100644 index 0000000000000..045b550ef2b94 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___bitmap.jd @@ -0,0 +1,238 @@ +page.title=Bitmap +page.customHeadTag= +@jd:body + + +
+ +
+
Bitmap
+
+
+ + + + +

+Files

file  bitmap.h
 
+ + + +

+Data Structures

struct  AndroidBitmapInfo
 
+ + + +

+Macros

#define ANDROID_BITMAP_RESUT_SUCCESS   ANDROID_BITMAP_RESULT_SUCCESS
 
+ + + + + +

+Enumerations

enum  { ANDROID_BITMAP_RESULT_SUCCESS = 0, +ANDROID_BITMAP_RESULT_BAD_PARAMETER = -1, +ANDROID_BITMAP_RESULT_JNI_EXCEPTION = -2, +ANDROID_BITMAP_RESULT_ALLOCATION_FAILED = -3 + }
 
enum  AndroidBitmapFormat {
+  ANDROID_BITMAP_FORMAT_NONE = 0, +ANDROID_BITMAP_FORMAT_RGBA_8888 = 1, +ANDROID_BITMAP_FORMAT_RGB_565 = 4, +ANDROID_BITMAP_FORMAT_RGBA_4444 = 7, +
+  ANDROID_BITMAP_FORMAT_A_8 = 8 +
+ }
 
+ + + + + + + +

+Functions

int AndroidBitmap_getInfo (JNIEnv *env, jobject jbitmap, AndroidBitmapInfo *info)
 
int AndroidBitmap_lockPixels (JNIEnv *env, jobject jbitmap, void **addrPtr)
 
int AndroidBitmap_unlockPixels (JNIEnv *env, jobject jbitmap)
 
+

Detailed Description

+

Macro Definition Documentation

+ +
+
+ + + + +
#define ANDROID_BITMAP_RESUT_SUCCESS   ANDROID_BITMAP_RESULT_SUCCESS
+
+

Backward compatibility: this macro used to be misspelled.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

AndroidBitmap functions result code.

+ + + + + +
Enumerator
ANDROID_BITMAP_RESULT_SUCCESS  +

Operation was successful.

+
ANDROID_BITMAP_RESULT_BAD_PARAMETER  +

Bad parameter.

+
ANDROID_BITMAP_RESULT_JNI_EXCEPTION  +

JNI exception occured.

+
ANDROID_BITMAP_RESULT_ALLOCATION_FAILED  +

Allocation failed.

+
+ +
+
+ +
+
+ + + + +
enum AndroidBitmapFormat
+
+

Bitmap pixel format.

+ + + + + + +
Enumerator
ANDROID_BITMAP_FORMAT_NONE  +

No format.

+
ANDROID_BITMAP_FORMAT_RGBA_8888  +

Red: 8 bits, Green: 8 bits, Blue: 8 bits, Alpha: 8 bits.

+
ANDROID_BITMAP_FORMAT_RGB_565  +

Red: 5 bits, Green: 6 bits, Blue: 5 bits.

+
ANDROID_BITMAP_FORMAT_RGBA_4444  +

Red: 4 bits, Green: 4 bits, Blue: 4 bits, Alpha: 4 bits.

+
ANDROID_BITMAP_FORMAT_A_8  +

Deprecated.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int AndroidBitmap_getInfo (JNIEnv * env,
jobject jbitmap,
AndroidBitmapInfoinfo 
)
+
+

Given a java bitmap object, fill out the AndroidBitmapInfo struct for it. If the call fails, the info parameter will be ignored.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int AndroidBitmap_lockPixels (JNIEnv * env,
jobject jbitmap,
void ** addrPtr 
)
+
+

Given a java bitmap object, attempt to lock the pixel address. Locking will ensure that the memory for the pixels will not move until the unlockPixels call, and ensure that, if the pixels had been previously purged, they will have been restored.

+

If this call succeeds, it must be balanced by a call to AndroidBitmap_unlockPixels, after which time the address of the pixels should no longer be used.

+

If this succeeds, *addrPtr will be set to the pixel address. If the call fails, addrPtr will be ignored.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int AndroidBitmap_unlockPixels (JNIEnv * env,
jobject jbitmap 
)
+
+

Call this to balance a successful call to AndroidBitmap_lockPixels.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___configuration.jd b/docs/html-ndk/ndk/reference/group___configuration.jd new file mode 100644 index 0000000000000..93d0fabbab16e --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___configuration.jd @@ -0,0 +1,1565 @@ +page.title=Configuration +page.customHeadTag= +@jd:body + + +
+ +
+
Configuration
+
+
+ + + + +

+Files

file  configuration.h
 
+ + + +

+Typedefs

typedef struct AConfiguration AConfiguration
 
+ + + +

+Enumerations

enum  {
+  ACONFIGURATION_ORIENTATION_ANY = 0x0000, +ACONFIGURATION_ORIENTATION_PORT = 0x0001, +ACONFIGURATION_ORIENTATION_LAND = 0x0002, +ACONFIGURATION_ORIENTATION_SQUARE = 0x0003, +
+  ACONFIGURATION_TOUCHSCREEN_ANY = 0x0000, +ACONFIGURATION_TOUCHSCREEN_NOTOUCH = 0x0001, +ACONFIGURATION_TOUCHSCREEN_STYLUS = 0x0002, +ACONFIGURATION_TOUCHSCREEN_FINGER = 0x0003, +
+  ACONFIGURATION_DENSITY_DEFAULT = 0, +ACONFIGURATION_DENSITY_LOW = 120, +ACONFIGURATION_DENSITY_MEDIUM = 160, +ACONFIGURATION_DENSITY_TV = 213, +
+  ACONFIGURATION_DENSITY_HIGH = 240, +ACONFIGURATION_DENSITY_XHIGH = 320, +ACONFIGURATION_DENSITY_XXHIGH = 480, +ACONFIGURATION_DENSITY_XXXHIGH = 640, +
+  ACONFIGURATION_DENSITY_ANY = 0xfffe, +ACONFIGURATION_DENSITY_NONE = 0xffff, +ACONFIGURATION_KEYBOARD_ANY = 0x0000, +ACONFIGURATION_KEYBOARD_NOKEYS = 0x0001, +
+  ACONFIGURATION_KEYBOARD_QWERTY = 0x0002, +ACONFIGURATION_KEYBOARD_12KEY = 0x0003, +ACONFIGURATION_NAVIGATION_ANY = 0x0000, +ACONFIGURATION_NAVIGATION_NONAV = 0x0001, +
+  ACONFIGURATION_NAVIGATION_DPAD = 0x0002, +ACONFIGURATION_NAVIGATION_TRACKBALL = 0x0003, +ACONFIGURATION_NAVIGATION_WHEEL = 0x0004, +ACONFIGURATION_KEYSHIDDEN_ANY = 0x0000, +
+  ACONFIGURATION_KEYSHIDDEN_NO = 0x0001, +ACONFIGURATION_KEYSHIDDEN_YES = 0x0002, +ACONFIGURATION_KEYSHIDDEN_SOFT = 0x0003, +ACONFIGURATION_NAVHIDDEN_ANY = 0x0000, +
+  ACONFIGURATION_NAVHIDDEN_NO = 0x0001, +ACONFIGURATION_NAVHIDDEN_YES = 0x0002, +ACONFIGURATION_SCREENSIZE_ANY = 0x00, +ACONFIGURATION_SCREENSIZE_SMALL = 0x01, +
+  ACONFIGURATION_SCREENSIZE_NORMAL = 0x02, +ACONFIGURATION_SCREENSIZE_LARGE = 0x03, +ACONFIGURATION_SCREENSIZE_XLARGE = 0x04, +ACONFIGURATION_SCREENLONG_ANY = 0x00, +
+  ACONFIGURATION_SCREENLONG_NO = 0x1, +ACONFIGURATION_SCREENLONG_YES = 0x2, +ACONFIGURATION_UI_MODE_TYPE_ANY = 0x00, +ACONFIGURATION_UI_MODE_TYPE_NORMAL = 0x01, +
+  ACONFIGURATION_UI_MODE_TYPE_DESK = 0x02, +ACONFIGURATION_UI_MODE_TYPE_CAR = 0x03, +ACONFIGURATION_UI_MODE_TYPE_TELEVISION = 0x04, +ACONFIGURATION_UI_MODE_TYPE_APPLIANCE = 0x05, +
+  ACONFIGURATION_UI_MODE_TYPE_WATCH = 0x06, +ACONFIGURATION_UI_MODE_NIGHT_ANY = 0x00, +ACONFIGURATION_UI_MODE_NIGHT_NO = 0x1, +ACONFIGURATION_UI_MODE_NIGHT_YES = 0x2, +
+  ACONFIGURATION_SCREEN_WIDTH_DP_ANY = 0x0000, +ACONFIGURATION_SCREEN_HEIGHT_DP_ANY = 0x0000, +ACONFIGURATION_SMALLEST_SCREEN_WIDTH_DP_ANY = 0x0000, +ACONFIGURATION_LAYOUTDIR_ANY = 0x00, +
+  ACONFIGURATION_LAYOUTDIR_LTR = 0x01, +ACONFIGURATION_LAYOUTDIR_RTL = 0x02, +ACONFIGURATION_MCC = 0x0001, +ACONFIGURATION_MNC = 0x0002, +
+  ACONFIGURATION_LOCALE = 0x0004, +ACONFIGURATION_TOUCHSCREEN = 0x0008, +ACONFIGURATION_KEYBOARD = 0x0010, +ACONFIGURATION_KEYBOARD_HIDDEN = 0x0020, +
+  ACONFIGURATION_NAVIGATION = 0x0040, +ACONFIGURATION_ORIENTATION = 0x0080, +ACONFIGURATION_DENSITY = 0x0100, +ACONFIGURATION_SCREEN_SIZE = 0x0200, +
+  ACONFIGURATION_VERSION = 0x0400, +ACONFIGURATION_SCREEN_LAYOUT = 0x0800, +ACONFIGURATION_UI_MODE = 0x1000, +ACONFIGURATION_SMALLEST_SCREEN_SIZE = 0x2000, +
+  ACONFIGURATION_LAYOUTDIR = 0x4000, +ACONFIGURATION_MNC_ZERO = 0xffff +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

AConfigurationAConfiguration_new ()
 
void AConfiguration_delete (AConfiguration *config)
 
void AConfiguration_fromAssetManager (AConfiguration *out, AAssetManager *am)
 
void AConfiguration_copy (AConfiguration *dest, AConfiguration *src)
 
int32_t AConfiguration_getMcc (AConfiguration *config)
 
void AConfiguration_setMcc (AConfiguration *config, int32_t mcc)
 
int32_t AConfiguration_getMnc (AConfiguration *config)
 
void AConfiguration_setMnc (AConfiguration *config, int32_t mnc)
 
void AConfiguration_getLanguage (AConfiguration *config, char *outLanguage)
 
void AConfiguration_setLanguage (AConfiguration *config, const char *language)
 
void AConfiguration_getCountry (AConfiguration *config, char *outCountry)
 
void AConfiguration_setCountry (AConfiguration *config, const char *country)
 
int32_t AConfiguration_getOrientation (AConfiguration *config)
 
void AConfiguration_setOrientation (AConfiguration *config, int32_t orientation)
 
int32_t AConfiguration_getTouchscreen (AConfiguration *config)
 
void AConfiguration_setTouchscreen (AConfiguration *config, int32_t touchscreen)
 
int32_t AConfiguration_getDensity (AConfiguration *config)
 
void AConfiguration_setDensity (AConfiguration *config, int32_t density)
 
int32_t AConfiguration_getKeyboard (AConfiguration *config)
 
void AConfiguration_setKeyboard (AConfiguration *config, int32_t keyboard)
 
int32_t AConfiguration_getNavigation (AConfiguration *config)
 
void AConfiguration_setNavigation (AConfiguration *config, int32_t navigation)
 
int32_t AConfiguration_getKeysHidden (AConfiguration *config)
 
void AConfiguration_setKeysHidden (AConfiguration *config, int32_t keysHidden)
 
int32_t AConfiguration_getNavHidden (AConfiguration *config)
 
void AConfiguration_setNavHidden (AConfiguration *config, int32_t navHidden)
 
int32_t AConfiguration_getSdkVersion (AConfiguration *config)
 
void AConfiguration_setSdkVersion (AConfiguration *config, int32_t sdkVersion)
 
int32_t AConfiguration_getScreenSize (AConfiguration *config)
 
void AConfiguration_setScreenSize (AConfiguration *config, int32_t screenSize)
 
int32_t AConfiguration_getScreenLong (AConfiguration *config)
 
void AConfiguration_setScreenLong (AConfiguration *config, int32_t screenLong)
 
int32_t AConfiguration_getUiModeType (AConfiguration *config)
 
void AConfiguration_setUiModeType (AConfiguration *config, int32_t uiModeType)
 
int32_t AConfiguration_getUiModeNight (AConfiguration *config)
 
void AConfiguration_setUiModeNight (AConfiguration *config, int32_t uiModeNight)
 
int32_t AConfiguration_getScreenWidthDp (AConfiguration *config)
 
void AConfiguration_setScreenWidthDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getScreenHeightDp (AConfiguration *config)
 
void AConfiguration_setScreenHeightDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getSmallestScreenWidthDp (AConfiguration *config)
 
void AConfiguration_setSmallestScreenWidthDp (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_getLayoutDirection (AConfiguration *config)
 
void AConfiguration_setLayoutDirection (AConfiguration *config, int32_t value)
 
int32_t AConfiguration_diff (AConfiguration *config1, AConfiguration *config2)
 
int32_t AConfiguration_match (AConfiguration *base, AConfiguration *requested)
 
int32_t AConfiguration_isBetterThan (AConfiguration *base, AConfiguration *test, AConfiguration *requested)
 
+

Detailed Description

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct AConfiguration AConfiguration
+
+

AConfiguration is an opaque type used to get and set various subsystem configurations.

+

A AConfiguration pointer can be obtained using:

+ + +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Define flags and constants for various subsystem configurations.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
ACONFIGURATION_ORIENTATION_ANY  +

Orientation: not specified.

+
ACONFIGURATION_ORIENTATION_PORT  +

Orientation: value corresponding to the port resource qualifier.

+
ACONFIGURATION_ORIENTATION_LAND  +

Orientation: value corresponding to the land resource qualifier.

+
ACONFIGURATION_ORIENTATION_SQUARE  +
Deprecated:
Not currently supported or used.
+
ACONFIGURATION_TOUCHSCREEN_ANY  +

Touchscreen: not specified.

+
ACONFIGURATION_TOUCHSCREEN_NOTOUCH  +

Touchscreen: value corresponding to the notouch resource qualifier.

+
ACONFIGURATION_TOUCHSCREEN_STYLUS  +
Deprecated:
Not currently supported or used.
+
ACONFIGURATION_TOUCHSCREEN_FINGER  +

Touchscreen: value corresponding to the finger resource qualifier.

+
ACONFIGURATION_DENSITY_DEFAULT  +

Density: default density.

+
ACONFIGURATION_DENSITY_LOW  +

Density: value corresponding to the ldpi resource qualifier.

+
ACONFIGURATION_DENSITY_MEDIUM  +

Density: value corresponding to the mdpi resource qualifier.

+
ACONFIGURATION_DENSITY_TV  +

Density: value corresponding to the tvdpi resource qualifier.

+
ACONFIGURATION_DENSITY_HIGH  +

Density: value corresponding to the hdpi resource qualifier.

+
ACONFIGURATION_DENSITY_XHIGH  +

Density: value corresponding to the xhdpi resource qualifier.

+
ACONFIGURATION_DENSITY_XXHIGH  +

Density: value corresponding to the xxhdpi resource qualifier.

+
ACONFIGURATION_DENSITY_XXXHIGH  +

Density: value corresponding to the xxxhdpi resource qualifier.

+
ACONFIGURATION_DENSITY_ANY  +

Density: any density.

+
ACONFIGURATION_DENSITY_NONE  +

Density: no density specified.

+
ACONFIGURATION_KEYBOARD_ANY  +

Keyboard: not specified.

+
ACONFIGURATION_KEYBOARD_NOKEYS  +

Keyboard: value corresponding to the nokeys resource qualifier.

+
ACONFIGURATION_KEYBOARD_QWERTY  +

Keyboard: value corresponding to the qwerty resource qualifier.

+
ACONFIGURATION_KEYBOARD_12KEY  +

Keyboard: value corresponding to the 12key resource qualifier.

+
ACONFIGURATION_NAVIGATION_ANY  +

Navigation: not specified.

+
ACONFIGURATION_NAVIGATION_NONAV  +

Navigation: value corresponding to the nonav resource qualifier.

+
ACONFIGURATION_NAVIGATION_DPAD  +

Navigation: value corresponding to the dpad resource qualifier.

+
ACONFIGURATION_NAVIGATION_TRACKBALL  +

Navigation: value corresponding to the trackball resource qualifier.

+
ACONFIGURATION_NAVIGATION_WHEEL  +

Navigation: value corresponding to the wheel resource qualifier.

+
ACONFIGURATION_KEYSHIDDEN_ANY  +

Keyboard availability: not specified.

+
ACONFIGURATION_KEYSHIDDEN_NO  +

Keyboard availability: value corresponding to the keysexposed resource qualifier.

+
ACONFIGURATION_KEYSHIDDEN_YES  +

Keyboard availability: value corresponding to the keyshidden resource qualifier.

+
ACONFIGURATION_KEYSHIDDEN_SOFT  +

Keyboard availability: value corresponding to the keyssoft resource qualifier.

+
ACONFIGURATION_NAVHIDDEN_ANY  +

Navigation availability: not specified.

+
ACONFIGURATION_NAVHIDDEN_NO  +

Navigation availability: value corresponding to the navexposed resource qualifier.

+
ACONFIGURATION_NAVHIDDEN_YES  +

Navigation availability: value corresponding to the navhidden resource qualifier.

+
ACONFIGURATION_SCREENSIZE_ANY  +

Screen size: not specified.

+
ACONFIGURATION_SCREENSIZE_SMALL  +

Screen size: value indicating the screen is at least approximately 320x426 dp units, corresponding to the small resource qualifier.

+
ACONFIGURATION_SCREENSIZE_NORMAL  +

Screen size: value indicating the screen is at least approximately 320x470 dp units, corresponding to the normal resource qualifier.

+
ACONFIGURATION_SCREENSIZE_LARGE  +

Screen size: value indicating the screen is at least approximately 480x640 dp units, corresponding to the large resource qualifier.

+
ACONFIGURATION_SCREENSIZE_XLARGE  +

Screen size: value indicating the screen is at least approximately 720x960 dp units, corresponding to the xlarge resource qualifier.

+
ACONFIGURATION_SCREENLONG_ANY  +

Screen layout: not specified.

+
ACONFIGURATION_SCREENLONG_NO  +

Screen layout: value that corresponds to the notlong resource qualifier.

+
ACONFIGURATION_SCREENLONG_YES  +

Screen layout: value that corresponds to the long resource qualifier.

+
ACONFIGURATION_UI_MODE_TYPE_ANY  +

UI mode: not specified.

+
ACONFIGURATION_UI_MODE_TYPE_NORMAL  +

UI mode: value that corresponds to no UI mode type resource qualifier specified.

+
ACONFIGURATION_UI_MODE_TYPE_DESK  +

UI mode: value that corresponds to desk resource qualifier specified.

+
ACONFIGURATION_UI_MODE_TYPE_CAR  +

UI mode: value that corresponds to car resource qualifier specified.

+
ACONFIGURATION_UI_MODE_TYPE_TELEVISION  +

UI mode: value that corresponds to television resource qualifier specified.

+
ACONFIGURATION_UI_MODE_TYPE_APPLIANCE  +

UI mode: value that corresponds to appliance resource qualifier specified.

+
ACONFIGURATION_UI_MODE_TYPE_WATCH  +

UI mode: value that corresponds to watch resource qualifier specified.

+
ACONFIGURATION_UI_MODE_NIGHT_ANY  +

UI night mode: not specified.

+
ACONFIGURATION_UI_MODE_NIGHT_NO  +

UI night mode: value that corresponds to notnight resource qualifier specified.

+
ACONFIGURATION_UI_MODE_NIGHT_YES  +

UI night mode: value that corresponds to night resource qualifier specified.

+
ACONFIGURATION_SCREEN_WIDTH_DP_ANY  +

Screen width DPI: not specified.

+
ACONFIGURATION_SCREEN_HEIGHT_DP_ANY  +

Screen height DPI: not specified.

+
ACONFIGURATION_SMALLEST_SCREEN_WIDTH_DP_ANY  +

Smallest screen width DPI: not specified.

+
ACONFIGURATION_LAYOUTDIR_ANY  +

Layout direction: not specified.

+
ACONFIGURATION_LAYOUTDIR_LTR  +

Layout direction: value that corresponds to ldltr resource qualifier specified.

+
ACONFIGURATION_LAYOUTDIR_RTL  +

Layout direction: value that corresponds to ldrtl resource qualifier specified.

+
ACONFIGURATION_MCC  +

Bit mask for mcc configuration.

+
ACONFIGURATION_MNC  +

Bit mask for mnc configuration.

+
ACONFIGURATION_LOCALE  +

Bit mask for locale configuration.

+
ACONFIGURATION_TOUCHSCREEN  +

Bit mask for touchscreen configuration.

+
ACONFIGURATION_KEYBOARD  +

Bit mask for keyboard configuration.

+
ACONFIGURATION_KEYBOARD_HIDDEN  +

Bit mask for keyboardHidden configuration.

+
ACONFIGURATION_NAVIGATION  +

Bit mask for navigation configuration.

+
ACONFIGURATION_ORIENTATION  +

Bit mask for orientation configuration.

+
ACONFIGURATION_DENSITY  +

Bit mask for density configuration.

+
ACONFIGURATION_SCREEN_SIZE  +

Bit mask for screen size configuration.

+
ACONFIGURATION_VERSION  +

Bit mask for platform version configuration.

+
ACONFIGURATION_SCREEN_LAYOUT  +

Bit mask for screen layout configuration.

+
ACONFIGURATION_UI_MODE  +

Bit mask for ui mode configuration.

+
ACONFIGURATION_SMALLEST_SCREEN_SIZE  +

Bit mask for smallest screen width configuration.

+
ACONFIGURATION_LAYOUTDIR  +

Bit mask for layout direction configuration.

+
ACONFIGURATION_MNC_ZERO  +

Constant used to to represent MNC (Mobile Network Code) zero. 0 cannot be used, since it is used to represent an undefined MNC.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_copy (AConfigurationdest,
AConfigurationsrc 
)
+
+

Copy the contents of 'src' to 'dest'.

+ +
+
+ +
+
+ + + + + + + + +
void AConfiguration_delete (AConfigurationconfig)
+
+

Free an AConfiguration that was previously created with AConfiguration_new().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AConfiguration_diff (AConfigurationconfig1,
AConfigurationconfig2 
)
+
+

Perform a diff between two configurations. Returns a bit mask of ACONFIGURATION_* constants, each bit set meaning that configuration element is different between them.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_fromAssetManager (AConfigurationout,
AAssetManageram 
)
+
+

Create and return a new AConfiguration based on the current configuration in use in the given AAssetManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_getCountry (AConfigurationconfig,
char * outCountry 
)
+
+

Return the current country code set in the configuration. The output will be filled with an array of two characters. They are not 0-terminated. If a country is not set, they will be 0.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getDensity (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_DENSITY_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getKeyboard (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_KEYBOARD_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getKeysHidden (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_KEYSHIDDEN_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_getLanguage (AConfigurationconfig,
char * outLanguage 
)
+
+

Return the current language code set in the configuration. The output will be filled with an array of two characters. They are not 0-terminated. If a language is not set, they will be 0.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getLayoutDirection (AConfigurationconfig)
+
+

Return the configuration's layout direction, or ACONFIGURATION_LAYOUTDIR_ANY if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getMcc (AConfigurationconfig)
+
+

Return the current MCC set in the configuration. 0 if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getMnc (AConfigurationconfig)
+
+

Return the current MNC set in the configuration. 0 if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getNavHidden (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_NAVHIDDEN_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getNavigation (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_NAVIGATION_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getOrientation (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_ORIENTATION_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getScreenHeightDp (AConfigurationconfig)
+
+

Return the current configuration screen height in dp units, or ACONFIGURATION_SCREEN_HEIGHT_DP_ANY if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getScreenLong (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_SCREENLONG_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getScreenSize (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_SCREENSIZE_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getScreenWidthDp (AConfigurationconfig)
+
+

Return the current configuration screen width in dp units, or ACONFIGURATION_SCREEN_WIDTH_DP_ANY if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getSdkVersion (AConfigurationconfig)
+
+

Return the current SDK (API) version set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getSmallestScreenWidthDp (AConfigurationconfig)
+
+

Return the configuration's smallest screen width in dp units, or ACONFIGURATION_SMALLEST_SCREEN_WIDTH_DP_ANY if not set.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getTouchscreen (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_TOUCHSCREEN_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getUiModeNight (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_UI_MODE_NIGHT_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AConfiguration_getUiModeType (AConfigurationconfig)
+
+

Return the current ACONFIGURATION_UI_MODE_TYPE_* set in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int32_t AConfiguration_isBetterThan (AConfigurationbase,
AConfigurationtest,
AConfigurationrequested 
)
+
+

Determine whether the configuration in 'test' is better than the existing configuration in 'base'. If 'requested' is non-NULL, this decision is based on the overall configuration given there. If it is NULL, this decision is simply based on which configuration is more specific. Returns non-0 if 'test' is better than 'base'.

+

This assumes you have already filtered the configurations with AConfiguration_match().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AConfiguration_match (AConfigurationbase,
AConfigurationrequested 
)
+
+

Determine whether 'base' is a valid configuration for use within the environment 'requested'. Returns 0 if there are any values in 'base' that conflict with 'requested'. Returns 1 if it does not conflict.

+ +
+
+ +
+
+ + + + + + + +
AConfiguration* AConfiguration_new ()
+
+

Create a new AConfiguration, initialized with no values set.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setCountry (AConfigurationconfig,
const char * country 
)
+
+

Set the current country code in the configuration, from the first two characters in the string.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setDensity (AConfigurationconfig,
int32_t density 
)
+
+

Set the current density in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setKeyboard (AConfigurationconfig,
int32_t keyboard 
)
+
+

Set the current keyboard in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setKeysHidden (AConfigurationconfig,
int32_t keysHidden 
)
+
+

Set the current keys hidden in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setLanguage (AConfigurationconfig,
const char * language 
)
+
+

Set the current language code in the configuration, from the first two characters in the string.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setLayoutDirection (AConfigurationconfig,
int32_t value 
)
+
+

Set the configuration's layout direction.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setMcc (AConfigurationconfig,
int32_t mcc 
)
+
+

Set the current MCC in the configuration. 0 to clear.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setMnc (AConfigurationconfig,
int32_t mnc 
)
+
+

Set the current MNC in the configuration. 0 to clear.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setNavHidden (AConfigurationconfig,
int32_t navHidden 
)
+
+

Set the current nav hidden in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setNavigation (AConfigurationconfig,
int32_t navigation 
)
+
+

Set the current navigation in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setOrientation (AConfigurationconfig,
int32_t orientation 
)
+
+

Set the current orientation in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setScreenHeightDp (AConfigurationconfig,
int32_t value 
)
+
+

Set the configuration's current screen width in dp units.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setScreenLong (AConfigurationconfig,
int32_t screenLong 
)
+
+

Set the current screen long in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setScreenSize (AConfigurationconfig,
int32_t screenSize 
)
+
+

Set the current screen size in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setScreenWidthDp (AConfigurationconfig,
int32_t value 
)
+
+

Set the configuration's current screen width in dp units.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setSdkVersion (AConfigurationconfig,
int32_t sdkVersion 
)
+
+

Set the current SDK version in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setSmallestScreenWidthDp (AConfigurationconfig,
int32_t value 
)
+
+

Set the configuration's smallest screen width in dp units.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setTouchscreen (AConfigurationconfig,
int32_t touchscreen 
)
+
+

Set the current touchscreen in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setUiModeNight (AConfigurationconfig,
int32_t uiModeNight 
)
+
+

Set the current UI mode night in the configuration.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void AConfiguration_setUiModeType (AConfigurationconfig,
int32_t uiModeType 
)
+
+

Set the current UI mode type in the configuration.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___input.jd b/docs/html-ndk/ndk/reference/group___input.jd new file mode 100644 index 0000000000000..42ff102997418 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___input.jd @@ -0,0 +1,3690 @@ +page.title=Input +page.customHeadTag= +@jd:body + + +
+ +
+
Input
+
+
+ + + + + + +

+Files

file  input.h
 
file  keycodes.h
 
+ + + +

+Macros

#define AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT   8
 
+ + + + + +

+Typedefs

typedef struct AInputEvent AInputEvent
 
typedef struct AInputQueue AInputQueue
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  { AKEY_STATE_UNKNOWN = -1, +AKEY_STATE_UP = 0, +AKEY_STATE_DOWN = 1, +AKEY_STATE_VIRTUAL = 2 + }
 
enum  {
+  AMETA_NONE = 0, +AMETA_ALT_ON = 0x02, +AMETA_ALT_LEFT_ON = 0x10, +AMETA_ALT_RIGHT_ON = 0x20, +
+  AMETA_SHIFT_ON = 0x01, +AMETA_SHIFT_LEFT_ON = 0x40, +AMETA_SHIFT_RIGHT_ON = 0x80, +AMETA_SYM_ON = 0x04, +
+  AMETA_FUNCTION_ON = 0x08, +AMETA_CTRL_ON = 0x1000, +AMETA_CTRL_LEFT_ON = 0x2000, +AMETA_CTRL_RIGHT_ON = 0x4000, +
+  AMETA_META_ON = 0x10000, +AMETA_META_LEFT_ON = 0x20000, +AMETA_META_RIGHT_ON = 0x40000, +AMETA_CAPS_LOCK_ON = 0x100000, +
+  AMETA_NUM_LOCK_ON = 0x200000, +AMETA_SCROLL_LOCK_ON = 0x400000 +
+ }
 
enum  { AINPUT_EVENT_TYPE_KEY = 1, +AINPUT_EVENT_TYPE_MOTION = 2 + }
 
enum  { AKEY_EVENT_ACTION_DOWN = 0, +AKEY_EVENT_ACTION_UP = 1, +AKEY_EVENT_ACTION_MULTIPLE = 2 + }
 
enum  {
+  AKEY_EVENT_FLAG_WOKE_HERE = 0x1, +AKEY_EVENT_FLAG_SOFT_KEYBOARD = 0x2, +AKEY_EVENT_FLAG_KEEP_TOUCH_MODE = 0x4, +AKEY_EVENT_FLAG_FROM_SYSTEM = 0x8, +
+  AKEY_EVENT_FLAG_EDITOR_ACTION = 0x10, +AKEY_EVENT_FLAG_CANCELED = 0x20, +AKEY_EVENT_FLAG_VIRTUAL_HARD_KEY = 0x40, +AKEY_EVENT_FLAG_LONG_PRESS = 0x80, +
+  AKEY_EVENT_FLAG_CANCELED_LONG_PRESS = 0x100, +AKEY_EVENT_FLAG_TRACKING = 0x200, +AKEY_EVENT_FLAG_FALLBACK = 0x400 +
+ }
 
enum  {
+  AMOTION_EVENT_ACTION_MASK = 0xff, +AMOTION_EVENT_ACTION_POINTER_INDEX_MASK = 0xff00, +AMOTION_EVENT_ACTION_DOWN = 0, +AMOTION_EVENT_ACTION_UP = 1, +
+  AMOTION_EVENT_ACTION_MOVE = 2, +AMOTION_EVENT_ACTION_CANCEL = 3, +AMOTION_EVENT_ACTION_OUTSIDE = 4, +AMOTION_EVENT_ACTION_POINTER_DOWN = 5, +
+  AMOTION_EVENT_ACTION_POINTER_UP = 6, +AMOTION_EVENT_ACTION_HOVER_MOVE = 7, +AMOTION_EVENT_ACTION_SCROLL = 8, +AMOTION_EVENT_ACTION_HOVER_ENTER = 9, +
+  AMOTION_EVENT_ACTION_HOVER_EXIT = 10 +
+ }
 
enum  { AMOTION_EVENT_FLAG_WINDOW_IS_OBSCURED = 0x1 + }
 
enum  {
+  AMOTION_EVENT_EDGE_FLAG_NONE = 0, +AMOTION_EVENT_EDGE_FLAG_TOP = 0x01, +AMOTION_EVENT_EDGE_FLAG_BOTTOM = 0x02, +AMOTION_EVENT_EDGE_FLAG_LEFT = 0x04, +
+  AMOTION_EVENT_EDGE_FLAG_RIGHT = 0x08 +
+ }
 
enum  {
+  AMOTION_EVENT_AXIS_X = 0, +AMOTION_EVENT_AXIS_Y = 1, +AMOTION_EVENT_AXIS_PRESSURE = 2, +AMOTION_EVENT_AXIS_SIZE = 3, +
+  AMOTION_EVENT_AXIS_TOUCH_MAJOR = 4, +AMOTION_EVENT_AXIS_TOUCH_MINOR = 5, +AMOTION_EVENT_AXIS_TOOL_MAJOR = 6, +AMOTION_EVENT_AXIS_TOOL_MINOR = 7, +
+  AMOTION_EVENT_AXIS_ORIENTATION = 8, +AMOTION_EVENT_AXIS_VSCROLL = 9, +AMOTION_EVENT_AXIS_HSCROLL = 10, +AMOTION_EVENT_AXIS_Z = 11, +
+  AMOTION_EVENT_AXIS_RX = 12, +AMOTION_EVENT_AXIS_RY = 13, +AMOTION_EVENT_AXIS_RZ = 14, +AMOTION_EVENT_AXIS_HAT_X = 15, +
+  AMOTION_EVENT_AXIS_HAT_Y = 16, +AMOTION_EVENT_AXIS_LTRIGGER = 17, +AMOTION_EVENT_AXIS_RTRIGGER = 18, +AMOTION_EVENT_AXIS_THROTTLE = 19, +
+  AMOTION_EVENT_AXIS_RUDDER = 20, +AMOTION_EVENT_AXIS_WHEEL = 21, +AMOTION_EVENT_AXIS_GAS = 22, +AMOTION_EVENT_AXIS_BRAKE = 23, +
+  AMOTION_EVENT_AXIS_DISTANCE = 24, +AMOTION_EVENT_AXIS_TILT = 25, +AMOTION_EVENT_AXIS_GENERIC_1 = 32, +AMOTION_EVENT_AXIS_GENERIC_2 = 33, +
+  AMOTION_EVENT_AXIS_GENERIC_3 = 34, +AMOTION_EVENT_AXIS_GENERIC_4 = 35, +AMOTION_EVENT_AXIS_GENERIC_5 = 36, +AMOTION_EVENT_AXIS_GENERIC_6 = 37, +
+  AMOTION_EVENT_AXIS_GENERIC_7 = 38, +AMOTION_EVENT_AXIS_GENERIC_8 = 39, +AMOTION_EVENT_AXIS_GENERIC_9 = 40, +AMOTION_EVENT_AXIS_GENERIC_10 = 41, +
+  AMOTION_EVENT_AXIS_GENERIC_11 = 42, +AMOTION_EVENT_AXIS_GENERIC_12 = 43, +AMOTION_EVENT_AXIS_GENERIC_13 = 44, +AMOTION_EVENT_AXIS_GENERIC_14 = 45, +
+  AMOTION_EVENT_AXIS_GENERIC_15 = 46, +AMOTION_EVENT_AXIS_GENERIC_16 = 47 +
+ }
 
enum  {
+  AMOTION_EVENT_BUTTON_PRIMARY = 1 << 0, +AMOTION_EVENT_BUTTON_SECONDARY = 1 << 1, +AMOTION_EVENT_BUTTON_TERTIARY = 1 << 2, +AMOTION_EVENT_BUTTON_BACK = 1 << 3, +
+  AMOTION_EVENT_BUTTON_FORWARD = 1 << 4 +
+ }
 
enum  {
+  AMOTION_EVENT_TOOL_TYPE_UNKNOWN = 0, +AMOTION_EVENT_TOOL_TYPE_FINGER = 1, +AMOTION_EVENT_TOOL_TYPE_STYLUS = 2, +AMOTION_EVENT_TOOL_TYPE_MOUSE = 3, +
+  AMOTION_EVENT_TOOL_TYPE_ERASER = 4 +
+ }
 
enum  {
+  AINPUT_SOURCE_CLASS_MASK = 0x000000ff, +AINPUT_SOURCE_CLASS_NONE = 0x00000000, +AINPUT_SOURCE_CLASS_BUTTON = 0x00000001, +AINPUT_SOURCE_CLASS_POINTER = 0x00000002, +
+  AINPUT_SOURCE_CLASS_NAVIGATION = 0x00000004, +AINPUT_SOURCE_CLASS_POSITION = 0x00000008, +AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 +
+ }
 
enum  {
+  AINPUT_SOURCE_UNKNOWN = 0x00000000, +AINPUT_SOURCE_KEYBOARD = 0x00000100 | AINPUT_SOURCE_CLASS_BUTTON, +AINPUT_SOURCE_DPAD = 0x00000200 | AINPUT_SOURCE_CLASS_BUTTON, +AINPUT_SOURCE_GAMEPAD = 0x00000400 | AINPUT_SOURCE_CLASS_BUTTON, +
+  AINPUT_SOURCE_TOUCHSCREEN = 0x00001000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_MOUSE = 0x00002000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_STYLUS = 0x00004000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_TRACKBALL = 0x00010000 | AINPUT_SOURCE_CLASS_NAVIGATION, +
+  AINPUT_SOURCE_TOUCHPAD = 0x00100000 | AINPUT_SOURCE_CLASS_POSITION, +AINPUT_SOURCE_TOUCH_NAVIGATION = 0x00200000 | AINPUT_SOURCE_CLASS_NONE, +AINPUT_SOURCE_JOYSTICK = 0x01000000 | AINPUT_SOURCE_CLASS_JOYSTICK, +AINPUT_SOURCE_ANY = 0xffffff00 +
+ }
 
enum  { AINPUT_KEYBOARD_TYPE_NONE = 0, +AINPUT_KEYBOARD_TYPE_NON_ALPHABETIC = 1, +AINPUT_KEYBOARD_TYPE_ALPHABETIC = 2 + }
 
enum  {
+  AINPUT_MOTION_RANGE_X = AMOTION_EVENT_AXIS_X, +AINPUT_MOTION_RANGE_Y = AMOTION_EVENT_AXIS_Y, +AINPUT_MOTION_RANGE_PRESSURE = AMOTION_EVENT_AXIS_PRESSURE, +AINPUT_MOTION_RANGE_SIZE = AMOTION_EVENT_AXIS_SIZE, +
+  AINPUT_MOTION_RANGE_TOUCH_MAJOR = AMOTION_EVENT_AXIS_TOUCH_MAJOR, +AINPUT_MOTION_RANGE_TOUCH_MINOR = AMOTION_EVENT_AXIS_TOUCH_MINOR, +AINPUT_MOTION_RANGE_TOOL_MAJOR = AMOTION_EVENT_AXIS_TOOL_MAJOR, +AINPUT_MOTION_RANGE_TOOL_MINOR = AMOTION_EVENT_AXIS_TOOL_MINOR, +
+  AINPUT_MOTION_RANGE_ORIENTATION = AMOTION_EVENT_AXIS_ORIENTATION +
+ }
 
enum  {
+  AKEYCODE_UNKNOWN = 0, +AKEYCODE_SOFT_LEFT = 1, +AKEYCODE_SOFT_RIGHT = 2, +AKEYCODE_HOME = 3, +
+  AKEYCODE_BACK = 4, +AKEYCODE_CALL = 5, +AKEYCODE_ENDCALL = 6, +AKEYCODE_0 = 7, +
+  AKEYCODE_1 = 8, +AKEYCODE_2 = 9, +AKEYCODE_3 = 10, +AKEYCODE_4 = 11, +
+  AKEYCODE_5 = 12, +AKEYCODE_6 = 13, +AKEYCODE_7 = 14, +AKEYCODE_8 = 15, +
+  AKEYCODE_9 = 16, +AKEYCODE_STAR = 17, +AKEYCODE_POUND = 18, +AKEYCODE_DPAD_UP = 19, +
+  AKEYCODE_DPAD_DOWN = 20, +AKEYCODE_DPAD_LEFT = 21, +AKEYCODE_DPAD_RIGHT = 22, +AKEYCODE_DPAD_CENTER = 23, +
+  AKEYCODE_VOLUME_UP = 24, +AKEYCODE_VOLUME_DOWN = 25, +AKEYCODE_POWER = 26, +AKEYCODE_CAMERA = 27, +
+  AKEYCODE_CLEAR = 28, +AKEYCODE_A = 29, +AKEYCODE_B = 30, +AKEYCODE_C = 31, +
+  AKEYCODE_D = 32, +AKEYCODE_E = 33, +AKEYCODE_F = 34, +AKEYCODE_G = 35, +
+  AKEYCODE_H = 36, +AKEYCODE_I = 37, +AKEYCODE_J = 38, +AKEYCODE_K = 39, +
+  AKEYCODE_L = 40, +AKEYCODE_M = 41, +AKEYCODE_N = 42, +AKEYCODE_O = 43, +
+  AKEYCODE_P = 44, +AKEYCODE_Q = 45, +AKEYCODE_R = 46, +AKEYCODE_S = 47, +
+  AKEYCODE_T = 48, +AKEYCODE_U = 49, +AKEYCODE_V = 50, +AKEYCODE_W = 51, +
+  AKEYCODE_X = 52, +AKEYCODE_Y = 53, +AKEYCODE_Z = 54, +AKEYCODE_COMMA = 55, +
+  AKEYCODE_PERIOD = 56, +AKEYCODE_ALT_LEFT = 57, +AKEYCODE_ALT_RIGHT = 58, +AKEYCODE_SHIFT_LEFT = 59, +
+  AKEYCODE_SHIFT_RIGHT = 60, +AKEYCODE_TAB = 61, +AKEYCODE_SPACE = 62, +AKEYCODE_SYM = 63, +
+  AKEYCODE_EXPLORER = 64, +AKEYCODE_ENVELOPE = 65, +AKEYCODE_ENTER = 66, +AKEYCODE_DEL = 67, +
+  AKEYCODE_GRAVE = 68, +AKEYCODE_MINUS = 69, +AKEYCODE_EQUALS = 70, +AKEYCODE_LEFT_BRACKET = 71, +
+  AKEYCODE_RIGHT_BRACKET = 72, +AKEYCODE_BACKSLASH = 73, +AKEYCODE_SEMICOLON = 74, +AKEYCODE_APOSTROPHE = 75, +
+  AKEYCODE_SLASH = 76, +AKEYCODE_AT = 77, +AKEYCODE_NUM = 78, +AKEYCODE_HEADSETHOOK = 79, +
+  AKEYCODE_FOCUS = 80, +AKEYCODE_PLUS = 81, +AKEYCODE_MENU = 82, +AKEYCODE_NOTIFICATION = 83, +
+  AKEYCODE_SEARCH = 84, +AKEYCODE_MEDIA_PLAY_PAUSE = 85, +AKEYCODE_MEDIA_STOP = 86, +AKEYCODE_MEDIA_NEXT = 87, +
+  AKEYCODE_MEDIA_PREVIOUS = 88, +AKEYCODE_MEDIA_REWIND = 89, +AKEYCODE_MEDIA_FAST_FORWARD = 90, +AKEYCODE_MUTE = 91, +
+  AKEYCODE_PAGE_UP = 92, +AKEYCODE_PAGE_DOWN = 93, +AKEYCODE_PICTSYMBOLS = 94, +AKEYCODE_SWITCH_CHARSET = 95, +
+  AKEYCODE_BUTTON_A = 96, +AKEYCODE_BUTTON_B = 97, +AKEYCODE_BUTTON_C = 98, +AKEYCODE_BUTTON_X = 99, +
+  AKEYCODE_BUTTON_Y = 100, +AKEYCODE_BUTTON_Z = 101, +AKEYCODE_BUTTON_L1 = 102, +AKEYCODE_BUTTON_R1 = 103, +
+  AKEYCODE_BUTTON_L2 = 104, +AKEYCODE_BUTTON_R2 = 105, +AKEYCODE_BUTTON_THUMBL = 106, +AKEYCODE_BUTTON_THUMBR = 107, +
+  AKEYCODE_BUTTON_START = 108, +AKEYCODE_BUTTON_SELECT = 109, +AKEYCODE_BUTTON_MODE = 110, +AKEYCODE_ESCAPE = 111, +
+  AKEYCODE_FORWARD_DEL = 112, +AKEYCODE_CTRL_LEFT = 113, +AKEYCODE_CTRL_RIGHT = 114, +AKEYCODE_CAPS_LOCK = 115, +
+  AKEYCODE_SCROLL_LOCK = 116, +AKEYCODE_META_LEFT = 117, +AKEYCODE_META_RIGHT = 118, +AKEYCODE_FUNCTION = 119, +
+  AKEYCODE_SYSRQ = 120, +AKEYCODE_BREAK = 121, +AKEYCODE_MOVE_HOME = 122, +AKEYCODE_MOVE_END = 123, +
+  AKEYCODE_INSERT = 124, +AKEYCODE_FORWARD = 125, +AKEYCODE_MEDIA_PLAY = 126, +AKEYCODE_MEDIA_PAUSE = 127, +
+  AKEYCODE_MEDIA_CLOSE = 128, +AKEYCODE_MEDIA_EJECT = 129, +AKEYCODE_MEDIA_RECORD = 130, +AKEYCODE_F1 = 131, +
+  AKEYCODE_F2 = 132, +AKEYCODE_F3 = 133, +AKEYCODE_F4 = 134, +AKEYCODE_F5 = 135, +
+  AKEYCODE_F6 = 136, +AKEYCODE_F7 = 137, +AKEYCODE_F8 = 138, +AKEYCODE_F9 = 139, +
+  AKEYCODE_F10 = 140, +AKEYCODE_F11 = 141, +AKEYCODE_F12 = 142, +AKEYCODE_NUM_LOCK = 143, +
+  AKEYCODE_NUMPAD_0 = 144, +AKEYCODE_NUMPAD_1 = 145, +AKEYCODE_NUMPAD_2 = 146, +AKEYCODE_NUMPAD_3 = 147, +
+  AKEYCODE_NUMPAD_4 = 148, +AKEYCODE_NUMPAD_5 = 149, +AKEYCODE_NUMPAD_6 = 150, +AKEYCODE_NUMPAD_7 = 151, +
+  AKEYCODE_NUMPAD_8 = 152, +AKEYCODE_NUMPAD_9 = 153, +AKEYCODE_NUMPAD_DIVIDE = 154, +AKEYCODE_NUMPAD_MULTIPLY = 155, +
+  AKEYCODE_NUMPAD_SUBTRACT = 156, +AKEYCODE_NUMPAD_ADD = 157, +AKEYCODE_NUMPAD_DOT = 158, +AKEYCODE_NUMPAD_COMMA = 159, +
+  AKEYCODE_NUMPAD_ENTER = 160, +AKEYCODE_NUMPAD_EQUALS = 161, +AKEYCODE_NUMPAD_LEFT_PAREN = 162, +AKEYCODE_NUMPAD_RIGHT_PAREN = 163, +
+  AKEYCODE_VOLUME_MUTE = 164, +AKEYCODE_INFO = 165, +AKEYCODE_CHANNEL_UP = 166, +AKEYCODE_CHANNEL_DOWN = 167, +
+  AKEYCODE_ZOOM_IN = 168, +AKEYCODE_ZOOM_OUT = 169, +AKEYCODE_TV = 170, +AKEYCODE_WINDOW = 171, +
+  AKEYCODE_GUIDE = 172, +AKEYCODE_DVR = 173, +AKEYCODE_BOOKMARK = 174, +AKEYCODE_CAPTIONS = 175, +
+  AKEYCODE_SETTINGS = 176, +AKEYCODE_TV_POWER = 177, +AKEYCODE_TV_INPUT = 178, +AKEYCODE_STB_POWER = 179, +
+  AKEYCODE_STB_INPUT = 180, +AKEYCODE_AVR_POWER = 181, +AKEYCODE_AVR_INPUT = 182, +AKEYCODE_PROG_RED = 183, +
+  AKEYCODE_PROG_GREEN = 184, +AKEYCODE_PROG_YELLOW = 185, +AKEYCODE_PROG_BLUE = 186, +AKEYCODE_APP_SWITCH = 187, +
+  AKEYCODE_BUTTON_1 = 188, +AKEYCODE_BUTTON_2 = 189, +AKEYCODE_BUTTON_3 = 190, +AKEYCODE_BUTTON_4 = 191, +
+  AKEYCODE_BUTTON_5 = 192, +AKEYCODE_BUTTON_6 = 193, +AKEYCODE_BUTTON_7 = 194, +AKEYCODE_BUTTON_8 = 195, +
+  AKEYCODE_BUTTON_9 = 196, +AKEYCODE_BUTTON_10 = 197, +AKEYCODE_BUTTON_11 = 198, +AKEYCODE_BUTTON_12 = 199, +
+  AKEYCODE_BUTTON_13 = 200, +AKEYCODE_BUTTON_14 = 201, +AKEYCODE_BUTTON_15 = 202, +AKEYCODE_BUTTON_16 = 203, +
+  AKEYCODE_LANGUAGE_SWITCH = 204, +AKEYCODE_MANNER_MODE = 205, +AKEYCODE_3D_MODE = 206, +AKEYCODE_CONTACTS = 207, +
+  AKEYCODE_CALENDAR = 208, +AKEYCODE_MUSIC = 209, +AKEYCODE_CALCULATOR = 210, +AKEYCODE_ZENKAKU_HANKAKU = 211, +
+  AKEYCODE_EISU = 212, +AKEYCODE_MUHENKAN = 213, +AKEYCODE_HENKAN = 214, +AKEYCODE_KATAKANA_HIRAGANA = 215, +
+  AKEYCODE_YEN = 216, +AKEYCODE_RO = 217, +AKEYCODE_KANA = 218, +AKEYCODE_ASSIST = 219, +
+  AKEYCODE_BRIGHTNESS_DOWN = 220, +AKEYCODE_BRIGHTNESS_UP = 221, +AKEYCODE_MEDIA_AUDIO_TRACK = 222, +AKEYCODE_SLEEP = 223, +
+  AKEYCODE_WAKEUP = 224, +AKEYCODE_PAIRING = 225, +AKEYCODE_MEDIA_TOP_MENU = 226, +AKEYCODE_11 = 227, +
+  AKEYCODE_12 = 228, +AKEYCODE_LAST_CHANNEL = 229, +AKEYCODE_TV_DATA_SERVICE = 230, +AKEYCODE_VOICE_ASSIST = 231, +
+  AKEYCODE_TV_RADIO_SERVICE = 232, +AKEYCODE_TV_TELETEXT = 233, +AKEYCODE_TV_NUMBER_ENTRY = 234, +AKEYCODE_TV_TERRESTRIAL_ANALOG = 235, +
+  AKEYCODE_TV_TERRESTRIAL_DIGITAL = 236, +AKEYCODE_TV_SATELLITE = 237, +AKEYCODE_TV_SATELLITE_BS = 238, +AKEYCODE_TV_SATELLITE_CS = 239, +
+  AKEYCODE_TV_SATELLITE_SERVICE = 240, +AKEYCODE_TV_NETWORK = 241, +AKEYCODE_TV_ANTENNA_CABLE = 242, +AKEYCODE_TV_INPUT_HDMI_1 = 243, +
+  AKEYCODE_TV_INPUT_HDMI_2 = 244, +AKEYCODE_TV_INPUT_HDMI_3 = 245, +AKEYCODE_TV_INPUT_HDMI_4 = 246, +AKEYCODE_TV_INPUT_COMPOSITE_1 = 247, +
+  AKEYCODE_TV_INPUT_COMPOSITE_2 = 248, +AKEYCODE_TV_INPUT_COMPONENT_1 = 249, +AKEYCODE_TV_INPUT_COMPONENT_2 = 250, +AKEYCODE_TV_INPUT_VGA_1 = 251, +
+  AKEYCODE_TV_AUDIO_DESCRIPTION = 252, +AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP = 253, +AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN = 254, +AKEYCODE_TV_ZOOM_MODE = 255, +
+  AKEYCODE_TV_CONTENTS_MENU = 256, +AKEYCODE_TV_MEDIA_CONTEXT_MENU = 257, +AKEYCODE_TV_TIMER_PROGRAMMING = 258, +AKEYCODE_HELP = 259 +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

int32_t AInputEvent_getType (const AInputEvent *event)
 
int32_t AInputEvent_getDeviceId (const AInputEvent *event)
 
int32_t AInputEvent_getSource (const AInputEvent *event)
 
int32_t AKeyEvent_getAction (const AInputEvent *key_event)
 
int32_t AKeyEvent_getFlags (const AInputEvent *key_event)
 
int32_t AKeyEvent_getKeyCode (const AInputEvent *key_event)
 
int32_t AKeyEvent_getScanCode (const AInputEvent *key_event)
 
int32_t AKeyEvent_getMetaState (const AInputEvent *key_event)
 
int32_t AKeyEvent_getRepeatCount (const AInputEvent *key_event)
 
int64_t AKeyEvent_getDownTime (const AInputEvent *key_event)
 
int64_t AKeyEvent_getEventTime (const AInputEvent *key_event)
 
int32_t AMotionEvent_getAction (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getFlags (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getMetaState (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getButtonState (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getEdgeFlags (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getDownTime (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getEventTime (const AInputEvent *motion_event)
 
float AMotionEvent_getXOffset (const AInputEvent *motion_event)
 
float AMotionEvent_getYOffset (const AInputEvent *motion_event)
 
float AMotionEvent_getXPrecision (const AInputEvent *motion_event)
 
float AMotionEvent_getYPrecision (const AInputEvent *motion_event)
 
size_t AMotionEvent_getPointerCount (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getPointerId (const AInputEvent *motion_event, size_t pointer_index)
 
int32_t AMotionEvent_getToolType (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getRawX (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getRawY (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getX (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getY (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getPressure (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getSize (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getTouchMajor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getTouchMinor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getToolMajor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getToolMinor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getOrientation (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getAxisValue (const AInputEvent *motion_event, int32_t axis, size_t pointer_index)
 
size_t AMotionEvent_getHistorySize (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getHistoricalEventTime (const AInputEvent *motion_event, size_t history_index)
 
float AMotionEvent_getHistoricalRawX (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalRawY (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalX (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalY (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalPressure (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalSize (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalTouchMajor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalTouchMinor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalToolMajor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalToolMinor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalOrientation (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalAxisValue (const AInputEvent *motion_event, int32_t axis, size_t pointer_index, size_t history_index)
 
void AInputQueue_attachLooper (AInputQueue *queue, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data)
 
void AInputQueue_detachLooper (AInputQueue *queue)
 
int32_t AInputQueue_hasEvents (AInputQueue *queue)
 
int32_t AInputQueue_getEvent (AInputQueue *queue, AInputEvent **outEvent)
 
int32_t AInputQueue_preDispatchEvent (AInputQueue *queue, AInputEvent *event)
 
void AInputQueue_finishEvent (AInputQueue *queue, AInputEvent *event, int handled)
 
+

Detailed Description

+

Macro Definition Documentation

+ +
+
+ + + + +
#define AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT   8
+
+

Bit shift for the action bits holding the pointer index as defined by AMOTION_EVENT_ACTION_POINTER_INDEX_MASK.

+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct AInputEvent AInputEvent
+
+

Input events.

+

Input events are opaque structures. Use the provided accessors functions to read their properties.

+ +
+
+ +
+
+ + + + +
typedef struct AInputQueue AInputQueue
+
+

Input queue

+

An input queue is the facility through which you retrieve input events.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Motion event edge touch flags.

+ + + + + + +
Enumerator
AMOTION_EVENT_EDGE_FLAG_NONE  +

No edges intersected.

+
AMOTION_EVENT_EDGE_FLAG_TOP  +

Flag indicating the motion event intersected the top edge of the screen.

+
AMOTION_EVENT_EDGE_FLAG_BOTTOM  +

Flag indicating the motion event intersected the bottom edge of the screen.

+
AMOTION_EVENT_EDGE_FLAG_LEFT  +

Flag indicating the motion event intersected the left edge of the screen.

+
AMOTION_EVENT_EDGE_FLAG_RIGHT  +

Flag indicating the motion event intersected the right edge of the screen.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Constants that identify each individual axis of a motion event.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
AMOTION_EVENT_AXIS_X  +

Axis constant: X axis of a motion event.

+
    +
  • For a touch screen, reports the absolute X screen position of the center of the touch contact area. The units are display pixels.
  • +
  • For a touch pad, reports the absolute X surface position of the center of the touch contact area. The units are device-dependent.
  • +
  • For a mouse, reports the absolute X screen position of the mouse pointer. The units are display pixels.
  • +
  • For a trackball, reports the relative horizontal displacement of the trackball. The value is normalized to a range from -1.0 (left) to 1.0 (right).
  • +
  • For a joystick, reports the absolute X position of the joystick. The value is normalized to a range from -1.0 (left) to 1.0 (right).
  • +
+
AMOTION_EVENT_AXIS_Y  +

Axis constant: Y axis of a motion event.

+
    +
  • For a touch screen, reports the absolute Y screen position of the center of the touch contact area. The units are display pixels.
  • +
  • For a touch pad, reports the absolute Y surface position of the center of the touch contact area. The units are device-dependent.
  • +
  • For a mouse, reports the absolute Y screen position of the mouse pointer. The units are display pixels.
  • +
  • For a trackball, reports the relative vertical displacement of the trackball. The value is normalized to a range from -1.0 (up) to 1.0 (down).
  • +
  • For a joystick, reports the absolute Y position of the joystick. The value is normalized to a range from -1.0 (up or far) to 1.0 (down or near).
  • +
+
AMOTION_EVENT_AXIS_PRESSURE  +

Axis constant: Pressure axis of a motion event.

+
    +
  • For a touch screen or touch pad, reports the approximate pressure applied to the surface by a finger or other tool. The value is normalized to a range from 0 (no pressure at all) to 1 (normal pressure), although values higher than 1 may be generated depending on the calibration of the input device.
  • +
  • For a trackball, the value is set to 1 if the trackball button is pressed or 0 otherwise.
  • +
  • For a mouse, the value is set to 1 if the primary mouse button is pressed or 0 otherwise.
  • +
+
AMOTION_EVENT_AXIS_SIZE  +

Axis constant: Size axis of a motion event.

+
    +
  • For a touch screen or touch pad, reports the approximate size of the contact area in relation to the maximum detectable size for the device. The value is normalized to a range from 0 (smallest detectable size) to 1 (largest detectable size), although it is not a linear scale. This value is of limited use. To obtain calibrated size information, see AMOTION_EVENT_AXIS_TOUCH_MAJOR or AMOTION_EVENT_AXIS_TOOL_MAJOR.
  • +
+
AMOTION_EVENT_AXIS_TOUCH_MAJOR  +

Axis constant: TouchMajor axis of a motion event.

+
    +
  • For a touch screen, reports the length of the major axis of an ellipse that represents the touch area at the point of contact. The units are display pixels.
  • +
  • For a touch pad, reports the length of the major axis of an ellipse that represents the touch area at the point of contact. The units are device-dependent.
  • +
+
AMOTION_EVENT_AXIS_TOUCH_MINOR  +

Axis constant: TouchMinor axis of a motion event.

+
    +
  • For a touch screen, reports the length of the minor axis of an ellipse that represents the touch area at the point of contact. The units are display pixels.
  • +
  • For a touch pad, reports the length of the minor axis of an ellipse that represents the touch area at the point of contact. The units are device-dependent.
  • +
+

When the touch is circular, the major and minor axis lengths will be equal to one another.

+
AMOTION_EVENT_AXIS_TOOL_MAJOR  +

Axis constant: ToolMajor axis of a motion event.

+
    +
  • For a touch screen, reports the length of the major axis of an ellipse that represents the size of the approaching finger or tool used to make contact.
  • +
  • For a touch pad, reports the length of the major axis of an ellipse that represents the size of the approaching finger or tool used to make contact. The units are device-dependent.
  • +
+

When the touch is circular, the major and minor axis lengths will be equal to one another.

+

The tool size may be larger than the touch size since the tool may not be fully in contact with the touch sensor.

+
AMOTION_EVENT_AXIS_TOOL_MINOR  +

Axis constant: ToolMinor axis of a motion event.

+
    +
  • For a touch screen, reports the length of the minor axis of an ellipse that represents the size of the approaching finger or tool used to make contact.
  • +
  • For a touch pad, reports the length of the minor axis of an ellipse that represents the size of the approaching finger or tool used to make contact. The units are device-dependent.
  • +
+

When the touch is circular, the major and minor axis lengths will be equal to one another.

+

The tool size may be larger than the touch size since the tool may not be fully in contact with the touch sensor.

+
AMOTION_EVENT_AXIS_ORIENTATION  +

Axis constant: Orientation axis of a motion event.

+
    +
  • For a touch screen or touch pad, reports the orientation of the finger or tool in radians relative to the vertical plane of the device. An angle of 0 radians indicates that the major axis of contact is oriented upwards, is perfectly circular or is of unknown orientation. A positive angle indicates that the major axis of contact is oriented to the right. A negative angle indicates that the major axis of contact is oriented to the left. The full range is from -PI/2 radians (finger pointing fully left) to PI/2 radians (finger pointing fully right).
  • +
  • For a stylus, the orientation indicates the direction in which the stylus is pointing in relation to the vertical axis of the current orientation of the screen. The range is from -PI radians to PI radians, where 0 is pointing up, -PI/2 radians is pointing left, -PI or PI radians is pointing down, and PI/2 radians is pointing right. See also AMOTION_EVENT_AXIS_TILT.
  • +
+
AMOTION_EVENT_AXIS_VSCROLL  +

Axis constant: Vertical Scroll axis of a motion event.

+
    +
  • For a mouse, reports the relative movement of the vertical scroll wheel. The value is normalized to a range from -1.0 (down) to 1.0 (up).
  • +
+

This axis should be used to scroll views vertically.

+
AMOTION_EVENT_AXIS_HSCROLL  +

Axis constant: Horizontal Scroll axis of a motion event.

+
    +
  • For a mouse, reports the relative movement of the horizontal scroll wheel. The value is normalized to a range from -1.0 (left) to 1.0 (right).
  • +
+

This axis should be used to scroll views horizontally.

+
AMOTION_EVENT_AXIS_Z  +

Axis constant: Z axis of a motion event.

+
    +
  • For a joystick, reports the absolute Z position of the joystick. The value is normalized to a range from -1.0 (high) to 1.0 (low). On game pads with two analog joysticks, this axis is often reinterpreted to report the absolute X position of the second joystick instead.
  • +
+
AMOTION_EVENT_AXIS_RX  +

Axis constant: X Rotation axis of a motion event.

+
    +
  • For a joystick, reports the absolute rotation angle about the X axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise).
  • +
+
AMOTION_EVENT_AXIS_RY  +

Axis constant: Y Rotation axis of a motion event.

+
    +
  • For a joystick, reports the absolute rotation angle about the Y axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise).
  • +
+
AMOTION_EVENT_AXIS_RZ  +

Axis constant: Z Rotation axis of a motion event.

+
    +
  • For a joystick, reports the absolute rotation angle about the Z axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise). On game pads with two analog joysticks, this axis is often reinterpreted to report the absolute Y position of the second joystick instead.
  • +
+
AMOTION_EVENT_AXIS_HAT_X  +

Axis constant: Hat X axis of a motion event.

+
    +
  • For a joystick, reports the absolute X position of the directional hat control. The value is normalized to a range from -1.0 (left) to 1.0 (right).
  • +
+
AMOTION_EVENT_AXIS_HAT_Y  +

Axis constant: Hat Y axis of a motion event.

+
    +
  • For a joystick, reports the absolute Y position of the directional hat control. The value is normalized to a range from -1.0 (up) to 1.0 (down).
  • +
+
AMOTION_EVENT_AXIS_LTRIGGER  +

Axis constant: Left Trigger axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the left trigger control. The value is normalized to a range from 0.0 (released) to 1.0 (fully pressed).
  • +
+
AMOTION_EVENT_AXIS_RTRIGGER  +

Axis constant: Right Trigger axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the right trigger control. The value is normalized to a range from 0.0 (released) to 1.0 (fully pressed).
  • +
+
AMOTION_EVENT_AXIS_THROTTLE  +

Axis constant: Throttle axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the throttle control. The value is normalized to a range from 0.0 (fully open) to 1.0 (fully closed).
  • +
+
AMOTION_EVENT_AXIS_RUDDER  +

Axis constant: Rudder axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the rudder control. The value is normalized to a range from -1.0 (turn left) to 1.0 (turn right).
  • +
+
AMOTION_EVENT_AXIS_WHEEL  +

Axis constant: Wheel axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the steering wheel control. The value is normalized to a range from -1.0 (turn left) to 1.0 (turn right).
  • +
+
AMOTION_EVENT_AXIS_GAS  +

Axis constant: Gas axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the gas (accelerator) control. The value is normalized to a range from 0.0 (no acceleration) to 1.0 (maximum acceleration).
  • +
+
AMOTION_EVENT_AXIS_BRAKE  +

Axis constant: Brake axis of a motion event.

+
    +
  • For a joystick, reports the absolute position of the brake control. The value is normalized to a range from 0.0 (no braking) to 1.0 (maximum braking).
  • +
+
AMOTION_EVENT_AXIS_DISTANCE  +

Axis constant: Distance axis of a motion event.

+
    +
  • For a stylus, reports the distance of the stylus from the screen. A value of 0.0 indicates direct contact and larger values indicate increasing distance from the surface.
  • +
+
AMOTION_EVENT_AXIS_TILT  +

Axis constant: Tilt axis of a motion event.

+
    +
  • For a stylus, reports the tilt angle of the stylus in radians where 0 radians indicates that the stylus is being held perpendicular to the surface, and PI/2 radians indicates that the stylus is being held flat against the surface.
  • +
+
AMOTION_EVENT_AXIS_GENERIC_1  +

Axis constant: Generic 1 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_2  +

Axis constant: Generic 2 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_3  +

Axis constant: Generic 3 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_4  +

Axis constant: Generic 4 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_5  +

Axis constant: Generic 5 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_6  +

Axis constant: Generic 6 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_7  +

Axis constant: Generic 7 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_8  +

Axis constant: Generic 8 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_9  +

Axis constant: Generic 9 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_10  +

Axis constant: Generic 10 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_11  +

Axis constant: Generic 11 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_12  +

Axis constant: Generic 12 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_13  +

Axis constant: Generic 13 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_14  +

Axis constant: Generic 14 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_15  +

Axis constant: Generic 15 axis of a motion event. The interpretation of a generic axis is device-specific.

+
AMOTION_EVENT_AXIS_GENERIC_16  +

Axis constant: Generic 16 axis of a motion event. The interpretation of a generic axis is device-specific.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Constants that identify buttons that are associated with motion events. Refer to the documentation on the MotionEvent class for descriptions of each button.

+ + + + + + +
Enumerator
AMOTION_EVENT_BUTTON_PRIMARY  +

primary

+
AMOTION_EVENT_BUTTON_SECONDARY  +

secondary

+
AMOTION_EVENT_BUTTON_TERTIARY  +

tertiary

+
AMOTION_EVENT_BUTTON_BACK  +

back

+
AMOTION_EVENT_BUTTON_FORWARD  +

forward

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Constants that identify tool types. Refer to the documentation on the MotionEvent class for descriptions of each tool type.

+ + + + + + +
Enumerator
AMOTION_EVENT_TOOL_TYPE_UNKNOWN  +

unknown

+
AMOTION_EVENT_TOOL_TYPE_FINGER  +

finger

+
AMOTION_EVENT_TOOL_TYPE_STYLUS  +

stylus

+
AMOTION_EVENT_TOOL_TYPE_MOUSE  +

mouse

+
AMOTION_EVENT_TOOL_TYPE_ERASER  +

eraser

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Input source masks.

+

Refer to the documentation on android.view.InputDevice for more details about input sources and their correct interpretation.

+ + + + + + + + +
Enumerator
AINPUT_SOURCE_CLASS_MASK  +

mask

+
AINPUT_SOURCE_CLASS_NONE  +

none

+
AINPUT_SOURCE_CLASS_BUTTON  +

button

+
AINPUT_SOURCE_CLASS_POINTER  +

pointer

+
AINPUT_SOURCE_CLASS_NAVIGATION  +

navigation

+
AINPUT_SOURCE_CLASS_POSITION  +

position

+
AINPUT_SOURCE_CLASS_JOYSTICK  +

joystick

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Input sources.

+ + + + + + + + + + + + + +
Enumerator
AINPUT_SOURCE_UNKNOWN  +

unknown

+
AINPUT_SOURCE_KEYBOARD  +

keyboard

+
AINPUT_SOURCE_DPAD  +

dpad

+
AINPUT_SOURCE_GAMEPAD  +

gamepad

+
AINPUT_SOURCE_TOUCHSCREEN  +

touchscreen

+
AINPUT_SOURCE_MOUSE  +

mouse

+
AINPUT_SOURCE_STYLUS  +

stylus

+
AINPUT_SOURCE_TRACKBALL  +

trackball

+
AINPUT_SOURCE_TOUCHPAD  +

touchpad

+
AINPUT_SOURCE_TOUCH_NAVIGATION  +

navigation

+
AINPUT_SOURCE_JOYSTICK  +

joystick

+
AINPUT_SOURCE_ANY  +

any

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Keyboard types.

+

Refer to the documentation on android.view.InputDevice for more details.

+ + + + +
Enumerator
AINPUT_KEYBOARD_TYPE_NONE  +

none

+
AINPUT_KEYBOARD_TYPE_NON_ALPHABETIC  +

non alphabetic

+
AINPUT_KEYBOARD_TYPE_ALPHABETIC  +

alphabetic

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Constants used to retrieve information about the range of motion for a particular coordinate of a motion event.

+

Refer to the documentation on android.view.InputDevice for more details about input sources and their correct interpretation.

+
Deprecated:
These constants are deprecated. Use AMOTION_EVENT_AXIS_* constants instead.
+ + + + + + + + + + +
Enumerator
AINPUT_MOTION_RANGE_X  +

x

+
AINPUT_MOTION_RANGE_Y  +

y

+
AINPUT_MOTION_RANGE_PRESSURE  +

pressure

+
AINPUT_MOTION_RANGE_SIZE  +

size

+
AINPUT_MOTION_RANGE_TOUCH_MAJOR  +

touch major

+
AINPUT_MOTION_RANGE_TOUCH_MINOR  +

touch minor

+
AINPUT_MOTION_RANGE_TOOL_MAJOR  +

tool major

+
AINPUT_MOTION_RANGE_TOOL_MINOR  +

tool minor

+
AINPUT_MOTION_RANGE_ORIENTATION  +

orientation

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Key codes.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
AKEYCODE_UNKNOWN  +

Unknown key code.

+
AKEYCODE_SOFT_LEFT  +

Soft Left key. Usually situated below the display on phones and used as a multi-function feature key for selecting a software defined function shown on the bottom left of the display.

+
AKEYCODE_SOFT_RIGHT  +

Soft Right key. Usually situated below the display on phones and used as a multi-function feature key for selecting a software defined function shown on the bottom right of the display.

+
AKEYCODE_HOME  +

Home key. This key is handled by the framework and is never delivered to applications.

+
AKEYCODE_BACK  +

Back key.

+
AKEYCODE_CALL  +

Call key.

+
AKEYCODE_ENDCALL  +

End Call key.

+
AKEYCODE_0  +

'0' key.

+
AKEYCODE_1  +

'1' key.

+
AKEYCODE_2  +

'2' key.

+
AKEYCODE_3  +

'3' key.

+
AKEYCODE_4  +

'4' key.

+
AKEYCODE_5  +

'5' key.

+
AKEYCODE_6  +

'6' key.

+
AKEYCODE_7  +

'7' key.

+
AKEYCODE_8  +

'8' key.

+
AKEYCODE_9  +

'9' key.

+
AKEYCODE_STAR  +

'*' key.

+
AKEYCODE_POUND  +

'#' key.

+
AKEYCODE_DPAD_UP  +

Directional Pad Up key. May also be synthesized from trackball motions.

+
AKEYCODE_DPAD_DOWN  +

Directional Pad Down key. May also be synthesized from trackball motions.

+
AKEYCODE_DPAD_LEFT  +

Directional Pad Left key. May also be synthesized from trackball motions.

+
AKEYCODE_DPAD_RIGHT  +

Directional Pad Right key. May also be synthesized from trackball motions.

+
AKEYCODE_DPAD_CENTER  +

Directional Pad Center key. May also be synthesized from trackball motions.

+
AKEYCODE_VOLUME_UP  +

Volume Up key. Adjusts the speaker volume up.

+
AKEYCODE_VOLUME_DOWN  +

Volume Down key. Adjusts the speaker volume down.

+
AKEYCODE_POWER  +

Power key.

+
AKEYCODE_CAMERA  +

Camera key. Used to launch a camera application or take pictures.

+
AKEYCODE_CLEAR  +

Clear key.

+
AKEYCODE_A  +

'A' key.

+
AKEYCODE_B  +

'B' key.

+
AKEYCODE_C  +

'C' key.

+
AKEYCODE_D  +

'D' key.

+
AKEYCODE_E  +

'E' key.

+
AKEYCODE_F  +

'F' key.

+
AKEYCODE_G  +

'G' key.

+
AKEYCODE_H  +

'H' key.

+
AKEYCODE_I  +

'I' key.

+
AKEYCODE_J  +

'J' key.

+
AKEYCODE_K  +

'K' key.

+
AKEYCODE_L  +

'L' key.

+
AKEYCODE_M  +

'M' key.

+
AKEYCODE_N  +

'N' key.

+
AKEYCODE_O  +

'O' key.

+
AKEYCODE_P  +

'P' key.

+
AKEYCODE_Q  +

'Q' key.

+
AKEYCODE_R  +

'R' key.

+
AKEYCODE_S  +

'S' key.

+
AKEYCODE_T  +

'T' key.

+
AKEYCODE_U  +

'U' key.

+
AKEYCODE_V  +

'V' key.

+
AKEYCODE_W  +

'W' key.

+
AKEYCODE_X  +

'X' key.

+
AKEYCODE_Y  +

'Y' key.

+
AKEYCODE_Z  +

'Z' key.

+
AKEYCODE_COMMA  +

',' key.

+
AKEYCODE_PERIOD  +

'.' key.

+
AKEYCODE_ALT_LEFT  +

Left Alt modifier key.

+
AKEYCODE_ALT_RIGHT  +

Right Alt modifier key.

+
AKEYCODE_SHIFT_LEFT  +

Left Shift modifier key.

+
AKEYCODE_SHIFT_RIGHT  +

Right Shift modifier key.

+
AKEYCODE_TAB  +

Tab key.

+
AKEYCODE_SPACE  +

Space key.

+
AKEYCODE_SYM  +

Symbol modifier key. Used to enter alternate symbols.

+
AKEYCODE_EXPLORER  +

Explorer special function key. Used to launch a browser application.

+
AKEYCODE_ENVELOPE  +

Envelope special function key. Used to launch a mail application.

+
AKEYCODE_ENTER  +

Enter key.

+
AKEYCODE_DEL  +

Backspace key. Deletes characters before the insertion point, unlike AKEYCODE_FORWARD_DEL.

+
AKEYCODE_GRAVE  +

'`' (backtick) key.

+
AKEYCODE_MINUS  +

'-'.

+
AKEYCODE_EQUALS  +

'=' key.

+
AKEYCODE_LEFT_BRACKET  +

'[' key.

+
AKEYCODE_RIGHT_BRACKET  +

']' key.

+
AKEYCODE_BACKSLASH  +

'\' key.

+
AKEYCODE_SEMICOLON  +

';' key.

+
AKEYCODE_APOSTROPHE  +

''' (apostrophe) key.

+
AKEYCODE_SLASH  +

'/' key.

+
AKEYCODE_AT  +

'@' key.

+
AKEYCODE_NUM  +

Number modifier key. Used to enter numeric symbols. This key is not AKEYCODE_NUM_LOCK; it is more like AKEYCODE_ALT_LEFT.

+
AKEYCODE_HEADSETHOOK  +

Headset Hook key. Used to hang up calls and stop media.

+
AKEYCODE_FOCUS  +

Camera Focus key. Used to focus the camera.

+
AKEYCODE_PLUS  +

'+' key.

+
AKEYCODE_MENU  +

Menu key.

+
AKEYCODE_NOTIFICATION  +

Notification key.

+
AKEYCODE_SEARCH  +

Search key.

+
AKEYCODE_MEDIA_PLAY_PAUSE  +

Play/Pause media key.

+
AKEYCODE_MEDIA_STOP  +

Stop media key.

+
AKEYCODE_MEDIA_NEXT  +

Play Next media key.

+
AKEYCODE_MEDIA_PREVIOUS  +

Play Previous media key.

+
AKEYCODE_MEDIA_REWIND  +

Rewind media key.

+
AKEYCODE_MEDIA_FAST_FORWARD  +

Fast Forward media key.

+
AKEYCODE_MUTE  +

Mute key. Mutes the microphone, unlike AKEYCODE_VOLUME_MUTE.

+
AKEYCODE_PAGE_UP  +

Page Up key.

+
AKEYCODE_PAGE_DOWN  +

Page Down key.

+
AKEYCODE_PICTSYMBOLS  +

Picture Symbols modifier key. Used to switch symbol sets (Emoji, Kao-moji).

+
AKEYCODE_SWITCH_CHARSET  +

Switch Charset modifier key. Used to switch character sets (Kanji, Katakana).

+
AKEYCODE_BUTTON_A  +

A Button key. On a game controller, the A button should be either the button labeled A or the first button on the bottom row of controller buttons.

+
AKEYCODE_BUTTON_B  +

B Button key. On a game controller, the B button should be either the button labeled B or the second button on the bottom row of controller buttons.

+
AKEYCODE_BUTTON_C  +

C Button key. On a game controller, the C button should be either the button labeled C or the third button on the bottom row of controller buttons.

+
AKEYCODE_BUTTON_X  +

X Button key. On a game controller, the X button should be either the button labeled X or the first button on the upper row of controller buttons.

+
AKEYCODE_BUTTON_Y  +

Y Button key. On a game controller, the Y button should be either the button labeled Y or the second button on the upper row of controller buttons.

+
AKEYCODE_BUTTON_Z  +

Z Button key. On a game controller, the Z button should be either the button labeled Z or the third button on the upper row of controller buttons.

+
AKEYCODE_BUTTON_L1  +

L1 Button key. On a game controller, the L1 button should be either the button labeled L1 (or L) or the top left trigger button.

+
AKEYCODE_BUTTON_R1  +

R1 Button key. On a game controller, the R1 button should be either the button labeled R1 (or R) or the top right trigger button.

+
AKEYCODE_BUTTON_L2  +

L2 Button key. On a game controller, the L2 button should be either the button labeled L2 or the bottom left trigger button.

+
AKEYCODE_BUTTON_R2  +

R2 Button key. On a game controller, the R2 button should be either the button labeled R2 or the bottom right trigger button.

+
AKEYCODE_BUTTON_THUMBL  +

Left Thumb Button key. On a game controller, the left thumb button indicates that the left (or only) joystick is pressed.

+
AKEYCODE_BUTTON_THUMBR  +

Right Thumb Button key. On a game controller, the right thumb button indicates that the right joystick is pressed.

+
AKEYCODE_BUTTON_START  +

Start Button key. On a game controller, the button labeled Start.

+
AKEYCODE_BUTTON_SELECT  +

Select Button key. On a game controller, the button labeled Select.

+
AKEYCODE_BUTTON_MODE  +

Mode Button key. On a game controller, the button labeled Mode.

+
AKEYCODE_ESCAPE  +

Escape key.

+
AKEYCODE_FORWARD_DEL  +

Forward Delete key. Deletes characters ahead of the insertion point, unlike AKEYCODE_DEL.

+
AKEYCODE_CTRL_LEFT  +

Left Control modifier key.

+
AKEYCODE_CTRL_RIGHT  +

Right Control modifier key.

+
AKEYCODE_CAPS_LOCK  +

Caps Lock key.

+
AKEYCODE_SCROLL_LOCK  +

Scroll Lock key.

+
AKEYCODE_META_LEFT  +

Left Meta modifier key.

+
AKEYCODE_META_RIGHT  +

Right Meta modifier key.

+
AKEYCODE_FUNCTION  +

Function modifier key.

+
AKEYCODE_SYSRQ  +

System Request / Print Screen key.

+
AKEYCODE_BREAK  +

Break / Pause key.

+
AKEYCODE_MOVE_HOME  +

Home Movement key. Used for scrolling or moving the cursor around to the start of a line or to the top of a list.

+
AKEYCODE_MOVE_END  +

End Movement key. Used for scrolling or moving the cursor around to the end of a line or to the bottom of a list.

+
AKEYCODE_INSERT  +

Insert key. Toggles insert / overwrite edit mode.

+
AKEYCODE_FORWARD  +

Forward key. Navigates forward in the history stack. Complement of AKEYCODE_BACK.

+
AKEYCODE_MEDIA_PLAY  +

Play media key.

+
AKEYCODE_MEDIA_PAUSE  +

Pause media key.

+
AKEYCODE_MEDIA_CLOSE  +

Close media key. May be used to close a CD tray, for example.

+
AKEYCODE_MEDIA_EJECT  +

Eject media key. May be used to eject a CD tray, for example.

+
AKEYCODE_MEDIA_RECORD  +

Record media key.

+
AKEYCODE_F1  +

F1 key.

+
AKEYCODE_F2  +

F2 key.

+
AKEYCODE_F3  +

F3 key.

+
AKEYCODE_F4  +

F4 key.

+
AKEYCODE_F5  +

F5 key.

+
AKEYCODE_F6  +

F6 key.

+
AKEYCODE_F7  +

F7 key.

+
AKEYCODE_F8  +

F8 key.

+
AKEYCODE_F9  +

F9 key.

+
AKEYCODE_F10  +

F10 key.

+
AKEYCODE_F11  +

F11 key.

+
AKEYCODE_F12  +

F12 key.

+
AKEYCODE_NUM_LOCK  +

Num Lock key. This is the Num Lock key; it is different from AKEYCODE_NUM. This key alters the behavior of other keys on the numeric keypad.

+
AKEYCODE_NUMPAD_0  +

Numeric keypad '0' key.

+
AKEYCODE_NUMPAD_1  +

Numeric keypad '1' key.

+
AKEYCODE_NUMPAD_2  +

Numeric keypad '2' key.

+
AKEYCODE_NUMPAD_3  +

Numeric keypad '3' key.

+
AKEYCODE_NUMPAD_4  +

Numeric keypad '4' key.

+
AKEYCODE_NUMPAD_5  +

Numeric keypad '5' key.

+
AKEYCODE_NUMPAD_6  +

Numeric keypad '6' key.

+
AKEYCODE_NUMPAD_7  +

Numeric keypad '7' key.

+
AKEYCODE_NUMPAD_8  +

Numeric keypad '8' key.

+
AKEYCODE_NUMPAD_9  +

Numeric keypad '9' key.

+
AKEYCODE_NUMPAD_DIVIDE  +

Numeric keypad '/' key (for division).

+
AKEYCODE_NUMPAD_MULTIPLY  +

Numeric keypad '*' key (for multiplication).

+
AKEYCODE_NUMPAD_SUBTRACT  +

Numeric keypad '-' key (for subtraction).

+
AKEYCODE_NUMPAD_ADD  +

Numeric keypad '+' key (for addition).

+
AKEYCODE_NUMPAD_DOT  +

Numeric keypad '.' key (for decimals or digit grouping).

+
AKEYCODE_NUMPAD_COMMA  +

Numeric keypad ',' key (for decimals or digit grouping).

+
AKEYCODE_NUMPAD_ENTER  +

Numeric keypad Enter key.

+
AKEYCODE_NUMPAD_EQUALS  +

Numeric keypad '=' key.

+
AKEYCODE_NUMPAD_LEFT_PAREN  +

Numeric keypad '(' key.

+
AKEYCODE_NUMPAD_RIGHT_PAREN  +

Numeric keypad ')' key.

+
AKEYCODE_VOLUME_MUTE  +

Volume Mute key. Mutes the speaker, unlike AKEYCODE_MUTE. This key should normally be implemented as a toggle such that the first press mutes the speaker and the second press restores the original volume.

+
AKEYCODE_INFO  +

Info key. Common on TV remotes to show additional information related to what is currently being viewed.

+
AKEYCODE_CHANNEL_UP  +

Channel up key. On TV remotes, increments the television channel.

+
AKEYCODE_CHANNEL_DOWN  +

Channel down key. On TV remotes, decrements the television channel.

+
AKEYCODE_ZOOM_IN  +

Zoom in key.

+
AKEYCODE_ZOOM_OUT  +

Zoom out key.

+
AKEYCODE_TV  +

TV key. On TV remotes, switches to viewing live TV.

+
AKEYCODE_WINDOW  +

Window key. On TV remotes, toggles picture-in-picture mode or other windowing functions.

+
AKEYCODE_GUIDE  +

Guide key. On TV remotes, shows a programming guide.

+
AKEYCODE_DVR  +

DVR key. On some TV remotes, switches to a DVR mode for recorded shows.

+
AKEYCODE_BOOKMARK  +

Bookmark key. On some TV remotes, bookmarks content or web pages.

+
AKEYCODE_CAPTIONS  +

Toggle captions key. Switches the mode for closed-captioning text, for example during television shows.

+
AKEYCODE_SETTINGS  +

Settings key. Starts the system settings activity.

+
AKEYCODE_TV_POWER  +

TV power key. On TV remotes, toggles the power on a television screen.

+
AKEYCODE_TV_INPUT  +

TV input key. On TV remotes, switches the input on a television screen.

+
AKEYCODE_STB_POWER  +

Set-top-box power key. On TV remotes, toggles the power on an external Set-top-box.

+
AKEYCODE_STB_INPUT  +

Set-top-box input key. On TV remotes, switches the input mode on an external Set-top-box.

+
AKEYCODE_AVR_POWER  +

A/V Receiver power key. On TV remotes, toggles the power on an external A/V Receiver.

+
AKEYCODE_AVR_INPUT  +

A/V Receiver input key. On TV remotes, switches the input mode on an external A/V Receiver.

+
AKEYCODE_PROG_RED  +

Red "programmable" key. On TV remotes, acts as a contextual/programmable key.

+
AKEYCODE_PROG_GREEN  +

Green "programmable" key. On TV remotes, actsas a contextual/programmable key.

+
AKEYCODE_PROG_YELLOW  +

Yellow "programmable" key. On TV remotes, acts as a contextual/programmable key.

+
AKEYCODE_PROG_BLUE  +

Blue "programmable" key. On TV remotes, acts as a contextual/programmable key.

+
AKEYCODE_APP_SWITCH  +

App switch key. Should bring up the application switcher dialog.

+
AKEYCODE_BUTTON_1  +

Generic Game Pad Button #1.

+
AKEYCODE_BUTTON_2  +

Generic Game Pad Button #2.

+
AKEYCODE_BUTTON_3  +

Generic Game Pad Button #3.

+
AKEYCODE_BUTTON_4  +

Generic Game Pad Button #4.

+
AKEYCODE_BUTTON_5  +

Generic Game Pad Button #5.

+
AKEYCODE_BUTTON_6  +

Generic Game Pad Button #6.

+
AKEYCODE_BUTTON_7  +

Generic Game Pad Button #7.

+
AKEYCODE_BUTTON_8  +

Generic Game Pad Button #8.

+
AKEYCODE_BUTTON_9  +

Generic Game Pad Button #9.

+
AKEYCODE_BUTTON_10  +

Generic Game Pad Button #10.

+
AKEYCODE_BUTTON_11  +

Generic Game Pad Button #11.

+
AKEYCODE_BUTTON_12  +

Generic Game Pad Button #12.

+
AKEYCODE_BUTTON_13  +

Generic Game Pad Button #13.

+
AKEYCODE_BUTTON_14  +

Generic Game Pad Button #14.

+
AKEYCODE_BUTTON_15  +

Generic Game Pad Button #15.

+
AKEYCODE_BUTTON_16  +

Generic Game Pad Button #16.

+
AKEYCODE_LANGUAGE_SWITCH  +

Language Switch key. Toggles the current input language such as switching between English and Japanese on a QWERTY keyboard. On some devices, the same function may be performed by pressing Shift+Spacebar.

+
AKEYCODE_MANNER_MODE  +

Manner Mode key. Toggles silent or vibrate mode on and off to make the device behave more politely in certain settings such as on a crowded train. On some devices, the key may only operate when long-pressed.

+
AKEYCODE_3D_MODE  +

3D Mode key. Toggles the display between 2D and 3D mode.

+
AKEYCODE_CONTACTS  +

Contacts special function key. Used to launch an address book application.

+
AKEYCODE_CALENDAR  +

Calendar special function key. Used to launch a calendar application.

+
AKEYCODE_MUSIC  +

Music special function key. Used to launch a music player application.

+
AKEYCODE_CALCULATOR  +

Calculator special function key. Used to launch a calculator application.

+
AKEYCODE_ZENKAKU_HANKAKU  +

Japanese full-width / half-width key.

+
AKEYCODE_EISU  +

Japanese alphanumeric key.

+
AKEYCODE_MUHENKAN  +

Japanese non-conversion key.

+
AKEYCODE_HENKAN  +

Japanese conversion key.

+
AKEYCODE_KATAKANA_HIRAGANA  +

Japanese katakana / hiragana key.

+
AKEYCODE_YEN  +

Japanese Yen key.

+
AKEYCODE_RO  +

Japanese Ro key.

+
AKEYCODE_KANA  +

Japanese kana key.

+
AKEYCODE_ASSIST  +

Assist key. Launches the global assist activity. Not delivered to applications.

+
AKEYCODE_BRIGHTNESS_DOWN  +

Brightness Down key. Adjusts the screen brightness down.

+
AKEYCODE_BRIGHTNESS_UP  +

Brightness Up key. Adjusts the screen brightness up.

+
AKEYCODE_MEDIA_AUDIO_TRACK  +

Audio Track key. Switches the audio tracks.

+
AKEYCODE_SLEEP  +

Sleep key. Puts the device to sleep. Behaves somewhat like AKEYCODE_POWER but it has no effect if the device is already asleep.

+
AKEYCODE_WAKEUP  +

Wakeup key. Wakes up the device. Behaves somewhat like AKEYCODE_POWER but it has no effect if the device is already awake.

+
AKEYCODE_PAIRING  +

Pairing key. Initiates peripheral pairing mode. Useful for pairing remote control devices or game controllers, especially if no other input mode is available.

+
AKEYCODE_MEDIA_TOP_MENU  +

Media Top Menu key. Goes to the top of media menu.

+
AKEYCODE_11  +

'11' key.

+
AKEYCODE_12  +

'12' key.

+
AKEYCODE_LAST_CHANNEL  +

Last Channel key. Goes to the last viewed channel.

+
AKEYCODE_TV_DATA_SERVICE  +

TV data service key. Displays data services like weather, sports.

+
AKEYCODE_VOICE_ASSIST  +

Voice Assist key. Launches the global voice assist activity. Not delivered to applications.

+
AKEYCODE_TV_RADIO_SERVICE  +

Radio key. Toggles TV service / Radio service.

+
AKEYCODE_TV_TELETEXT  +

Teletext key. Displays Teletext service.

+
AKEYCODE_TV_NUMBER_ENTRY  +

Number entry key. Initiates to enter multi-digit channel nubmber when each digit key is assigned for selecting separate channel. Corresponds to Number Entry Mode (0x1D) of CEC User Control Code.

+
AKEYCODE_TV_TERRESTRIAL_ANALOG  +

Analog Terrestrial key. Switches to analog terrestrial broadcast service.

+
AKEYCODE_TV_TERRESTRIAL_DIGITAL  +

Digital Terrestrial key. Switches to digital terrestrial broadcast service.

+
AKEYCODE_TV_SATELLITE  +

Satellite key. Switches to digital satellite broadcast service.

+
AKEYCODE_TV_SATELLITE_BS  +

BS key. Switches to BS digital satellite broadcasting service available in Japan.

+
AKEYCODE_TV_SATELLITE_CS  +

CS key. Switches to CS digital satellite broadcasting service available in Japan.

+
AKEYCODE_TV_SATELLITE_SERVICE  +

BS/CS key. Toggles between BS and CS digital satellite services.

+
AKEYCODE_TV_NETWORK  +

Toggle Network key. Toggles selecting broacast services.

+
AKEYCODE_TV_ANTENNA_CABLE  +

Antenna/Cable key. Toggles broadcast input source between antenna and cable.

+
AKEYCODE_TV_INPUT_HDMI_1  +

HDMI #1 key. Switches to HDMI input #1.

+
AKEYCODE_TV_INPUT_HDMI_2  +

HDMI #2 key. Switches to HDMI input #2.

+
AKEYCODE_TV_INPUT_HDMI_3  +

HDMI #3 key. Switches to HDMI input #3.

+
AKEYCODE_TV_INPUT_HDMI_4  +

HDMI #4 key. Switches to HDMI input #4.

+
AKEYCODE_TV_INPUT_COMPOSITE_1  +

Composite #1 key. Switches to composite video input #1.

+
AKEYCODE_TV_INPUT_COMPOSITE_2  +

Composite #2 key. Switches to composite video input #2.

+
AKEYCODE_TV_INPUT_COMPONENT_1  +

Component #1 key. Switches to component video input #1.

+
AKEYCODE_TV_INPUT_COMPONENT_2  +

Component #2 key. Switches to component video input #2.

+
AKEYCODE_TV_INPUT_VGA_1  +

VGA #1 key. Switches to VGA (analog RGB) input #1.

+
AKEYCODE_TV_AUDIO_DESCRIPTION  +

Audio description key. Toggles audio description off / on.

+
AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP  +

Audio description mixing volume up key. Louden audio description volume as compared with normal audio volume.

+
AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN  +

Audio description mixing volume down key. Lessen audio description volume as compared with normal audio volume.

+
AKEYCODE_TV_ZOOM_MODE  +

Zoom mode key. Changes Zoom mode (Normal, Full, Zoom, Wide-zoom, etc.)

+
AKEYCODE_TV_CONTENTS_MENU  +

Contents menu key. Goes to the title list. Corresponds to Contents Menu (0x0B) of CEC User Control Code

+
AKEYCODE_TV_MEDIA_CONTEXT_MENU  +

Media context menu key. Goes to the context menu of media contents. Corresponds to Media Context-sensitive Menu (0x11) of CEC User Control Code.

+
AKEYCODE_TV_TIMER_PROGRAMMING  +

Timer programming key. Goes to the timer recording menu. Corresponds to Timer Programming (0x54) of CEC User Control Code.

+
AKEYCODE_HELP  +

Help key.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Key states (may be returned by queries about the current state of a particular key code, scan code or switch).

+ + + + + +
Enumerator
AKEY_STATE_UNKNOWN  +

The key state is unknown or the requested key itself is not supported.

+
AKEY_STATE_UP  +

The key is up.

+
AKEY_STATE_DOWN  +

The key is down.

+
AKEY_STATE_VIRTUAL  +

The key is down but is a virtual key press that is being emulated by the system.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Meta key / modifer state.

+ + + + + + + + + + + + + + + + + + + +
Enumerator
AMETA_NONE  +

No meta keys are pressed.

+
AMETA_ALT_ON  +

This mask is used to check whether one of the ALT meta keys is pressed.

+
AMETA_ALT_LEFT_ON  +

This mask is used to check whether the left ALT meta key is pressed.

+
AMETA_ALT_RIGHT_ON  +

This mask is used to check whether the right ALT meta key is pressed.

+
AMETA_SHIFT_ON  +

This mask is used to check whether one of the SHIFT meta keys is pressed.

+
AMETA_SHIFT_LEFT_ON  +

This mask is used to check whether the left SHIFT meta key is pressed.

+
AMETA_SHIFT_RIGHT_ON  +

This mask is used to check whether the right SHIFT meta key is pressed.

+
AMETA_SYM_ON  +

This mask is used to check whether the SYM meta key is pressed.

+
AMETA_FUNCTION_ON  +

This mask is used to check whether the FUNCTION meta key is pressed.

+
AMETA_CTRL_ON  +

This mask is used to check whether one of the CTRL meta keys is pressed.

+
AMETA_CTRL_LEFT_ON  +

This mask is used to check whether the left CTRL meta key is pressed.

+
AMETA_CTRL_RIGHT_ON  +

This mask is used to check whether the right CTRL meta key is pressed.

+
AMETA_META_ON  +

This mask is used to check whether one of the META meta keys is pressed.

+
AMETA_META_LEFT_ON  +

This mask is used to check whether the left META meta key is pressed.

+
AMETA_META_RIGHT_ON  +

This mask is used to check whether the right META meta key is pressed.

+
AMETA_CAPS_LOCK_ON  +

This mask is used to check whether the CAPS LOCK meta key is on.

+
AMETA_NUM_LOCK_ON  +

This mask is used to check whether the NUM LOCK meta key is on.

+
AMETA_SCROLL_LOCK_ON  +

This mask is used to check whether the SCROLL LOCK meta key is on.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Input event types.

+ + + +
Enumerator
AINPUT_EVENT_TYPE_KEY  +

Indicates that the input event is a key event.

+
AINPUT_EVENT_TYPE_MOTION  +

Indicates that the input event is a motion event.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Key event actions.

+ + + + +
Enumerator
AKEY_EVENT_ACTION_DOWN  +

The key has been pressed down.

+
AKEY_EVENT_ACTION_UP  +

The key has been released.

+
AKEY_EVENT_ACTION_MULTIPLE  +

Multiple duplicate key events have occurred in a row, or a complex string is being delivered. The repeat_count property of the key event contains the number of times the given key code should be executed.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Key event flags.

+ + + + + + + + + + + + +
Enumerator
AKEY_EVENT_FLAG_WOKE_HERE  +

This mask is set if the device woke because of this key event.

+
AKEY_EVENT_FLAG_SOFT_KEYBOARD  +

This mask is set if the key event was generated by a software keyboard.

+
AKEY_EVENT_FLAG_KEEP_TOUCH_MODE  +

This mask is set if we don't want the key event to cause us to leave touch mode.

+
AKEY_EVENT_FLAG_FROM_SYSTEM  +

This mask is set if an event was known to come from a trusted part of the system. That is, the event is known to come from the user, and could not have been spoofed by a third party component.

+
AKEY_EVENT_FLAG_EDITOR_ACTION  +

This mask is used for compatibility, to identify enter keys that are coming from an IME whose enter key has been auto-labelled "next" or "done". This allows TextView to dispatch these as normal enter keys for old applications, but still do the appropriate action when receiving them.

+
AKEY_EVENT_FLAG_CANCELED  +

When associated with up key events, this indicates that the key press has been canceled. Typically this is used with virtual touch screen keys, where the user can slide from the virtual key area on to the display: in that case, the application will receive a canceled up event and should not perform the action normally associated with the key. Note that for this to work, the application can not perform an action for a key until it receives an up or the long press timeout has expired.

+
AKEY_EVENT_FLAG_VIRTUAL_HARD_KEY  +

This key event was generated by a virtual (on-screen) hard key area. Typically this is an area of the touchscreen, outside of the regular display, dedicated to "hardware" buttons.

+
AKEY_EVENT_FLAG_LONG_PRESS  +

This flag is set for the first key repeat that occurs after the long press timeout.

+
AKEY_EVENT_FLAG_CANCELED_LONG_PRESS  +

Set when a key event has AKEY_EVENT_FLAG_CANCELED set because a long press action was executed while it was down.

+
AKEY_EVENT_FLAG_TRACKING  +

Set for AKEY_EVENT_ACTION_UP when this event's key code is still being tracked from its initial down. That is, somebody requested that tracking started on the key down and a long press has not caused the tracking to be canceled.

+
AKEY_EVENT_FLAG_FALLBACK  +

Set when a key event has been synthesized to implement default behavior for an event that the application did not handle. Fallback key events are generated by unhandled trackball motions (to emulate a directional keypad) and by certain unhandled key presses that are declared in the key map (such as special function numeric keypad keys when numlock is off).

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Motion event actions

+ + + + + + + + + + + + + + +
Enumerator
AMOTION_EVENT_ACTION_MASK  +

Bit mask of the parts of the action code that are the action itself.

+
AMOTION_EVENT_ACTION_POINTER_INDEX_MASK  +

Bits in the action code that represent a pointer index, used with AMOTION_EVENT_ACTION_POINTER_DOWN and AMOTION_EVENT_ACTION_POINTER_UP. Shifting down by AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT provides the actual pointer index where the data for the pointer going up or down can be found.

+
AMOTION_EVENT_ACTION_DOWN  +

A pressed gesture has started, the motion contains the initial starting location.

+
AMOTION_EVENT_ACTION_UP  +

A pressed gesture has finished, the motion contains the final release location as well as any intermediate points since the last down or move event.

+
AMOTION_EVENT_ACTION_MOVE  +

A change has happened during a press gesture (between AMOTION_EVENT_ACTION_DOWN and AMOTION_EVENT_ACTION_UP). The motion contains the most recent point, as well as any intermediate points since the last down or move event.

+
AMOTION_EVENT_ACTION_CANCEL  +

The current gesture has been aborted. You will not receive any more points in it. You should treat this as an up event, but not perform any action that you normally would.

+
AMOTION_EVENT_ACTION_OUTSIDE  +

A movement has happened outside of the normal bounds of the UI element. This does not provide a full gesture, but only the initial location of the movement/touch.

+
AMOTION_EVENT_ACTION_POINTER_DOWN  +

A non-primary pointer has gone down. The bits in AMOTION_EVENT_ACTION_POINTER_INDEX_MASK indicate which pointer changed.

+
AMOTION_EVENT_ACTION_POINTER_UP  +

A non-primary pointer has gone up. The bits in AMOTION_EVENT_ACTION_POINTER_INDEX_MASK indicate which pointer changed.

+
AMOTION_EVENT_ACTION_HOVER_MOVE  +

A change happened but the pointer is not down (unlike AMOTION_EVENT_ACTION_MOVE). The motion contains the most recent point, as well as any intermediate points since the last hover move event.

+
AMOTION_EVENT_ACTION_SCROLL  +

The motion event contains relative vertical and/or horizontal scroll offsets. Use getAxisValue to retrieve the information from AMOTION_EVENT_AXIS_VSCROLL and AMOTION_EVENT_AXIS_HSCROLL. The pointer may or may not be down when this event is dispatched. This action is always delivered to the winder under the pointer, which may not be the window currently touched.

+
AMOTION_EVENT_ACTION_HOVER_ENTER  +

The pointer is not down but has entered the boundaries of a window or view.

+
AMOTION_EVENT_ACTION_HOVER_EXIT  +

The pointer is not down but has exited the boundaries of a window or view.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Motion event flags.

+ + +
Enumerator
AMOTION_EVENT_FLAG_WINDOW_IS_OBSCURED  +

This flag indicates that the window that received this motion event is partly or wholly obscured by another visible window above it. This flag is set to true even if the event did not directly pass through the obscured area. A security sensitive application can check this flag to identify situations in which a malicious application may have covered up part of its content for the purpose of misleading the user or hijacking touches. An appropriate response might be to drop the suspect touches or to take additional precautions to confirm the user's actual intent.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
int32_t AInputEvent_getDeviceId (const AInputEventevent)
+
+

Get the id for the device that an input event came from.

+

Input events can be generated by multiple different input devices. Use the input device id to obtain information about the input device that was responsible for generating a particular event.

+

An input device id of 0 indicates that the event didn't come from a physical device; other numbers are arbitrary and you shouldn't depend on the values. Use the provided input device query API to obtain information about input devices.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AInputEvent_getSource (const AInputEventevent)
+
+

Get the input event source.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AInputEvent_getType (const AInputEventevent)
+
+

Input event accessors.

+

Note that most functions can only be used on input events that are of a given type. Calling these functions on input events of other types will yield undefined behavior.Get the input event type.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void AInputQueue_attachLooper (AInputQueuequeue,
ALooperlooper,
int ident,
ALooper_callbackFunc callback,
void * data 
)
+
+

Add this input queue to a looper for processing. See ALooper_addFd() for information on the ident, callback, and data params.

+ +
+
+ +
+
+ + + + + + + + +
void AInputQueue_detachLooper (AInputQueuequeue)
+
+

Remove the input queue from the looper it is currently attached to.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void AInputQueue_finishEvent (AInputQueuequeue,
AInputEventevent,
int handled 
)
+
+

Report that dispatching has finished with the given event. This must be called after receiving an event with AInputQueue_get_event().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AInputQueue_getEvent (AInputQueuequeue,
AInputEvent ** outEvent 
)
+
+

Returns the next available event from the queue. Returns a negative value if no events are available or an error has occurred.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AInputQueue_hasEvents (AInputQueuequeue)
+
+

Returns true if there are one or more events available in the input queue. Returns 1 if the queue has events; 0 if it does not have events; and a negative value if there is an error.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AInputQueue_preDispatchEvent (AInputQueuequeue,
AInputEventevent 
)
+
+

Sends the key for standard pre-dispatching – that is, possibly deliver it to the current IME to be consumed before the app. Returns 0 if it was not pre-dispatched, meaning you can process it right now. If non-zero is returned, you must abandon the current event processing and allow the event to appear again in the event queue (if it does not get consumed during pre-dispatching).

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getAction (const AInputEventkey_event)
+
+

Get the key event action.

+ +
+
+ +
+
+ + + + + + + + +
int64_t AKeyEvent_getDownTime (const AInputEventkey_event)
+
+

Get the time of the most recent key down event, in the java.lang.System.nanoTime() time base. If this is a down event, this will be the same as eventTime. Note that when chording keys, this value is the down time of the most recently pressed key, which may not be the same physical key of this event.

+ +
+
+ +
+
+ + + + + + + + +
int64_t AKeyEvent_getEventTime (const AInputEventkey_event)
+
+

Get the time this event occurred, in the java.lang.System.nanoTime() time base.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getFlags (const AInputEventkey_event)
+
+

Get the key event flags.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getKeyCode (const AInputEventkey_event)
+
+

Get the key code of the key event. This is the physical key that was pressed, not the Unicode character.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getMetaState (const AInputEventkey_event)
+
+

Get the meta key state.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getRepeatCount (const AInputEventkey_event)
+
+

Get the repeat count of the event. For both key up an key down events, this is the number of times the key has repeated with the first down starting at 0 and counting up from there. For multiple key events, this is the number of down/up pairs that have occurred.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AKeyEvent_getScanCode (const AInputEventkey_event)
+
+

Get the hardware key id of this key event. These values are not reliable and vary from device to device.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AMotionEvent_getAction (const AInputEventmotion_event)
+
+

Get the combined motion event action code and pointer index.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getAxisValue (const AInputEventmotion_event,
int32_t axis,
size_t pointer_index 
)
+
+

Get the value of the request axis for the given pointer index.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AMotionEvent_getButtonState (const AInputEventmotion_event)
+
+

Get the button state of all buttons that are pressed.

+ +
+
+ +
+
+ + + + + + + + +
int64_t AMotionEvent_getDownTime (const AInputEventmotion_event)
+
+

Get the time when the user originally pressed down to start a stream of position events, in the java.lang.System.nanoTime() time base.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AMotionEvent_getEdgeFlags (const AInputEventmotion_event)
+
+

Get a bitfield indicating which edges, if any, were touched by this motion event. For touch events, clients can use this to determine if the user's finger was touching the edge of the display.

+ +
+
+ +
+
+ + + + + + + + +
int64_t AMotionEvent_getEventTime (const AInputEventmotion_event)
+
+

Get the time when this specific event was generated, in the java.lang.System.nanoTime() time base.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AMotionEvent_getFlags (const AInputEventmotion_event)
+
+

Get the motion event flags.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalAxisValue (const AInputEventmotion_event,
int32_t axis,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical value of the request axis for the given pointer index that occurred between this event and the previous motion event.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int64_t AMotionEvent_getHistoricalEventTime (const AInputEventmotion_event,
size_t history_index 
)
+
+

Get the time that a historical movement occurred between this event and the previous event, in the java.lang.System.nanoTime() time base.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalOrientation (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical orientation of the touch area and tool area in radians clockwise from vertical for the given pointer index that occurred between this event and the previous motion event. An angle of 0 degrees indicates that the major axis of contact is oriented upwards, is perfectly circular or is of unknown orientation. A positive angle indicates that the major axis of contact is oriented to the right. A negative angle indicates that the major axis of contact is oriented to the left. The full range is from -PI/2 radians (finger pointing fully left) to PI/2 radians (finger pointing fully right).

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalPressure (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical pressure of this event for the given pointer index that occurred between this event and the previous motion event. The pressure generally ranges from 0 (no pressure at all) to 1 (normal pressure), although values higher than 1 may be generated depending on the calibration of the input device.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalRawX (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical raw X coordinate of this event for the given pointer index that occurred between this event and the previous motion event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalRawY (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical raw Y coordinate of this event for the given pointer index that occurred between this event and the previous motion event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalSize (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the current scaled value of the approximate size for the given pointer index that occurred between this event and the previous motion event. This represents some approximation of the area of the screen being pressed; the actual value in pixels corresponding to the touch is normalized with the device specific range of values and scaled to a value between 0 and 1. The value of size can be used to determine fat touch events.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalToolMajor (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical length of the major axis of an ellipse that describes the size of the approaching tool for the given pointer index that occurred between this event and the previous motion event. The tool area represents the estimated size of the finger or pen that is touching the device independent of its actual touch area at the point of contact.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalToolMinor (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical length of the minor axis of an ellipse that describes the size of the approaching tool for the given pointer index that occurred between this event and the previous motion event. The tool area represents the estimated size of the finger or pen that is touching the device independent of its actual touch area at the point of contact.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalTouchMajor (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical length of the major axis of an ellipse that describes the touch area at the point of contact for the given pointer index that occurred between this event and the previous motion event.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalTouchMinor (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical length of the minor axis of an ellipse that describes the touch area at the point of contact for the given pointer index that occurred between this event and the previous motion event.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalX (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical X coordinate of this event for the given pointer index that occurred between this event and the previous motion event. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
float AMotionEvent_getHistoricalY (const AInputEventmotion_event,
size_t pointer_index,
size_t history_index 
)
+
+

Get the historical Y coordinate of this event for the given pointer index that occurred between this event and the previous motion event. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + +
size_t AMotionEvent_getHistorySize (const AInputEventmotion_event)
+
+

Get the number of historical points in this event. These are movements that have occurred between this event and the previous event. This only applies to AMOTION_EVENT_ACTION_MOVE events – all other actions will have a size of 0. Historical samples are indexed from oldest to newest.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AMotionEvent_getMetaState (const AInputEventmotion_event)
+
+

Get the state of any meta / modifier keys that were in effect when the event was generated.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getOrientation (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current orientation of the touch area and tool area in radians clockwise from vertical for the given pointer index. An angle of 0 degrees indicates that the major axis of contact is oriented upwards, is perfectly circular or is of unknown orientation. A positive angle indicates that the major axis of contact is oriented to the right. A negative angle indicates that the major axis of contact is oriented to the left. The full range is from -PI/2 radians (finger pointing fully left) to PI/2 radians (finger pointing fully right).

+ +
+
+ +
+
+ + + + + + + + +
size_t AMotionEvent_getPointerCount (const AInputEventmotion_event)
+
+

Get the number of pointers of data contained in this event. Always >= 1.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AMotionEvent_getPointerId (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the pointer identifier associated with a particular pointer data index in this event. The identifier tells you the actual pointer number associated with the data, accounting for individual pointers going up and down since the start of the current gesture.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getPressure (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current pressure of this event for the given pointer index. The pressure generally ranges from 0 (no pressure at all) to 1 (normal pressure), although values higher than 1 may be generated depending on the calibration of the input device.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getRawX (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the original raw X coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getRawY (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the original raw X coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getSize (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current scaled value of the approximate size for the given pointer index. This represents some approximation of the area of the screen being pressed; the actual value in pixels corresponding to the touch is normalized with the device specific range of values and scaled to a value between 0 and 1. The value of size can be used to determine fat touch events.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getToolMajor (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current length of the major axis of an ellipse that describes the size of the approaching tool for the given pointer index. The tool area represents the estimated size of the finger or pen that is touching the device independent of its actual touch area at the point of contact.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getToolMinor (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current length of the minor axis of an ellipse that describes the size of the approaching tool for the given pointer index. The tool area represents the estimated size of the finger or pen that is touching the device independent of its actual touch area at the point of contact.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int32_t AMotionEvent_getToolType (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the tool type of a pointer for the given pointer index. The tool type indicates the type of tool used to make contact such as a finger or stylus, if known.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getTouchMajor (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current length of the major axis of an ellipse that describes the touch area at the point of contact for the given pointer index.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getTouchMinor (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current length of the minor axis of an ellipse that describes the touch area at the point of contact for the given pointer index.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getX (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current X coordinate of this event for the given pointer index. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + +
float AMotionEvent_getXOffset (const AInputEventmotion_event)
+
+

Get the X coordinate offset. For touch events on the screen, this is the delta that was added to the raw screen coordinates to adjust for the absolute position of the containing windows and views.

+ +
+
+ +
+
+ + + + + + + + +
float AMotionEvent_getXPrecision (const AInputEventmotion_event)
+
+

Get the precision of the X coordinates being reported. You can multiply this number with an X coordinate sample to find the actual hardware value of the X coordinate.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
float AMotionEvent_getY (const AInputEventmotion_event,
size_t pointer_index 
)
+
+

Get the current Y coordinate of this event for the given pointer index. Whole numbers are pixels; the value may have a fraction for input devices that are sub-pixel precise.

+ +
+
+ +
+
+ + + + + + + + +
float AMotionEvent_getYOffset (const AInputEventmotion_event)
+
+

Get the Y coordinate offset. For touch events on the screen, this is the delta that was added to the raw screen coordinates to adjust for the absolute position of the containing windows and views.

+ +
+
+ +
+
+ + + + + + + + +
float AMotionEvent_getYPrecision (const AInputEventmotion_event)
+
+

Get the precision of the Y coordinates being reported. You can multiply this number with a Y coordinate sample to find the actual hardware value of the Y coordinate.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___looper.jd b/docs/html-ndk/ndk/reference/group___looper.jd new file mode 100644 index 0000000000000..9720baf7b1582 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___looper.jd @@ -0,0 +1,450 @@ +page.title=Looper +page.customHeadTag= +@jd:body + + +
+ +
+
Looper
+
+
+ + + + +

+Files

file  looper.h
 
+ + + + + +

+Typedefs

typedef struct ALooper ALooper
 
typedef int(* ALooper_callbackFunc )(int fd, int events, void *data)
 
+ + + + + + + +

+Enumerations

enum  { ALOOPER_PREPARE_ALLOW_NON_CALLBACKS = 1<<0 + }
 
enum  { ALOOPER_POLL_WAKE = -1, +ALOOPER_POLL_CALLBACK = -2, +ALOOPER_POLL_TIMEOUT = -3, +ALOOPER_POLL_ERROR = -4 + }
 
enum  {
+  ALOOPER_EVENT_INPUT = 1 << 0, +ALOOPER_EVENT_OUTPUT = 1 << 1, +ALOOPER_EVENT_ERROR = 1 << 2, +ALOOPER_EVENT_HANGUP = 1 << 3, +
+  ALOOPER_EVENT_INVALID = 1 << 4 +
+ }
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

ALooperALooper_forThread ()
 
ALooperALooper_prepare (int opts)
 
void ALooper_acquire (ALooper *looper)
 
void ALooper_release (ALooper *looper)
 
int ALooper_pollOnce (int timeoutMillis, int *outFd, int *outEvents, void **outData)
 
int ALooper_pollAll (int timeoutMillis, int *outFd, int *outEvents, void **outData)
 
void ALooper_wake (ALooper *looper)
 
int ALooper_addFd (ALooper *looper, int fd, int ident, int events, ALooper_callbackFunc callback, void *data)
 
int ALooper_removeFd (ALooper *looper, int fd)
 
+

Detailed Description

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ALooper ALooper
+
+

ALooper

+

A looper is the state tracking an event loop for a thread. Loopers do not define event structures or other such things; rather they are a lower-level facility to attach one or more discrete objects listening for an event. An "event" here is simply data available on a file descriptor: each attached object has an associated file descriptor, and waiting for "events" means (internally) polling on all of these file descriptors until one or more of them have data available.

+

A thread can have only one ALooper associated with it.

+ +
+
+ +
+
+ + + + +
typedef int(* ALooper_callbackFunc)(int fd, int events, void *data)
+
+

For callback-based event loops, this is the prototype of the function that is called when a file descriptor event occurs. It is given the file descriptor it is associated with, a bitmask of the poll events that were triggered (typically ALOOPER_EVENT_INPUT), and the data pointer that was originally supplied.

+

Implementations should return 1 to continue receiving callbacks, or 0 to have this file descriptor and callback unregistered from the looper.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Option for for ALooper_prepare().

+ + +
Enumerator
ALOOPER_PREPARE_ALLOW_NON_CALLBACKS  +

This looper will accept calls to ALooper_addFd() that do not have a callback (that is provide NULL for the callback). In this case the caller of ALooper_pollOnce() or ALooper_pollAll() MUST check the return from these functions to discover when data is available on such fds and process it.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Result from ALooper_pollOnce() and ALooper_pollAll().

+ + + + + +
Enumerator
ALOOPER_POLL_WAKE  +

The poll was awoken using wake() before the timeout expired and no callbacks were executed and no other file descriptors were ready.

+
ALOOPER_POLL_CALLBACK  +

Result from ALooper_pollOnce() and ALooper_pollAll(): One or more callbacks were executed.

+
ALOOPER_POLL_TIMEOUT  +

Result from ALooper_pollOnce() and ALooper_pollAll(): The timeout expired.

+
ALOOPER_POLL_ERROR  +

Result from ALooper_pollOnce() and ALooper_pollAll(): An error occurred.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Flags for file descriptor events that a looper can monitor.

+

These flag bits can be combined to monitor multiple events at once.

+ + + + + + +
Enumerator
ALOOPER_EVENT_INPUT  +

The file descriptor is available for read operations.

+
ALOOPER_EVENT_OUTPUT  +

The file descriptor is available for write operations.

+
ALOOPER_EVENT_ERROR  +

The file descriptor has encountered an error condition.

+

The looper always sends notifications about errors; it is not necessary to specify this event flag in the requested event set.

+
ALOOPER_EVENT_HANGUP  +

The file descriptor was hung up. For example, indicates that the remote end of a pipe or socket was closed.

+

The looper always sends notifications about hangups; it is not necessary to specify this event flag in the requested event set.

+
ALOOPER_EVENT_INVALID  +

The file descriptor is invalid. For example, the file descriptor was closed prematurely.

+

The looper always sends notifications about invalid file descriptors; it is not necessary to specify this event flag in the requested event set.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void ALooper_acquire (ALooperlooper)
+
+

Acquire a reference on the given ALooper object. This prevents the object from being deleted until the reference is removed. This is only needed to safely hand an ALooper from one thread to another.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int ALooper_addFd (ALooperlooper,
int fd,
int ident,
int events,
ALooper_callbackFunc callback,
void * data 
)
+
+

Adds a new file descriptor to be polled by the looper. If the same file descriptor was previously added, it is replaced.

+

"fd" is the file descriptor to be added. "ident" is an identifier for this event, which is returned from ALooper_pollOnce(). The identifier must be >= 0, or ALOOPER_POLL_CALLBACK if providing a non-NULL callback. "events" are the poll events to wake up on. Typically this is ALOOPER_EVENT_INPUT. "callback" is the function to call when there is an event on the file descriptor. "data" is a private data pointer to supply to the callback.

+

There are two main uses of this function:

+

(1) If "callback" is non-NULL, then this function will be called when there is data on the file descriptor. It should execute any events it has pending, appropriately reading from the file descriptor. The 'ident' is ignored in this case.

+

(2) If "callback" is NULL, the 'ident' will be returned by ALooper_pollOnce when its file descriptor has data available, requiring the caller to take care of processing it.

+

Returns 1 if the file descriptor was added or -1 if an error occurred.

+

This method can be called on any thread. This method may block briefly if it needs to wake the poll.

+ +
+
+ +
+
+ + + + + + + +
ALooper* ALooper_forThread ()
+
+

Returns the looper associated with the calling thread, or NULL if there is not one.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int ALooper_pollAll (int timeoutMillis,
int * outFd,
int * outEvents,
void ** outData 
)
+
+

Like ALooper_pollOnce(), but performs all pending callbacks until all data has been consumed or a file descriptor is available with no callback. This function will never return ALOOPER_POLL_CALLBACK.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int ALooper_pollOnce (int timeoutMillis,
int * outFd,
int * outEvents,
void ** outData 
)
+
+

Waits for events to be available, with optional timeout in milliseconds. Invokes callbacks for all file descriptors on which an event occurred.

+

If the timeout is zero, returns immediately without blocking. If the timeout is negative, waits indefinitely until an event appears.

+

Returns ALOOPER_POLL_WAKE if the poll was awoken using wake() before the timeout expired and no callbacks were invoked and no other file descriptors were ready.

+

Returns ALOOPER_POLL_CALLBACK if one or more callbacks were invoked.

+

Returns ALOOPER_POLL_TIMEOUT if there was no data before the given timeout expired.

+

Returns ALOOPER_POLL_ERROR if an error occurred.

+

Returns a value >= 0 containing an identifier (the same identifier ident passed to ALooper_addFd()) if its file descriptor has data and it has no callback function (requiring the caller here to handle it). In this (and only this) case outFd, outEvents and outData will contain the poll events and data associated with the fd, otherwise they will be set to NULL.

+

This method does not return until it has finished invoking the appropriate callbacks for all file descriptors that were signalled.

+ +
+
+ +
+
+ + + + + + + + +
ALooper* ALooper_prepare (int opts)
+
+

Prepares a looper associated with the calling thread, and returns it. If the thread already has a looper, it is returned. Otherwise, a new one is created, associated with the thread, and returned.

+

The opts may be ALOOPER_PREPARE_ALLOW_NON_CALLBACKS or 0.

+ +
+
+ +
+
+ + + + + + + + +
void ALooper_release (ALooperlooper)
+
+

Remove a reference that was previously acquired with ALooper_acquire().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int ALooper_removeFd (ALooperlooper,
int fd 
)
+
+

Removes a previously added file descriptor from the looper.

+

When this method returns, it is safe to close the file descriptor since the looper will no longer have a reference to it. However, it is possible for the callback to already be running or for it to run one last time if the file descriptor was already signalled. Calling code is responsible for ensuring that this case is safely handled. For example, if the callback takes care of removing itself during its own execution either by returning 0 or by calling this method, then it can be guaranteed to not be invoked again at any later time unless registered anew.

+

Returns 1 if the file descriptor was removed, 0 if none was previously registered or -1 if an error occurred.

+

This method can be called on any thread. This method may block briefly if it needs to wake the poll.

+ +
+
+ +
+
+ + + + + + + + +
void ALooper_wake (ALooperlooper)
+
+

Wakes the poll asynchronously.

+

This method can be called on any thread. This method returns immediately.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___native_activity.jd b/docs/html-ndk/ndk/reference/group___native_activity.jd new file mode 100644 index 0000000000000..aa8c96c163a22 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___native_activity.jd @@ -0,0 +1,739 @@ +page.title=Native Activity +page.customHeadTag= +@jd:body + + +
+ +
+
Native Activity
+
+
+ + + + + + + + + + + + +

+Files

file  native_activity.h
 
file  native_window.h
 
file  native_window_jni.h
 
file  rect.h
 
file  window.h
 
+ + + + + + + + + +

+Data Structures

struct  ANativeActivity
 
struct  ANativeActivityCallbacks
 
struct  ANativeWindow_Buffer
 
struct  ARect
 
+ + + + + + + + + + + + + +

+Typedefs

typedef struct ANativeActivity ANativeActivity
 
typedef struct
+ANativeActivityCallbacks 
ANativeActivityCallbacks
 
typedef void ANativeActivity_createFunc (ANativeActivity *activity, void *savedState, size_t savedStateSize)
 
typedef struct ANativeWindow ANativeWindow
 
typedef struct ANativeWindow_Buffer ANativeWindow_Buffer
 
typedef struct ARect ARect
 
+ + + + + + + + + +

+Enumerations

enum  { ANATIVEACTIVITY_SHOW_SOFT_INPUT_IMPLICIT = 0x0001, +ANATIVEACTIVITY_SHOW_SOFT_INPUT_FORCED = 0x0002 + }
 
enum  { ANATIVEACTIVITY_HIDE_SOFT_INPUT_IMPLICIT_ONLY = 0x0001, +ANATIVEACTIVITY_HIDE_SOFT_INPUT_NOT_ALWAYS = 0x0002 + }
 
enum  { WINDOW_FORMAT_RGBA_8888 = 1, +WINDOW_FORMAT_RGBX_8888 = 2, +WINDOW_FORMAT_RGB_565 = 4 + }
 
enum  {
+  AWINDOW_FLAG_ALLOW_LOCK_WHILE_SCREEN_ON = 0x00000001, +AWINDOW_FLAG_DIM_BEHIND = 0x00000002, +AWINDOW_FLAG_BLUR_BEHIND = 0x00000004, +AWINDOW_FLAG_NOT_FOCUSABLE = 0x00000008, +
+  AWINDOW_FLAG_NOT_TOUCHABLE = 0x00000010, +AWINDOW_FLAG_NOT_TOUCH_MODAL = 0x00000020, +AWINDOW_FLAG_TOUCHABLE_WHEN_WAKING = 0x00000040, +AWINDOW_FLAG_KEEP_SCREEN_ON = 0x00000080, +
+  AWINDOW_FLAG_LAYOUT_IN_SCREEN = 0x00000100, +AWINDOW_FLAG_LAYOUT_NO_LIMITS = 0x00000200, +AWINDOW_FLAG_FULLSCREEN = 0x00000400, +AWINDOW_FLAG_FORCE_NOT_FULLSCREEN = 0x00000800, +
+  AWINDOW_FLAG_DITHER = 0x00001000, +AWINDOW_FLAG_SECURE = 0x00002000, +AWINDOW_FLAG_SCALED = 0x00004000, +AWINDOW_FLAG_IGNORE_CHEEK_PRESSES = 0x00008000, +
+  AWINDOW_FLAG_LAYOUT_INSET_DECOR = 0x00010000, +AWINDOW_FLAG_ALT_FOCUSABLE_IM = 0x00020000, +AWINDOW_FLAG_WATCH_OUTSIDE_TOUCH = 0x00040000, +AWINDOW_FLAG_SHOW_WHEN_LOCKED = 0x00080000, +
+  AWINDOW_FLAG_SHOW_WALLPAPER = 0x00100000, +AWINDOW_FLAG_TURN_SCREEN_ON = 0x00200000, +AWINDOW_FLAG_DISMISS_KEYGUARD = 0x00400000 +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void ANativeActivity_finish (ANativeActivity *activity)
 
void ANativeActivity_setWindowFormat (ANativeActivity *activity, int32_t format)
 
void ANativeActivity_setWindowFlags (ANativeActivity *activity, uint32_t addFlags, uint32_t removeFlags)
 
void ANativeActivity_showSoftInput (ANativeActivity *activity, uint32_t flags)
 
void ANativeActivity_hideSoftInput (ANativeActivity *activity, uint32_t flags)
 
void ANativeWindow_acquire (ANativeWindow *window)
 
void ANativeWindow_release (ANativeWindow *window)
 
int32_t ANativeWindow_getWidth (ANativeWindow *window)
 
int32_t ANativeWindow_getHeight (ANativeWindow *window)
 
int32_t ANativeWindow_getFormat (ANativeWindow *window)
 
int32_t ANativeWindow_setBuffersGeometry (ANativeWindow *window, int32_t width, int32_t height, int32_t format)
 
int32_t ANativeWindow_lock (ANativeWindow *window, ANativeWindow_Buffer *outBuffer, ARect *inOutDirtyBounds)
 
int32_t ANativeWindow_unlockAndPost (ANativeWindow *window)
 
ANativeWindowANativeWindow_fromSurface (JNIEnv *env, jobject surface)
 
+ + + +

+Variables

ANativeActivity_createFunc ANativeActivity_onCreate
 
+

Detailed Description

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ANativeActivity ANativeActivity
+
+

This structure defines the native side of an android.app.NativeActivity. It is created by the framework, and handed to the application's native code as it is being launched.

+ +
+
+ +
+
+ + + + +
typedef void ANativeActivity_createFunc(ANativeActivity *activity, void *savedState, size_t savedStateSize)
+
+

This is the function that must be in the native code to instantiate the application's native activity. It is called with the activity instance (see above); if the code is being instantiated from a previously saved instance, the savedState will be non-NULL and point to the saved data. You must make any copy of this data you need – it will be released after you return from this function.

+ +
+
+ +
+
+

These are the callbacks the framework makes into a native application. All of these callbacks happen on the main thread of the application. By default, all callbacks are NULL; set to a pointer to your own function to have it called.

+ +
+
+ +
+
+ + + + +
typedef struct ANativeWindow ANativeWindow
+
+

ANativeWindow is opaque type that provides access to a native window.

+

A pointer can be obtained using ANativeWindow_fromSurface().

+ +
+
+ +
+
+ + + + +
typedef struct ANativeWindow_Buffer ANativeWindow_Buffer
+
+

ANativeWindow is a struct that represents a windows buffer.

+

A pointer can be obtained using ANativeWindow_lock().

+ +
+
+ +
+
+ + + + +
typedef struct ARect ARect
+
+

ARect is a struct that represents a rectangular window area.

+

It is used with ANativeActivityCallbacks::onContentRectChanged event callback and ANativeWindow_lock() function.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Flags for ANativeActivity_showSoftInput; see the Java InputMethodManager API for documentation.

+ + + +
Enumerator
ANATIVEACTIVITY_SHOW_SOFT_INPUT_IMPLICIT  +

Implicit request to show the input window, not as the result of a direct request by the user.

+
ANATIVEACTIVITY_SHOW_SOFT_INPUT_FORCED  +

The user has forced the input method open (such as by long-pressing menu) so it should not be closed until they explicitly do so.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Flags for ANativeActivity_hideSoftInput; see the Java InputMethodManager API for documentation.

+ + + +
Enumerator
ANATIVEACTIVITY_HIDE_SOFT_INPUT_IMPLICIT_ONLY  +

The soft input window should only be hidden if it was not explicitly shown by the user.

+
ANATIVEACTIVITY_HIDE_SOFT_INPUT_NOT_ALWAYS  +

The soft input window should normally be hidden, unless it was originally shown with ANATIVEACTIVITY_SHOW_SOFT_INPUT_FORCED.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Pixel formats that a window can use.

+ + + + +
Enumerator
WINDOW_FORMAT_RGBA_8888  +

Red: 8 bits, Green: 8 bits, Blue: 8 bits, Alpha: 8 bits.

+
WINDOW_FORMAT_RGBX_8888  +

Red: 8 bits, Green: 8 bits, Blue: 8 bits, Unused: 8 bits.

+
WINDOW_FORMAT_RGB_565  +

Red: 5 bits, Green: 6 bits, Blue: 5 bits.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Window flags, as per the Java API at android.view.WindowManager.LayoutParams.

+ + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
AWINDOW_FLAG_ALLOW_LOCK_WHILE_SCREEN_ON  +

As long as this window is visible to the user, allow the lock screen to activate while the screen is on. This can be used independently, or in combination with AWINDOW_FLAG_KEEP_SCREEN_ON and/or AWINDOW_FLAG_SHOW_WHEN_LOCKED

+
AWINDOW_FLAG_DIM_BEHIND  +

Everything behind this window will be dimmed.

+
AWINDOW_FLAG_BLUR_BEHIND  +

Blur everything behind this window.

+
Deprecated:
Blurring is no longer supported.
+
AWINDOW_FLAG_NOT_FOCUSABLE  +

This window won't ever get key input focus, so the user can not send key or other button events to it. Those will instead go to whatever focusable window is behind it. This flag will also enable AWINDOW_FLAG_NOT_TOUCH_MODAL whether or not that is explicitly set.

+

Setting this flag also implies that the window will not need to interact with a soft input method, so it will be Z-ordered and positioned independently of any active input method (typically this means it gets Z-ordered on top of the input method, so it can use the full screen for its content and cover the input method if needed. You can use AWINDOW_FLAG_ALT_FOCUSABLE_IM to modify this behavior.

+
AWINDOW_FLAG_NOT_TOUCHABLE  +

this window can never receive touch events.

+
AWINDOW_FLAG_NOT_TOUCH_MODAL  +

Even when this window is focusable (its AWINDOW_FLAG_NOT_FOCUSABLE is not set), allow any pointer events outside of the window to be sent to the windows behind it. Otherwise it will consume all pointer events itself, regardless of whether they are inside of the window.

+
AWINDOW_FLAG_TOUCHABLE_WHEN_WAKING  +

When set, if the device is asleep when the touch screen is pressed, you will receive this first touch event. Usually the first touch event is consumed by the system since the user can not see what they are pressing on.

+
Deprecated:
This flag has no effect.
+
AWINDOW_FLAG_KEEP_SCREEN_ON  +

As long as this window is visible to the user, keep the device's screen turned on and bright.

+
AWINDOW_FLAG_LAYOUT_IN_SCREEN  +

Place the window within the entire screen, ignoring decorations around the border (such as the status bar). The window must correctly position its contents to take the screen decoration into account.

+
AWINDOW_FLAG_LAYOUT_NO_LIMITS  +

allow window to extend outside of the screen.

+
AWINDOW_FLAG_FULLSCREEN  +

Hide all screen decorations (such as the status bar) while this window is displayed. This allows the window to use the entire display space for itself – the status bar will be hidden when an app window with this flag set is on the top layer. A fullscreen window will ignore a value of AWINDOW_SOFT_INPUT_ADJUST_RESIZE; the window will stay fullscreen and will not resize.

+
AWINDOW_FLAG_FORCE_NOT_FULLSCREEN  +

Override AWINDOW_FLAG_FULLSCREEN and force the screen decorations (such as the status bar) to be shown.

+
AWINDOW_FLAG_DITHER  +

Turn on dithering when compositing this window to the screen.

+
Deprecated:
This flag is no longer used.
+
AWINDOW_FLAG_SECURE  +

Treat the content of the window as secure, preventing it from appearing in screenshots or from being viewed on non-secure displays.

+
AWINDOW_FLAG_SCALED  +

A special mode where the layout parameters are used to perform scaling of the surface when it is composited to the screen.

+
AWINDOW_FLAG_IGNORE_CHEEK_PRESSES  +

Intended for windows that will often be used when the user is holding the screen against their face, it will aggressively filter the event stream to prevent unintended presses in this situation that may not be desired for a particular window, when such an event stream is detected, the application will receive a AMOTION_EVENT_ACTION_CANCEL to indicate this so applications can handle this accordingly by taking no action on the event until the finger is released.

+
AWINDOW_FLAG_LAYOUT_INSET_DECOR  +

A special option only for use in combination with AWINDOW_FLAG_LAYOUT_IN_SCREEN. When requesting layout in the screen your window may appear on top of or behind screen decorations such as the status bar. By also including this flag, the window manager will report the inset rectangle needed to ensure your content is not covered by screen decorations.

+
AWINDOW_FLAG_ALT_FOCUSABLE_IM  +

Invert the state of AWINDOW_FLAG_NOT_FOCUSABLE with respect to how this window interacts with the current method. That is, if FLAG_NOT_FOCUSABLE is set and this flag is set, then the window will behave as if it needs to interact with the input method and thus be placed behind/away from it; if AWINDOW_FLAG_NOT_FOCUSABLE is not set and this flag is set, then the window will behave as if it doesn't need to interact with the input method and can be placed to use more space and cover the input method.

+
AWINDOW_FLAG_WATCH_OUTSIDE_TOUCH  +

If you have set AWINDOW_FLAG_NOT_TOUCH_MODAL, you can set this flag to receive a single special MotionEvent with the action AMOTION_EVENT_ACTION_OUTSIDE for touches that occur outside of your window. Note that you will not receive the full down/move/up gesture, only the location of the first down as an AMOTION_EVENT_ACTION_OUTSIDE.

+
AWINDOW_FLAG_SHOW_WHEN_LOCKED  +

Special flag to let windows be shown when the screen is locked. This will let application windows take precedence over key guard or any other lock screens. Can be used with AWINDOW_FLAG_KEEP_SCREEN_ON to turn screen on and display windows directly before showing the key guard window. Can be used with AWINDOW_FLAG_DISMISS_KEYGUARD to automatically fully dismisss non-secure keyguards. This flag only applies to the top-most full-screen window.

+
AWINDOW_FLAG_SHOW_WALLPAPER  +

Ask that the system wallpaper be shown behind your window. The window surface must be translucent to be able to actually see the wallpaper behind it; this flag just ensures that the wallpaper surface will be there if this window actually has translucent regions.

+
AWINDOW_FLAG_TURN_SCREEN_ON  +

When set as a window is being added or made visible, once the window has been shown then the system will poke the power manager's user activity (as if the user had woken up the device) to turn the screen on.

+
AWINDOW_FLAG_DISMISS_KEYGUARD  +

When set the window will cause the keyguard to be dismissed, only if it is not a secure lock keyguard. Because such a keyguard is not needed for security, it will never re-appear if the user navigates to another window (in contrast to AWINDOW_FLAG_SHOW_WHEN_LOCKED, which will only temporarily hide both secure and non-secure keyguards but ensure they reappear when the user moves to another UI that doesn't hide them). If the keyguard is currently active and is secure (requires an unlock pattern) than the user will still need to confirm it before seeing this window, unless AWINDOW_FLAG_SHOW_WHEN_LOCKED has also been set.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void ANativeActivity_finish (ANativeActivityactivity)
+
+

Finish the given activity. Its finish() method will be called, causing it to be stopped and destroyed. Note that this method can be called from any thread; it will send a message to the main thread of the process where the Java finish call will take place.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ANativeActivity_hideSoftInput (ANativeActivityactivity,
uint32_t flags 
)
+
+

Hide the IME while in the given activity. Calls InputMethodManager.hideSoftInput() for the given activity. Note that this method can be called from any thread; it will send a message to the main thread of the process where the Java finish call will take place.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void ANativeActivity_setWindowFlags (ANativeActivityactivity,
uint32_t addFlags,
uint32_t removeFlags 
)
+
+

Change the window flags of the given activity. Calls getWindow().setFlags() of the given activity. Note that this method can be called from any thread; it will send a message to the main thread of the process where the Java finish call will take place. See window.h for flag constants.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ANativeActivity_setWindowFormat (ANativeActivityactivity,
int32_t format 
)
+
+

Change the window format of the given activity. Calls getWindow().setFormat() of the given activity. Note that this method can be called from any thread; it will send a message to the main thread of the process where the Java finish call will take place.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ANativeActivity_showSoftInput (ANativeActivityactivity,
uint32_t flags 
)
+
+

Show the IME while in the given activity. Calls InputMethodManager.showSoftInput() for the given activity. Note that this method can be called from any thread; it will send a message to the main thread of the process where the Java finish call will take place.

+ +
+
+ +
+
+ + + + + + + + +
void ANativeWindow_acquire (ANativeWindowwindow)
+
+

Acquire a reference on the given ANativeWindow object. This prevents the object from being deleted until the reference is removed.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ANativeWindow* ANativeWindow_fromSurface (JNIEnv * env,
jobject surface 
)
+
+

Return the ANativeWindow associated with a Java Surface object, for interacting with it through native code. This acquires a reference on the ANativeWindow that is returned; be sure to use ANativeWindow_release() when done with it so that it doesn't leak.

+ +
+
+ +
+
+ + + + + + + + +
int32_t ANativeWindow_getFormat (ANativeWindowwindow)
+
+

Return the current pixel format of the window surface. Returns a negative value on error.

+ +
+
+ +
+
+ + + + + + + + +
int32_t ANativeWindow_getHeight (ANativeWindowwindow)
+
+

Return the current height in pixels of the window surface. Returns a negative value on error.

+ +
+
+ +
+
+ + + + + + + + +
int32_t ANativeWindow_getWidth (ANativeWindowwindow)
+
+

Return the current width in pixels of the window surface. Returns a negative value on error.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int32_t ANativeWindow_lock (ANativeWindowwindow,
ANativeWindow_BufferoutBuffer,
ARectinOutDirtyBounds 
)
+
+

Lock the window's next drawing surface for writing. inOutDirtyBounds is used as an in/out parameter, upon entering the function, it contains the dirty region, that is, the region the caller intends to redraw. When the function returns, inOutDirtyBounds is updated with the actual area the caller needs to redraw – this region is often extended by ANativeWindow_lock.

+ +
+
+ +
+
+ + + + + + + + +
void ANativeWindow_release (ANativeWindowwindow)
+
+

Remove a reference that was previously acquired with ANativeWindow_acquire().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int32_t ANativeWindow_setBuffersGeometry (ANativeWindowwindow,
int32_t width,
int32_t height,
int32_t format 
)
+
+

Change the format and size of the window buffers.

+

The width and height control the number of pixels in the buffers, not the dimensions of the window on screen. If these are different than the window's physical size, then it buffer will be scaled to match that size when compositing it to the screen.

+

For all of these parameters, if 0 is supplied then the window's base value will come back in force.

+

width and height must be either both zero or both non-zero.

+ +
+
+ +
+
+ + + + + + + + +
int32_t ANativeWindow_unlockAndPost (ANativeWindowwindow)
+
+

Unlock the window's drawing surface after previously locking it, posting the new buffer to the display.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
ANativeActivity_createFunc ANativeActivity_onCreate
+
+

The name of the function that NativeInstance looks for when launching its native code. This is the default function that is used, you can specify "android.app.func_name" string meta-data in your manifest to use a different function.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___sensor.jd b/docs/html-ndk/ndk/reference/group___sensor.jd new file mode 100644 index 0000000000000..1ce4f03da1ece --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___sensor.jd @@ -0,0 +1,933 @@ +page.title=Sensor +page.customHeadTag= +@jd:body + + +
+ +
+
Sensor
+
+
+ + + + +

+Files

file  sensor.h
 
+ + + + + + + + + + + +

+Data Structures

struct  ASensorVector
 
struct  AMetaDataEvent
 
struct  AUncalibratedEvent
 
struct  AHeartRateEvent
 
struct  ASensorEvent
 
+ + + + + + + +

+Macros

#define ASENSOR_STANDARD_GRAVITY   (9.80665f)
 
#define ASENSOR_MAGNETIC_FIELD_EARTH_MAX   (60.0f)
 
#define ASENSOR_MAGNETIC_FIELD_EARTH_MIN   (30.0f)
 
+ + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct ASensorVector ASensorVector
 
typedef struct AMetaDataEvent AMetaDataEvent
 
typedef struct AUncalibratedEvent AUncalibratedEvent
 
typedef struct AHeartRateEvent AHeartRateEvent
 
typedef struct ASensorEvent ASensorEvent
 
typedef struct ASensorManager ASensorManager
 
typedef struct ASensorEventQueue ASensorEventQueue
 
typedef struct ASensor ASensor
 
typedef ASensor const * ASensorRef
 
typedef ASensorRef const * ASensorList
 
+ + + + + + + +

+Enumerations

enum  {
+  ASENSOR_TYPE_ACCELEROMETER = 1, +ASENSOR_TYPE_MAGNETIC_FIELD = 2, +ASENSOR_TYPE_GYROSCOPE = 4, +ASENSOR_TYPE_LIGHT = 5, +
+  ASENSOR_TYPE_PROXIMITY = 8 +
+ }
 
enum  {
+  ASENSOR_STATUS_NO_CONTACT = -1, +ASENSOR_STATUS_UNRELIABLE = 0, +ASENSOR_STATUS_ACCURACY_LOW = 1, +ASENSOR_STATUS_ACCURACY_MEDIUM = 2, +
+  ASENSOR_STATUS_ACCURACY_HIGH = 3 +
+ }
 
enum  { AREPORTING_MODE_CONTINUOUS = 0, +AREPORTING_MODE_ON_CHANGE = 1, +AREPORTING_MODE_ONE_SHOT = 2, +AREPORTING_MODE_SPECIAL_TRIGGER = 3 + }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ASensorManagerASensorManager_getInstance ()
 
int ASensorManager_getSensorList (ASensorManager *manager, ASensorList *list)
 
ASensor const * ASensorManager_getDefaultSensor (ASensorManager *manager, int type)
 
ASensor const * ASensorManager_getDefaultSensorEx (ASensorManager *manager, int type, bool wakeUp)
 
ASensorEventQueueASensorManager_createEventQueue (ASensorManager *manager, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data)
 
int ASensorManager_destroyEventQueue (ASensorManager *manager, ASensorEventQueue *queue)
 
int ASensorEventQueue_enableSensor (ASensorEventQueue *queue, ASensor const *sensor)
 
int ASensorEventQueue_disableSensor (ASensorEventQueue *queue, ASensor const *sensor)
 
int ASensorEventQueue_setEventRate (ASensorEventQueue *queue, ASensor const *sensor, int32_t usec)
 
int ASensorEventQueue_hasEvents (ASensorEventQueue *queue)
 
ssize_t ASensorEventQueue_getEvents (ASensorEventQueue *queue, ASensorEvent *events, size_t count)
 
const char * ASensor_getName (ASensor const *sensor)
 
const char * ASensor_getVendor (ASensor const *sensor)
 
int ASensor_getType (ASensor const *sensor)
 
float ASensor_getResolution (ASensor const *sensor)
 
int ASensor_getMinDelay (ASensor const *sensor)
 
int ASensor_getFifoMaxEventCount (ASensor const *sensor)
 
int ASensor_getFifoReservedEventCount (ASensor const *sensor)
 
const char * ASensor_getStringType (ASensor const *sensor)
 
int ASensor_getReportingMode (ASensor const *sensor)
 
bool ASensor_isWakeUpSensor (ASensor const *sensor)
 
+

Detailed Description

+

Macro Definition Documentation

+ +
+
+ + + + +
#define ASENSOR_MAGNETIC_FIELD_EARTH_MAX   (60.0f)
+
+

Maximum magnetic field on Earth's surface in uT

+ +
+
+ +
+
+ + + + +
#define ASENSOR_MAGNETIC_FIELD_EARTH_MIN   (30.0f)
+
+

Minimum magnetic field on Earth's surface in uT

+ +
+
+ +
+
+ + + + +
#define ASENSOR_STANDARD_GRAVITY   (9.80665f)
+
+

Earth's gravity in m/s^2

+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct AHeartRateEvent AHeartRateEvent
+
+ +
+
+ +
+
+ + + + +
typedef struct AMetaDataEvent AMetaDataEvent
+
+ +
+
+ +
+
+ + + + +
typedef struct ASensor ASensor
+
+
+ +
+
+ + + + +
typedef struct ASensorEvent ASensorEvent
+
+ +
+
+ +
+
+ + + + +
typedef struct ASensorEventQueue ASensorEventQueue
+
+

ASensorEventQueue is an opaque type that provides access to ASensorEvent from hardware sensors.

+

A new ASensorEventQueue can be obtained using ASensorManager_createEventQueue().

+

This file provides a set of functions to enable and disable sensors, check and get events, and set event rates on a ASensorEventQueue.

+ + +
+
+ +
+
+ + + + +
typedef ASensorRef const* ASensorList
+
+

ASensorList is an array of reference to ASensor.

+

A ASensorList can be initialized using ASensorManager_getSensorList().

+ +
+
+ +
+
+ + + + +
typedef struct ASensorManager ASensorManager
+
+

ASensorManager is an opaque type to manage sensors and events queues.

+

ASensorManager is a singleton that can be obtained using ASensorManager_getInstance().

+

This file provides a set of functions that uses ASensorManager to access and list hardware sensors, and create and destroy event queues:

+ + +
+
+ +
+
+ + + + +
typedef ASensor const* ASensorRef
+
+

ASensorRef is a type for constant pointers to ASensor.

+

This is used to define entry in ASensorList arrays.

+ +
+
+ +
+
+ + + + +
typedef struct ASensorVector ASensorVector
+
+

A sensor event.

+ +
+
+ +
+
+ + + + +
typedef struct AUncalibratedEvent AUncalibratedEvent
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Structures and functions to receive and process sensor events in native code. Sensor types. (keep in sync with hardware/sensor.h)

+ + + + + + +
Enumerator
ASENSOR_TYPE_ACCELEROMETER  +

ASENSOR_TYPE_ACCELEROMETER reporting-mode: continuous

+

All values are in SI units (m/s^2) and measure the acceleration of the device minus the force of gravity.

+
ASENSOR_TYPE_MAGNETIC_FIELD  +

ASENSOR_TYPE_MAGNETIC_FIELD reporting-mode: continuous

+

All values are in micro-Tesla (uT) and measure the geomagnetic field in the X, Y and Z axis.

+
ASENSOR_TYPE_GYROSCOPE  +

ASENSOR_TYPE_GYROSCOPE reporting-mode: continuous

+

All values are in radians/second and measure the rate of rotation around the X, Y and Z axis.

+
ASENSOR_TYPE_LIGHT  +

ASENSOR_TYPE_LIGHT reporting-mode: on-change

+

The light sensor value is returned in SI lux units.

+
ASENSOR_TYPE_PROXIMITY  +

ASENSOR_TYPE_PROXIMITY reporting-mode: on-change

+

The proximity sensor which turns the screen off and back on during calls is the wake-up proximity sensor. Implement wake-up proximity sensor before implementing a non wake-up proximity sensor. For the wake-up proximity sensor set the flag SENSOR_FLAG_WAKE_UP. The value corresponds to the distance to the nearest object in centimeters.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Sensor accuracy measure.

+ + + + + + +
Enumerator
ASENSOR_STATUS_NO_CONTACT  +

no contact

+
ASENSOR_STATUS_UNRELIABLE  +

unreliable

+
ASENSOR_STATUS_ACCURACY_LOW  +

low accuracy

+
ASENSOR_STATUS_ACCURACY_MEDIUM  +

medium accuracy

+
ASENSOR_STATUS_ACCURACY_HIGH  +

high accuracy

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

Sensor Reporting Modes.

+ + + + + +
Enumerator
AREPORTING_MODE_CONTINUOUS  +

continuous reporting

+
AREPORTING_MODE_ON_CHANGE  +

reporting on change

+
AREPORTING_MODE_ONE_SHOT  +

on shot reporting

+
AREPORTING_MODE_SPECIAL_TRIGGER  +

special trigger reporting

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
int ASensor_getFifoMaxEventCount (ASensor const * sensor)
+
+

Returns the maximum size of batches for this sensor. Batches will often be smaller, as the hardware fifo might be used for other sensors.

+ +
+
+ +
+
+ + + + + + + + +
int ASensor_getFifoReservedEventCount (ASensor const * sensor)
+
+

Returns the hardware batch fifo size reserved to this sensor.

+ +
+
+ +
+
+ + + + + + + + +
int ASensor_getMinDelay (ASensor const * sensor)
+
+

Returns the minimum delay allowed between events in microseconds. A value of zero means that this sensor doesn't report events at a constant rate, but rather only when a new data is available.

+ +
+
+ +
+
+ + + + + + + + +
const char* ASensor_getName (ASensor const * sensor)
+
+

Returns this sensor's name (non localized)

+ +
+
+ +
+
+ + + + + + + + +
int ASensor_getReportingMode (ASensor const * sensor)
+
+

Returns the reporting mode for this sensor. One of AREPORTING_MODE_* constants.

+ +
+
+ +
+
+ + + + + + + + +
float ASensor_getResolution (ASensor const * sensor)
+
+

Returns this sensors's resolution

+ +
+
+ +
+
+ + + + + + + + +
const char* ASensor_getStringType (ASensor const * sensor)
+
+

Returns this sensor's string type.

+ +
+
+ +
+
+ + + + + + + + +
int ASensor_getType (ASensor const * sensor)
+
+

Return this sensor's type

+ +
+
+ +
+
+ + + + + + + + +
const char* ASensor_getVendor (ASensor const * sensor)
+
+

Returns this sensor's vendor's name (non localized)

+ +
+
+ +
+
+ + + + + + + + +
bool ASensor_isWakeUpSensor (ASensor const * sensor)
+
+

Returns true if this is a wake up sensor, false otherwise.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int ASensorEventQueue_disableSensor (ASensorEventQueuequeue,
ASensor const * sensor 
)
+
+

Disable the selected sensor. Returns a negative error code on failure.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int ASensorEventQueue_enableSensor (ASensorEventQueuequeue,
ASensor const * sensor 
)
+
+

Enable the selected sensor. Returns a negative error code on failure.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ssize_t ASensorEventQueue_getEvents (ASensorEventQueuequeue,
ASensorEventevents,
size_t count 
)
+
+

Returns the next available events from the queue. Returns a negative value if no events are available or an error has occurred, otherwise the number of events returned.

+

Examples: ASensorEvent event; ssize_t numEvent = ASensorEventQueue_getEvents(queue, &event, 1);

+

ASensorEvent eventBuffer[8]; ssize_t numEvent = ASensorEventQueue_getEvents(queue, eventBuffer, 8);

+ +
+
+ +
+
+ + + + + + + + +
int ASensorEventQueue_hasEvents (ASensorEventQueuequeue)
+
+

Returns true if there are one or more events available in the sensor queue. Returns 1 if the queue has events; 0 if it does not have events; and a negative value if there is an error.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int ASensorEventQueue_setEventRate (ASensorEventQueuequeue,
ASensor const * sensor,
int32_t usec 
)
+
+

Sets the delivery rate of events in microseconds for the given sensor. Note that this is a hint only, generally event will arrive at a higher rate. It is an error to set a rate inferior to the value returned by ASensor_getMinDelay(). Returns a negative error code on failure.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ASensorEventQueue* ASensorManager_createEventQueue (ASensorManagermanager,
ALooperlooper,
int ident,
ALooper_callbackFunc callback,
void * data 
)
+
+

Creates a new sensor event queue and associate it with a looper.

+

"ident" is a identifier for the events that will be returned when calling ALooper_pollOnce(). The identifier must be >= 0, or ALOOPER_POLL_CALLBACK if providing a non-NULL callback.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int ASensorManager_destroyEventQueue (ASensorManagermanager,
ASensorEventQueuequeue 
)
+
+

Destroys the event queue and free all resources associated to it.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ASensor const* ASensorManager_getDefaultSensor (ASensorManagermanager,
int type 
)
+
+

Returns the default sensor for the given type, or NULL if no sensor of that type exists.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ASensor const* ASensorManager_getDefaultSensorEx (ASensorManagermanager,
int type,
bool wakeUp 
)
+
+

Returns the default sensor with the given type and wakeUp properties or NULL if no sensor of this type and wakeUp properties exists.

+ +
+
+ +
+
+ + + + + + + +
ASensorManager* ASensorManager_getInstance ()
+
+

Get a reference to the sensor manager. ASensorManager is a singleton.

+

Example:

+
ASensorManager* sensorManager = ASensorManager_getInstance();
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int ASensorManager_getSensorList (ASensorManagermanager,
ASensorListlist 
)
+
+

Returns the list of available sensors.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/group___storage.jd b/docs/html-ndk/ndk/reference/group___storage.jd new file mode 100644 index 0000000000000..674bc48268562 --- /dev/null +++ b/docs/html-ndk/ndk/reference/group___storage.jd @@ -0,0 +1,458 @@ +page.title=Storage +page.customHeadTag= +@jd:body + + +
+ +
+
Storage
+
+
+ + + + + + +

+Files

file  obb.h
 
file  storage_manager.h
 
+ + + + + + + +

+Typedefs

typedef struct AObbInfo AObbInfo
 
typedef struct AStorageManager AStorageManager
 
typedef void(* AStorageManager_obbCallbackFunc )(const char *filename, const int32_t state, void *data)
 
+ + + + + +

+Enumerations

enum  { AOBBINFO_OVERLAY = 0x0001 + }
 
enum  {
+  AOBB_STATE_MOUNTED = 1, +AOBB_STATE_UNMOUNTED = 2, +AOBB_STATE_ERROR_INTERNAL = 20, +AOBB_STATE_ERROR_COULD_NOT_MOUNT = 21, +
+  AOBB_STATE_ERROR_COULD_NOT_UNMOUNT = 22, +AOBB_STATE_ERROR_NOT_MOUNTED = 23, +AOBB_STATE_ERROR_ALREADY_MOUNTED = 24, +AOBB_STATE_ERROR_PERMISSION_DENIED = 25 +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

AObbInfoAObbScanner_getObbInfo (const char *filename)
 
void AObbInfo_delete (AObbInfo *obbInfo)
 
const char * AObbInfo_getPackageName (AObbInfo *obbInfo)
 
int32_t AObbInfo_getVersion (AObbInfo *obbInfo)
 
int32_t AObbInfo_getFlags (AObbInfo *obbInfo)
 
AStorageManagerAStorageManager_new ()
 
void AStorageManager_delete (AStorageManager *mgr)
 
void AStorageManager_mountObb (AStorageManager *mgr, const char *filename, const char *key, AStorageManager_obbCallbackFunc cb, void *data)
 
void AStorageManager_unmountObb (AStorageManager *mgr, const char *filename, const int force, AStorageManager_obbCallbackFunc cb, void *data)
 
int AStorageManager_isObbMounted (AStorageManager *mgr, const char *filename)
 
const char * AStorageManager_getMountedObbPath (AStorageManager *mgr, const char *filename)
 
+

Detailed Description

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct AObbInfo AObbInfo
+
+

AObbInfo is an opaque type representing information for obb storage.

+ +
+
+ +
+
+ + + + +
typedef struct AStorageManager AStorageManager
+
+

AStorageManager manages application OBB storage, a pointer can be obtained with AStorageManager_new().

+ +
+
+ +
+
+ + + + +
typedef void(* AStorageManager_obbCallbackFunc)(const char *filename, const int32_t state, void *data)
+
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
anonymous enum
+
+

Flag for an obb file, returned by AObbInfo_getFlags().

+ + +
Enumerator
AOBBINFO_OVERLAY  +

overlay

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

The different states of a OBB storage passed to AStorageManager_obbCallbackFunc().

+ + + + + + + + + +
Enumerator
AOBB_STATE_MOUNTED  +

The OBB container is now mounted and ready for use. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_UNMOUNTED  +

The OBB container is now unmounted and not usable. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_INTERNAL  +

There was an internal system error encountered while trying to mount the OBB. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_COULD_NOT_MOUNT  +

The OBB could not be mounted by the system. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_COULD_NOT_UNMOUNT  +

The OBB could not be unmounted. This most likely indicates that a file is in use on the OBB. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_NOT_MOUNTED  +

A call was made to unmount the OBB when it was not mounted. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_ALREADY_MOUNTED  +

The OBB has already been mounted. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
AOBB_STATE_ERROR_PERMISSION_DENIED  +

The current application does not have permission to use this OBB. This could be because the OBB indicates it's owned by a different package. Can be returned as the status for callbacks made during asynchronous OBB actions.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void AObbInfo_delete (AObbInfoobbInfo)
+
+

Destroy the AObbInfo object. You must call this when finished with the object.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AObbInfo_getFlags (AObbInfoobbInfo)
+
+

Get the flags of an OBB file.

+ +
+
+ +
+
+ + + + + + + + +
const char* AObbInfo_getPackageName (AObbInfoobbInfo)
+
+

Get the package name for the OBB.

+ +
+
+ +
+
+ + + + + + + + +
int32_t AObbInfo_getVersion (AObbInfoobbInfo)
+
+

Get the version of an OBB file.

+ +
+
+ +
+
+ + + + + + + + +
AObbInfo* AObbScanner_getObbInfo (const char * filename)
+
+

Scan an OBB and get information about it.

+ +
+
+ +
+
+ + + + + + + + +
void AStorageManager_delete (AStorageManagermgr)
+
+

Release AStorageManager instance.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
const char* AStorageManager_getMountedObbPath (AStorageManagermgr,
const char * filename 
)
+
+

Get the mounted path for an OBB.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int AStorageManager_isObbMounted (AStorageManagermgr,
const char * filename 
)
+
+

Check whether an OBB is mounted.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void AStorageManager_mountObb (AStorageManagermgr,
const char * filename,
const char * key,
AStorageManager_obbCallbackFunc cb,
void * data 
)
+
+

Attempts to mount an OBB file. This is an asynchronous operation.

+ +
+
+ +
+
+ + + + + + + +
AStorageManager* AStorageManager_new ()
+
+

Obtains a new instance of AStorageManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void AStorageManager_unmountObb (AStorageManagermgr,
const char * filename,
const int force,
AStorageManager_obbCallbackFunc cb,
void * data 
)
+
+

Attempts to unmount an OBB file. This is an asynchronous operation.

+ +
+
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/input_8h.jd b/docs/html-ndk/ndk/reference/input_8h.jd new file mode 100644 index 0000000000000..b614f91013e82 --- /dev/null +++ b/docs/html-ndk/ndk/reference/input_8h.jd @@ -0,0 +1,382 @@ +page.title=input.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
input.h File Reference
+
+
+
#include <stdint.h>
+#include <sys/types.h>
+#include <android/keycodes.h>
+#include <android/looper.h>
+
+ + + +

+Macros

#define AMOTION_EVENT_ACTION_POINTER_INDEX_SHIFT   8
 
+ + + + + +

+Typedefs

typedef struct AInputEvent AInputEvent
 
typedef struct AInputQueue AInputQueue
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  { AKEY_STATE_UNKNOWN = -1, +AKEY_STATE_UP = 0, +AKEY_STATE_DOWN = 1, +AKEY_STATE_VIRTUAL = 2 + }
 
enum  {
+  AMETA_NONE = 0, +AMETA_ALT_ON = 0x02, +AMETA_ALT_LEFT_ON = 0x10, +AMETA_ALT_RIGHT_ON = 0x20, +
+  AMETA_SHIFT_ON = 0x01, +AMETA_SHIFT_LEFT_ON = 0x40, +AMETA_SHIFT_RIGHT_ON = 0x80, +AMETA_SYM_ON = 0x04, +
+  AMETA_FUNCTION_ON = 0x08, +AMETA_CTRL_ON = 0x1000, +AMETA_CTRL_LEFT_ON = 0x2000, +AMETA_CTRL_RIGHT_ON = 0x4000, +
+  AMETA_META_ON = 0x10000, +AMETA_META_LEFT_ON = 0x20000, +AMETA_META_RIGHT_ON = 0x40000, +AMETA_CAPS_LOCK_ON = 0x100000, +
+  AMETA_NUM_LOCK_ON = 0x200000, +AMETA_SCROLL_LOCK_ON = 0x400000 +
+ }
 
enum  { AINPUT_EVENT_TYPE_KEY = 1, +AINPUT_EVENT_TYPE_MOTION = 2 + }
 
enum  { AKEY_EVENT_ACTION_DOWN = 0, +AKEY_EVENT_ACTION_UP = 1, +AKEY_EVENT_ACTION_MULTIPLE = 2 + }
 
enum  {
+  AKEY_EVENT_FLAG_WOKE_HERE = 0x1, +AKEY_EVENT_FLAG_SOFT_KEYBOARD = 0x2, +AKEY_EVENT_FLAG_KEEP_TOUCH_MODE = 0x4, +AKEY_EVENT_FLAG_FROM_SYSTEM = 0x8, +
+  AKEY_EVENT_FLAG_EDITOR_ACTION = 0x10, +AKEY_EVENT_FLAG_CANCELED = 0x20, +AKEY_EVENT_FLAG_VIRTUAL_HARD_KEY = 0x40, +AKEY_EVENT_FLAG_LONG_PRESS = 0x80, +
+  AKEY_EVENT_FLAG_CANCELED_LONG_PRESS = 0x100, +AKEY_EVENT_FLAG_TRACKING = 0x200, +AKEY_EVENT_FLAG_FALLBACK = 0x400 +
+ }
 
enum  {
+  AMOTION_EVENT_ACTION_MASK = 0xff, +AMOTION_EVENT_ACTION_POINTER_INDEX_MASK = 0xff00, +AMOTION_EVENT_ACTION_DOWN = 0, +AMOTION_EVENT_ACTION_UP = 1, +
+  AMOTION_EVENT_ACTION_MOVE = 2, +AMOTION_EVENT_ACTION_CANCEL = 3, +AMOTION_EVENT_ACTION_OUTSIDE = 4, +AMOTION_EVENT_ACTION_POINTER_DOWN = 5, +
+  AMOTION_EVENT_ACTION_POINTER_UP = 6, +AMOTION_EVENT_ACTION_HOVER_MOVE = 7, +AMOTION_EVENT_ACTION_SCROLL = 8, +AMOTION_EVENT_ACTION_HOVER_ENTER = 9, +
+  AMOTION_EVENT_ACTION_HOVER_EXIT = 10 +
+ }
 
enum  { AMOTION_EVENT_FLAG_WINDOW_IS_OBSCURED = 0x1 + }
 
enum  {
+  AMOTION_EVENT_EDGE_FLAG_NONE = 0, +AMOTION_EVENT_EDGE_FLAG_TOP = 0x01, +AMOTION_EVENT_EDGE_FLAG_BOTTOM = 0x02, +AMOTION_EVENT_EDGE_FLAG_LEFT = 0x04, +
+  AMOTION_EVENT_EDGE_FLAG_RIGHT = 0x08 +
+ }
 
enum  {
+  AMOTION_EVENT_AXIS_X = 0, +AMOTION_EVENT_AXIS_Y = 1, +AMOTION_EVENT_AXIS_PRESSURE = 2, +AMOTION_EVENT_AXIS_SIZE = 3, +
+  AMOTION_EVENT_AXIS_TOUCH_MAJOR = 4, +AMOTION_EVENT_AXIS_TOUCH_MINOR = 5, +AMOTION_EVENT_AXIS_TOOL_MAJOR = 6, +AMOTION_EVENT_AXIS_TOOL_MINOR = 7, +
+  AMOTION_EVENT_AXIS_ORIENTATION = 8, +AMOTION_EVENT_AXIS_VSCROLL = 9, +AMOTION_EVENT_AXIS_HSCROLL = 10, +AMOTION_EVENT_AXIS_Z = 11, +
+  AMOTION_EVENT_AXIS_RX = 12, +AMOTION_EVENT_AXIS_RY = 13, +AMOTION_EVENT_AXIS_RZ = 14, +AMOTION_EVENT_AXIS_HAT_X = 15, +
+  AMOTION_EVENT_AXIS_HAT_Y = 16, +AMOTION_EVENT_AXIS_LTRIGGER = 17, +AMOTION_EVENT_AXIS_RTRIGGER = 18, +AMOTION_EVENT_AXIS_THROTTLE = 19, +
+  AMOTION_EVENT_AXIS_RUDDER = 20, +AMOTION_EVENT_AXIS_WHEEL = 21, +AMOTION_EVENT_AXIS_GAS = 22, +AMOTION_EVENT_AXIS_BRAKE = 23, +
+  AMOTION_EVENT_AXIS_DISTANCE = 24, +AMOTION_EVENT_AXIS_TILT = 25, +AMOTION_EVENT_AXIS_GENERIC_1 = 32, +AMOTION_EVENT_AXIS_GENERIC_2 = 33, +
+  AMOTION_EVENT_AXIS_GENERIC_3 = 34, +AMOTION_EVENT_AXIS_GENERIC_4 = 35, +AMOTION_EVENT_AXIS_GENERIC_5 = 36, +AMOTION_EVENT_AXIS_GENERIC_6 = 37, +
+  AMOTION_EVENT_AXIS_GENERIC_7 = 38, +AMOTION_EVENT_AXIS_GENERIC_8 = 39, +AMOTION_EVENT_AXIS_GENERIC_9 = 40, +AMOTION_EVENT_AXIS_GENERIC_10 = 41, +
+  AMOTION_EVENT_AXIS_GENERIC_11 = 42, +AMOTION_EVENT_AXIS_GENERIC_12 = 43, +AMOTION_EVENT_AXIS_GENERIC_13 = 44, +AMOTION_EVENT_AXIS_GENERIC_14 = 45, +
+  AMOTION_EVENT_AXIS_GENERIC_15 = 46, +AMOTION_EVENT_AXIS_GENERIC_16 = 47 +
+ }
 
enum  {
+  AMOTION_EVENT_BUTTON_PRIMARY = 1 << 0, +AMOTION_EVENT_BUTTON_SECONDARY = 1 << 1, +AMOTION_EVENT_BUTTON_TERTIARY = 1 << 2, +AMOTION_EVENT_BUTTON_BACK = 1 << 3, +
+  AMOTION_EVENT_BUTTON_FORWARD = 1 << 4 +
+ }
 
enum  {
+  AMOTION_EVENT_TOOL_TYPE_UNKNOWN = 0, +AMOTION_EVENT_TOOL_TYPE_FINGER = 1, +AMOTION_EVENT_TOOL_TYPE_STYLUS = 2, +AMOTION_EVENT_TOOL_TYPE_MOUSE = 3, +
+  AMOTION_EVENT_TOOL_TYPE_ERASER = 4 +
+ }
 
enum  {
+  AINPUT_SOURCE_CLASS_MASK = 0x000000ff, +AINPUT_SOURCE_CLASS_NONE = 0x00000000, +AINPUT_SOURCE_CLASS_BUTTON = 0x00000001, +AINPUT_SOURCE_CLASS_POINTER = 0x00000002, +
+  AINPUT_SOURCE_CLASS_NAVIGATION = 0x00000004, +AINPUT_SOURCE_CLASS_POSITION = 0x00000008, +AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 +
+ }
 
enum  {
+  AINPUT_SOURCE_UNKNOWN = 0x00000000, +AINPUT_SOURCE_KEYBOARD = 0x00000100 | AINPUT_SOURCE_CLASS_BUTTON, +AINPUT_SOURCE_DPAD = 0x00000200 | AINPUT_SOURCE_CLASS_BUTTON, +AINPUT_SOURCE_GAMEPAD = 0x00000400 | AINPUT_SOURCE_CLASS_BUTTON, +
+  AINPUT_SOURCE_TOUCHSCREEN = 0x00001000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_MOUSE = 0x00002000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_STYLUS = 0x00004000 | AINPUT_SOURCE_CLASS_POINTER, +AINPUT_SOURCE_TRACKBALL = 0x00010000 | AINPUT_SOURCE_CLASS_NAVIGATION, +
+  AINPUT_SOURCE_TOUCHPAD = 0x00100000 | AINPUT_SOURCE_CLASS_POSITION, +AINPUT_SOURCE_TOUCH_NAVIGATION = 0x00200000 | AINPUT_SOURCE_CLASS_NONE, +AINPUT_SOURCE_JOYSTICK = 0x01000000 | AINPUT_SOURCE_CLASS_JOYSTICK, +AINPUT_SOURCE_ANY = 0xffffff00 +
+ }
 
enum  { AINPUT_KEYBOARD_TYPE_NONE = 0, +AINPUT_KEYBOARD_TYPE_NON_ALPHABETIC = 1, +AINPUT_KEYBOARD_TYPE_ALPHABETIC = 2 + }
 
enum  {
+  AINPUT_MOTION_RANGE_X = AMOTION_EVENT_AXIS_X, +AINPUT_MOTION_RANGE_Y = AMOTION_EVENT_AXIS_Y, +AINPUT_MOTION_RANGE_PRESSURE = AMOTION_EVENT_AXIS_PRESSURE, +AINPUT_MOTION_RANGE_SIZE = AMOTION_EVENT_AXIS_SIZE, +
+  AINPUT_MOTION_RANGE_TOUCH_MAJOR = AMOTION_EVENT_AXIS_TOUCH_MAJOR, +AINPUT_MOTION_RANGE_TOUCH_MINOR = AMOTION_EVENT_AXIS_TOUCH_MINOR, +AINPUT_MOTION_RANGE_TOOL_MAJOR = AMOTION_EVENT_AXIS_TOOL_MAJOR, +AINPUT_MOTION_RANGE_TOOL_MINOR = AMOTION_EVENT_AXIS_TOOL_MINOR, +
+  AINPUT_MOTION_RANGE_ORIENTATION = AMOTION_EVENT_AXIS_ORIENTATION +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

int32_t AInputEvent_getType (const AInputEvent *event)
 
int32_t AInputEvent_getDeviceId (const AInputEvent *event)
 
int32_t AInputEvent_getSource (const AInputEvent *event)
 
int32_t AKeyEvent_getAction (const AInputEvent *key_event)
 
int32_t AKeyEvent_getFlags (const AInputEvent *key_event)
 
int32_t AKeyEvent_getKeyCode (const AInputEvent *key_event)
 
int32_t AKeyEvent_getScanCode (const AInputEvent *key_event)
 
int32_t AKeyEvent_getMetaState (const AInputEvent *key_event)
 
int32_t AKeyEvent_getRepeatCount (const AInputEvent *key_event)
 
int64_t AKeyEvent_getDownTime (const AInputEvent *key_event)
 
int64_t AKeyEvent_getEventTime (const AInputEvent *key_event)
 
int32_t AMotionEvent_getAction (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getFlags (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getMetaState (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getButtonState (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getEdgeFlags (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getDownTime (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getEventTime (const AInputEvent *motion_event)
 
float AMotionEvent_getXOffset (const AInputEvent *motion_event)
 
float AMotionEvent_getYOffset (const AInputEvent *motion_event)
 
float AMotionEvent_getXPrecision (const AInputEvent *motion_event)
 
float AMotionEvent_getYPrecision (const AInputEvent *motion_event)
 
size_t AMotionEvent_getPointerCount (const AInputEvent *motion_event)
 
int32_t AMotionEvent_getPointerId (const AInputEvent *motion_event, size_t pointer_index)
 
int32_t AMotionEvent_getToolType (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getRawX (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getRawY (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getX (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getY (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getPressure (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getSize (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getTouchMajor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getTouchMinor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getToolMajor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getToolMinor (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getOrientation (const AInputEvent *motion_event, size_t pointer_index)
 
float AMotionEvent_getAxisValue (const AInputEvent *motion_event, int32_t axis, size_t pointer_index)
 
size_t AMotionEvent_getHistorySize (const AInputEvent *motion_event)
 
int64_t AMotionEvent_getHistoricalEventTime (const AInputEvent *motion_event, size_t history_index)
 
float AMotionEvent_getHistoricalRawX (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalRawY (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalX (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalY (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalPressure (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalSize (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalTouchMajor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalTouchMinor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalToolMajor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalToolMinor (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalOrientation (const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
 
float AMotionEvent_getHistoricalAxisValue (const AInputEvent *motion_event, int32_t axis, size_t pointer_index, size_t history_index)
 
void AInputQueue_attachLooper (AInputQueue *queue, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data)
 
void AInputQueue_detachLooper (AInputQueue *queue)
 
int32_t AInputQueue_hasEvents (AInputQueue *queue)
 
int32_t AInputQueue_getEvent (AInputQueue *queue, AInputEvent **outEvent)
 
int32_t AInputQueue_preDispatchEvent (AInputQueue *queue, AInputEvent *event)
 
void AInputQueue_finishEvent (AInputQueue *queue, AInputEvent *event, int handled)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/keycodes_8h.jd b/docs/html-ndk/ndk/reference/keycodes_8h.jd new file mode 100644 index 0000000000000..b7398206281ec --- /dev/null +++ b/docs/html-ndk/ndk/reference/keycodes_8h.jd @@ -0,0 +1,358 @@ +page.title=keycodes.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
keycodes.h File Reference
+
+
+
#include <sys/types.h>
+
+ + + +

+Enumerations

enum  {
+  AKEYCODE_UNKNOWN = 0, +AKEYCODE_SOFT_LEFT = 1, +AKEYCODE_SOFT_RIGHT = 2, +AKEYCODE_HOME = 3, +
+  AKEYCODE_BACK = 4, +AKEYCODE_CALL = 5, +AKEYCODE_ENDCALL = 6, +AKEYCODE_0 = 7, +
+  AKEYCODE_1 = 8, +AKEYCODE_2 = 9, +AKEYCODE_3 = 10, +AKEYCODE_4 = 11, +
+  AKEYCODE_5 = 12, +AKEYCODE_6 = 13, +AKEYCODE_7 = 14, +AKEYCODE_8 = 15, +
+  AKEYCODE_9 = 16, +AKEYCODE_STAR = 17, +AKEYCODE_POUND = 18, +AKEYCODE_DPAD_UP = 19, +
+  AKEYCODE_DPAD_DOWN = 20, +AKEYCODE_DPAD_LEFT = 21, +AKEYCODE_DPAD_RIGHT = 22, +AKEYCODE_DPAD_CENTER = 23, +
+  AKEYCODE_VOLUME_UP = 24, +AKEYCODE_VOLUME_DOWN = 25, +AKEYCODE_POWER = 26, +AKEYCODE_CAMERA = 27, +
+  AKEYCODE_CLEAR = 28, +AKEYCODE_A = 29, +AKEYCODE_B = 30, +AKEYCODE_C = 31, +
+  AKEYCODE_D = 32, +AKEYCODE_E = 33, +AKEYCODE_F = 34, +AKEYCODE_G = 35, +
+  AKEYCODE_H = 36, +AKEYCODE_I = 37, +AKEYCODE_J = 38, +AKEYCODE_K = 39, +
+  AKEYCODE_L = 40, +AKEYCODE_M = 41, +AKEYCODE_N = 42, +AKEYCODE_O = 43, +
+  AKEYCODE_P = 44, +AKEYCODE_Q = 45, +AKEYCODE_R = 46, +AKEYCODE_S = 47, +
+  AKEYCODE_T = 48, +AKEYCODE_U = 49, +AKEYCODE_V = 50, +AKEYCODE_W = 51, +
+  AKEYCODE_X = 52, +AKEYCODE_Y = 53, +AKEYCODE_Z = 54, +AKEYCODE_COMMA = 55, +
+  AKEYCODE_PERIOD = 56, +AKEYCODE_ALT_LEFT = 57, +AKEYCODE_ALT_RIGHT = 58, +AKEYCODE_SHIFT_LEFT = 59, +
+  AKEYCODE_SHIFT_RIGHT = 60, +AKEYCODE_TAB = 61, +AKEYCODE_SPACE = 62, +AKEYCODE_SYM = 63, +
+  AKEYCODE_EXPLORER = 64, +AKEYCODE_ENVELOPE = 65, +AKEYCODE_ENTER = 66, +AKEYCODE_DEL = 67, +
+  AKEYCODE_GRAVE = 68, +AKEYCODE_MINUS = 69, +AKEYCODE_EQUALS = 70, +AKEYCODE_LEFT_BRACKET = 71, +
+  AKEYCODE_RIGHT_BRACKET = 72, +AKEYCODE_BACKSLASH = 73, +AKEYCODE_SEMICOLON = 74, +AKEYCODE_APOSTROPHE = 75, +
+  AKEYCODE_SLASH = 76, +AKEYCODE_AT = 77, +AKEYCODE_NUM = 78, +AKEYCODE_HEADSETHOOK = 79, +
+  AKEYCODE_FOCUS = 80, +AKEYCODE_PLUS = 81, +AKEYCODE_MENU = 82, +AKEYCODE_NOTIFICATION = 83, +
+  AKEYCODE_SEARCH = 84, +AKEYCODE_MEDIA_PLAY_PAUSE = 85, +AKEYCODE_MEDIA_STOP = 86, +AKEYCODE_MEDIA_NEXT = 87, +
+  AKEYCODE_MEDIA_PREVIOUS = 88, +AKEYCODE_MEDIA_REWIND = 89, +AKEYCODE_MEDIA_FAST_FORWARD = 90, +AKEYCODE_MUTE = 91, +
+  AKEYCODE_PAGE_UP = 92, +AKEYCODE_PAGE_DOWN = 93, +AKEYCODE_PICTSYMBOLS = 94, +AKEYCODE_SWITCH_CHARSET = 95, +
+  AKEYCODE_BUTTON_A = 96, +AKEYCODE_BUTTON_B = 97, +AKEYCODE_BUTTON_C = 98, +AKEYCODE_BUTTON_X = 99, +
+  AKEYCODE_BUTTON_Y = 100, +AKEYCODE_BUTTON_Z = 101, +AKEYCODE_BUTTON_L1 = 102, +AKEYCODE_BUTTON_R1 = 103, +
+  AKEYCODE_BUTTON_L2 = 104, +AKEYCODE_BUTTON_R2 = 105, +AKEYCODE_BUTTON_THUMBL = 106, +AKEYCODE_BUTTON_THUMBR = 107, +
+  AKEYCODE_BUTTON_START = 108, +AKEYCODE_BUTTON_SELECT = 109, +AKEYCODE_BUTTON_MODE = 110, +AKEYCODE_ESCAPE = 111, +
+  AKEYCODE_FORWARD_DEL = 112, +AKEYCODE_CTRL_LEFT = 113, +AKEYCODE_CTRL_RIGHT = 114, +AKEYCODE_CAPS_LOCK = 115, +
+  AKEYCODE_SCROLL_LOCK = 116, +AKEYCODE_META_LEFT = 117, +AKEYCODE_META_RIGHT = 118, +AKEYCODE_FUNCTION = 119, +
+  AKEYCODE_SYSRQ = 120, +AKEYCODE_BREAK = 121, +AKEYCODE_MOVE_HOME = 122, +AKEYCODE_MOVE_END = 123, +
+  AKEYCODE_INSERT = 124, +AKEYCODE_FORWARD = 125, +AKEYCODE_MEDIA_PLAY = 126, +AKEYCODE_MEDIA_PAUSE = 127, +
+  AKEYCODE_MEDIA_CLOSE = 128, +AKEYCODE_MEDIA_EJECT = 129, +AKEYCODE_MEDIA_RECORD = 130, +AKEYCODE_F1 = 131, +
+  AKEYCODE_F2 = 132, +AKEYCODE_F3 = 133, +AKEYCODE_F4 = 134, +AKEYCODE_F5 = 135, +
+  AKEYCODE_F6 = 136, +AKEYCODE_F7 = 137, +AKEYCODE_F8 = 138, +AKEYCODE_F9 = 139, +
+  AKEYCODE_F10 = 140, +AKEYCODE_F11 = 141, +AKEYCODE_F12 = 142, +AKEYCODE_NUM_LOCK = 143, +
+  AKEYCODE_NUMPAD_0 = 144, +AKEYCODE_NUMPAD_1 = 145, +AKEYCODE_NUMPAD_2 = 146, +AKEYCODE_NUMPAD_3 = 147, +
+  AKEYCODE_NUMPAD_4 = 148, +AKEYCODE_NUMPAD_5 = 149, +AKEYCODE_NUMPAD_6 = 150, +AKEYCODE_NUMPAD_7 = 151, +
+  AKEYCODE_NUMPAD_8 = 152, +AKEYCODE_NUMPAD_9 = 153, +AKEYCODE_NUMPAD_DIVIDE = 154, +AKEYCODE_NUMPAD_MULTIPLY = 155, +
+  AKEYCODE_NUMPAD_SUBTRACT = 156, +AKEYCODE_NUMPAD_ADD = 157, +AKEYCODE_NUMPAD_DOT = 158, +AKEYCODE_NUMPAD_COMMA = 159, +
+  AKEYCODE_NUMPAD_ENTER = 160, +AKEYCODE_NUMPAD_EQUALS = 161, +AKEYCODE_NUMPAD_LEFT_PAREN = 162, +AKEYCODE_NUMPAD_RIGHT_PAREN = 163, +
+  AKEYCODE_VOLUME_MUTE = 164, +AKEYCODE_INFO = 165, +AKEYCODE_CHANNEL_UP = 166, +AKEYCODE_CHANNEL_DOWN = 167, +
+  AKEYCODE_ZOOM_IN = 168, +AKEYCODE_ZOOM_OUT = 169, +AKEYCODE_TV = 170, +AKEYCODE_WINDOW = 171, +
+  AKEYCODE_GUIDE = 172, +AKEYCODE_DVR = 173, +AKEYCODE_BOOKMARK = 174, +AKEYCODE_CAPTIONS = 175, +
+  AKEYCODE_SETTINGS = 176, +AKEYCODE_TV_POWER = 177, +AKEYCODE_TV_INPUT = 178, +AKEYCODE_STB_POWER = 179, +
+  AKEYCODE_STB_INPUT = 180, +AKEYCODE_AVR_POWER = 181, +AKEYCODE_AVR_INPUT = 182, +AKEYCODE_PROG_RED = 183, +
+  AKEYCODE_PROG_GREEN = 184, +AKEYCODE_PROG_YELLOW = 185, +AKEYCODE_PROG_BLUE = 186, +AKEYCODE_APP_SWITCH = 187, +
+  AKEYCODE_BUTTON_1 = 188, +AKEYCODE_BUTTON_2 = 189, +AKEYCODE_BUTTON_3 = 190, +AKEYCODE_BUTTON_4 = 191, +
+  AKEYCODE_BUTTON_5 = 192, +AKEYCODE_BUTTON_6 = 193, +AKEYCODE_BUTTON_7 = 194, +AKEYCODE_BUTTON_8 = 195, +
+  AKEYCODE_BUTTON_9 = 196, +AKEYCODE_BUTTON_10 = 197, +AKEYCODE_BUTTON_11 = 198, +AKEYCODE_BUTTON_12 = 199, +
+  AKEYCODE_BUTTON_13 = 200, +AKEYCODE_BUTTON_14 = 201, +AKEYCODE_BUTTON_15 = 202, +AKEYCODE_BUTTON_16 = 203, +
+  AKEYCODE_LANGUAGE_SWITCH = 204, +AKEYCODE_MANNER_MODE = 205, +AKEYCODE_3D_MODE = 206, +AKEYCODE_CONTACTS = 207, +
+  AKEYCODE_CALENDAR = 208, +AKEYCODE_MUSIC = 209, +AKEYCODE_CALCULATOR = 210, +AKEYCODE_ZENKAKU_HANKAKU = 211, +
+  AKEYCODE_EISU = 212, +AKEYCODE_MUHENKAN = 213, +AKEYCODE_HENKAN = 214, +AKEYCODE_KATAKANA_HIRAGANA = 215, +
+  AKEYCODE_YEN = 216, +AKEYCODE_RO = 217, +AKEYCODE_KANA = 218, +AKEYCODE_ASSIST = 219, +
+  AKEYCODE_BRIGHTNESS_DOWN = 220, +AKEYCODE_BRIGHTNESS_UP = 221, +AKEYCODE_MEDIA_AUDIO_TRACK = 222, +AKEYCODE_SLEEP = 223, +
+  AKEYCODE_WAKEUP = 224, +AKEYCODE_PAIRING = 225, +AKEYCODE_MEDIA_TOP_MENU = 226, +AKEYCODE_11 = 227, +
+  AKEYCODE_12 = 228, +AKEYCODE_LAST_CHANNEL = 229, +AKEYCODE_TV_DATA_SERVICE = 230, +AKEYCODE_VOICE_ASSIST = 231, +
+  AKEYCODE_TV_RADIO_SERVICE = 232, +AKEYCODE_TV_TELETEXT = 233, +AKEYCODE_TV_NUMBER_ENTRY = 234, +AKEYCODE_TV_TERRESTRIAL_ANALOG = 235, +
+  AKEYCODE_TV_TERRESTRIAL_DIGITAL = 236, +AKEYCODE_TV_SATELLITE = 237, +AKEYCODE_TV_SATELLITE_BS = 238, +AKEYCODE_TV_SATELLITE_CS = 239, +
+  AKEYCODE_TV_SATELLITE_SERVICE = 240, +AKEYCODE_TV_NETWORK = 241, +AKEYCODE_TV_ANTENNA_CABLE = 242, +AKEYCODE_TV_INPUT_HDMI_1 = 243, +
+  AKEYCODE_TV_INPUT_HDMI_2 = 244, +AKEYCODE_TV_INPUT_HDMI_3 = 245, +AKEYCODE_TV_INPUT_HDMI_4 = 246, +AKEYCODE_TV_INPUT_COMPOSITE_1 = 247, +
+  AKEYCODE_TV_INPUT_COMPOSITE_2 = 248, +AKEYCODE_TV_INPUT_COMPONENT_1 = 249, +AKEYCODE_TV_INPUT_COMPONENT_2 = 250, +AKEYCODE_TV_INPUT_VGA_1 = 251, +
+  AKEYCODE_TV_AUDIO_DESCRIPTION = 252, +AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP = 253, +AKEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN = 254, +AKEYCODE_TV_ZOOM_MODE = 255, +
+  AKEYCODE_TV_CONTENTS_MENU = 256, +AKEYCODE_TV_MEDIA_CONTEXT_MENU = 257, +AKEYCODE_TV_TIMER_PROGRAMMING = 258, +AKEYCODE_HELP = 259 +
+ }
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/looper_8h.jd b/docs/html-ndk/ndk/reference/looper_8h.jd new file mode 100644 index 0000000000000..cb4dbdde6baba --- /dev/null +++ b/docs/html-ndk/ndk/reference/looper_8h.jd @@ -0,0 +1,78 @@ +page.title=looper.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
looper.h File Reference
+
+
+ + + + + + +

+Typedefs

typedef struct ALooper ALooper
 
typedef int(* ALooper_callbackFunc )(int fd, int events, void *data)
 
+ + + + + + + +

+Enumerations

enum  { ALOOPER_PREPARE_ALLOW_NON_CALLBACKS = 1<<0 + }
 
enum  { ALOOPER_POLL_WAKE = -1, +ALOOPER_POLL_CALLBACK = -2, +ALOOPER_POLL_TIMEOUT = -3, +ALOOPER_POLL_ERROR = -4 + }
 
enum  {
+  ALOOPER_EVENT_INPUT = 1 << 0, +ALOOPER_EVENT_OUTPUT = 1 << 1, +ALOOPER_EVENT_ERROR = 1 << 2, +ALOOPER_EVENT_HANGUP = 1 << 3, +
+  ALOOPER_EVENT_INVALID = 1 << 4 +
+ }
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

ALooperALooper_forThread ()
 
ALooperALooper_prepare (int opts)
 
void ALooper_acquire (ALooper *looper)
 
void ALooper_release (ALooper *looper)
 
int ALooper_pollOnce (int timeoutMillis, int *outFd, int *outEvents, void **outData)
 
int ALooper_pollAll (int timeoutMillis, int *outFd, int *outEvents, void **outData)
 
void ALooper_wake (ALooper *looper)
 
int ALooper_addFd (ALooper *looper, int fd, int ident, int events, ALooper_callbackFunc callback, void *data)
 
int ALooper_removeFd (ALooper *looper, int fd)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/modules.jd b/docs/html-ndk/ndk/reference/modules.jd new file mode 100644 index 0000000000000..cebd7afa7c7c6 --- /dev/null +++ b/docs/html-ndk/ndk/reference/modules.jd @@ -0,0 +1,31 @@ +page.title=Modules +page.customHeadTag= +@jd:body + + +
+
+
Modules
+
+
+
Here is a list of all modules:
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/native__activity_8h.jd b/docs/html-ndk/ndk/reference/native__activity_8h.jd new file mode 100644 index 0000000000000..b88d821a89da5 --- /dev/null +++ b/docs/html-ndk/ndk/reference/native__activity_8h.jd @@ -0,0 +1,82 @@ +page.title=native_activity.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
native_activity.h File Reference
+
+
+
#include <stdint.h>
+#include <sys/types.h>
+#include <jni.h>
+#include <android/asset_manager.h>
+#include <android/input.h>
+#include <android/native_window.h>
+
+ + + + + +

+Data Structures

struct  ANativeActivity
 
struct  ANativeActivityCallbacks
 
+ + + + + + + +

+Typedefs

typedef struct ANativeActivity ANativeActivity
 
typedef struct
+ANativeActivityCallbacks 
ANativeActivityCallbacks
 
typedef void ANativeActivity_createFunc (ANativeActivity *activity, void *savedState, size_t savedStateSize)
 
+ + + + + +

+Enumerations

enum  { ANATIVEACTIVITY_SHOW_SOFT_INPUT_IMPLICIT = 0x0001, +ANATIVEACTIVITY_SHOW_SOFT_INPUT_FORCED = 0x0002 + }
 
enum  { ANATIVEACTIVITY_HIDE_SOFT_INPUT_IMPLICIT_ONLY = 0x0001, +ANATIVEACTIVITY_HIDE_SOFT_INPUT_NOT_ALWAYS = 0x0002 + }
 
+ + + + + + + + + + + +

+Functions

void ANativeActivity_finish (ANativeActivity *activity)
 
void ANativeActivity_setWindowFormat (ANativeActivity *activity, int32_t format)
 
void ANativeActivity_setWindowFlags (ANativeActivity *activity, uint32_t addFlags, uint32_t removeFlags)
 
void ANativeActivity_showSoftInput (ANativeActivity *activity, uint32_t flags)
 
void ANativeActivity_hideSoftInput (ANativeActivity *activity, uint32_t flags)
 
+ + + +

+Variables

ANativeActivity_createFunc ANativeActivity_onCreate
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/native__window_8h.jd b/docs/html-ndk/ndk/reference/native__window_8h.jd new file mode 100644 index 0000000000000..a194a23e2160d --- /dev/null +++ b/docs/html-ndk/ndk/reference/native__window_8h.jd @@ -0,0 +1,69 @@ +page.title=native_window.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
native_window.h File Reference
+
+
+
#include <android/rect.h>
+
+ + + +

+Data Structures

struct  ANativeWindow_Buffer
 
+ + + + + +

+Typedefs

typedef struct ANativeWindow ANativeWindow
 
typedef struct ANativeWindow_Buffer ANativeWindow_Buffer
 
+ + + +

+Enumerations

enum  { WINDOW_FORMAT_RGBA_8888 = 1, +WINDOW_FORMAT_RGBX_8888 = 2, +WINDOW_FORMAT_RGB_565 = 4 + }
 
+ + + + + + + + + + + + + + + + + +

+Functions

void ANativeWindow_acquire (ANativeWindow *window)
 
void ANativeWindow_release (ANativeWindow *window)
 
int32_t ANativeWindow_getWidth (ANativeWindow *window)
 
int32_t ANativeWindow_getHeight (ANativeWindow *window)
 
int32_t ANativeWindow_getFormat (ANativeWindow *window)
 
int32_t ANativeWindow_setBuffersGeometry (ANativeWindow *window, int32_t width, int32_t height, int32_t format)
 
int32_t ANativeWindow_lock (ANativeWindow *window, ANativeWindow_Buffer *outBuffer, ARect *inOutDirtyBounds)
 
int32_t ANativeWindow_unlockAndPost (ANativeWindow *window)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/native__window__jni_8h.jd b/docs/html-ndk/ndk/reference/native__window__jni_8h.jd new file mode 100644 index 0000000000000..e937fdf5456bb --- /dev/null +++ b/docs/html-ndk/ndk/reference/native__window__jni_8h.jd @@ -0,0 +1,33 @@ +page.title=native_window_jni.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
native_window_jni.h File Reference
+
+
+
#include <android/native_window.h>
+#include <jni.h>
+
+ + + +

+Functions

ANativeWindowANativeWindow_fromSurface (JNIEnv *env, jobject surface)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/nav_f.png b/docs/html-ndk/ndk/reference/nav_f.png new file mode 100644 index 0000000000000..5ceae878cc8eb Binary files /dev/null and b/docs/html-ndk/ndk/reference/nav_f.png differ diff --git a/docs/html-ndk/ndk/reference/nav_g.png b/docs/html-ndk/ndk/reference/nav_g.png new file mode 100644 index 0000000000000..2093a237a94f6 Binary files /dev/null and b/docs/html-ndk/ndk/reference/nav_g.png differ diff --git a/docs/html-ndk/ndk/reference/nav_h.png b/docs/html-ndk/ndk/reference/nav_h.png new file mode 100644 index 0000000000000..e619809c4c9c9 Binary files /dev/null and b/docs/html-ndk/ndk/reference/nav_h.png differ diff --git a/docs/html-ndk/ndk/reference/obb_8h.jd b/docs/html-ndk/ndk/reference/obb_8h.jd new file mode 100644 index 0000000000000..53ed28e778a2c --- /dev/null +++ b/docs/html-ndk/ndk/reference/obb_8h.jd @@ -0,0 +1,53 @@ +page.title=obb.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
obb.h File Reference
+
+
+
#include <sys/types.h>
+
+ + + +

+Typedefs

typedef struct AObbInfo AObbInfo
 
+ + + +

+Enumerations

enum  { AOBBINFO_OVERLAY = 0x0001 + }
 
+ + + + + + + + + + + +

+Functions

AObbInfoAObbScanner_getObbInfo (const char *filename)
 
void AObbInfo_delete (AObbInfo *obbInfo)
 
const char * AObbInfo_getPackageName (AObbInfo *obbInfo)
 
int32_t AObbInfo_getVersion (AObbInfo *obbInfo)
 
int32_t AObbInfo_getFlags (AObbInfo *obbInfo)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/open.png b/docs/html-ndk/ndk/reference/open.png new file mode 100644 index 0000000000000..7e740cc4fde70 Binary files /dev/null and b/docs/html-ndk/ndk/reference/open.png differ diff --git a/docs/html-ndk/ndk/reference/pages.jd b/docs/html-ndk/ndk/reference/pages.jd new file mode 100644 index 0000000000000..16fc5b07e7fdc --- /dev/null +++ b/docs/html-ndk/ndk/reference/pages.jd @@ -0,0 +1,24 @@ +page.title=Related Pages +page.customHeadTag= +@jd:body + + +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/rect_8h.jd b/docs/html-ndk/ndk/reference/rect_8h.jd new file mode 100644 index 0000000000000..d115ea9944b27 --- /dev/null +++ b/docs/html-ndk/ndk/reference/rect_8h.jd @@ -0,0 +1,38 @@ +page.title=rect.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
rect.h File Reference
+
+
+
#include <stdint.h>
+
+ + + +

+Data Structures

struct  ARect
 
+ + + +

+Typedefs

typedef struct ARect ARect
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/sensor_8h.jd b/docs/html-ndk/ndk/reference/sensor_8h.jd new file mode 100644 index 0000000000000..d762797f1c93c --- /dev/null +++ b/docs/html-ndk/ndk/reference/sensor_8h.jd @@ -0,0 +1,151 @@ +page.title=sensor.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
sensor.h File Reference
+
+
+
#include <sys/types.h>
+#include <android/looper.h>
+
+ + + + + + + + + + + +

+Data Structures

struct  ASensorVector
 
struct  AMetaDataEvent
 
struct  AUncalibratedEvent
 
struct  AHeartRateEvent
 
struct  ASensorEvent
 
+ + + + + + + +

+Macros

#define ASENSOR_STANDARD_GRAVITY   (9.80665f)
 
#define ASENSOR_MAGNETIC_FIELD_EARTH_MAX   (60.0f)
 
#define ASENSOR_MAGNETIC_FIELD_EARTH_MIN   (30.0f)
 
+ + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct ASensorVector ASensorVector
 
typedef struct AMetaDataEvent AMetaDataEvent
 
typedef struct AUncalibratedEvent AUncalibratedEvent
 
typedef struct AHeartRateEvent AHeartRateEvent
 
typedef struct ASensorEvent ASensorEvent
 
typedef struct ASensorManager ASensorManager
 
typedef struct ASensorEventQueue ASensorEventQueue
 
typedef struct ASensor ASensor
 
typedef ASensor const * ASensorRef
 
typedef ASensorRef const * ASensorList
 
+ + + + + + + +

+Enumerations

enum  {
+  ASENSOR_TYPE_ACCELEROMETER = 1, +ASENSOR_TYPE_MAGNETIC_FIELD = 2, +ASENSOR_TYPE_GYROSCOPE = 4, +ASENSOR_TYPE_LIGHT = 5, +
+  ASENSOR_TYPE_PROXIMITY = 8 +
+ }
 
enum  {
+  ASENSOR_STATUS_NO_CONTACT = -1, +ASENSOR_STATUS_UNRELIABLE = 0, +ASENSOR_STATUS_ACCURACY_LOW = 1, +ASENSOR_STATUS_ACCURACY_MEDIUM = 2, +
+  ASENSOR_STATUS_ACCURACY_HIGH = 3 +
+ }
 
enum  { AREPORTING_MODE_CONTINUOUS = 0, +AREPORTING_MODE_ON_CHANGE = 1, +AREPORTING_MODE_ONE_SHOT = 2, +AREPORTING_MODE_SPECIAL_TRIGGER = 3 + }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ASensorManagerASensorManager_getInstance ()
 
int ASensorManager_getSensorList (ASensorManager *manager, ASensorList *list)
 
ASensor const * ASensorManager_getDefaultSensor (ASensorManager *manager, int type)
 
ASensor const * ASensorManager_getDefaultSensorEx (ASensorManager *manager, int type, bool wakeUp)
 
ASensorEventQueueASensorManager_createEventQueue (ASensorManager *manager, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data)
 
int ASensorManager_destroyEventQueue (ASensorManager *manager, ASensorEventQueue *queue)
 
int ASensorEventQueue_enableSensor (ASensorEventQueue *queue, ASensor const *sensor)
 
int ASensorEventQueue_disableSensor (ASensorEventQueue *queue, ASensor const *sensor)
 
int ASensorEventQueue_setEventRate (ASensorEventQueue *queue, ASensor const *sensor, int32_t usec)
 
int ASensorEventQueue_hasEvents (ASensorEventQueue *queue)
 
ssize_t ASensorEventQueue_getEvents (ASensorEventQueue *queue, ASensorEvent *events, size_t count)
 
const char * ASensor_getName (ASensor const *sensor)
 
const char * ASensor_getVendor (ASensor const *sensor)
 
int ASensor_getType (ASensor const *sensor)
 
float ASensor_getResolution (ASensor const *sensor)
 
int ASensor_getMinDelay (ASensor const *sensor)
 
int ASensor_getFifoMaxEventCount (ASensor const *sensor)
 
int ASensor_getFifoReservedEventCount (ASensor const *sensor)
 
const char * ASensor_getStringType (ASensor const *sensor)
 
int ASensor_getReportingMode (ASensor const *sensor)
 
bool ASensor_isWakeUpSensor (ASensor const *sensor)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/storage__manager_8h.jd b/docs/html-ndk/ndk/reference/storage__manager_8h.jd new file mode 100644 index 0000000000000..00d04e8562095 --- /dev/null +++ b/docs/html-ndk/ndk/reference/storage__manager_8h.jd @@ -0,0 +1,67 @@ +page.title=storage_manager.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
storage_manager.h File Reference
+
+
+
#include <stdint.h>
+
+ + + + + +

+Typedefs

typedef struct AStorageManager AStorageManager
 
typedef void(* AStorageManager_obbCallbackFunc )(const char *filename, const int32_t state, void *data)
 
+ + + +

+Enumerations

enum  {
+  AOBB_STATE_MOUNTED = 1, +AOBB_STATE_UNMOUNTED = 2, +AOBB_STATE_ERROR_INTERNAL = 20, +AOBB_STATE_ERROR_COULD_NOT_MOUNT = 21, +
+  AOBB_STATE_ERROR_COULD_NOT_UNMOUNT = 22, +AOBB_STATE_ERROR_NOT_MOUNTED = 23, +AOBB_STATE_ERROR_ALREADY_MOUNTED = 24, +AOBB_STATE_ERROR_PERMISSION_DENIED = 25 +
+ }
 
+ + + + + + + + + + + + + +

+Functions

AStorageManagerAStorageManager_new ()
 
void AStorageManager_delete (AStorageManager *mgr)
 
void AStorageManager_mountObb (AStorageManager *mgr, const char *filename, const char *key, AStorageManager_obbCallbackFunc cb, void *data)
 
void AStorageManager_unmountObb (AStorageManager *mgr, const char *filename, const int force, AStorageManager_obbCallbackFunc cb, void *data)
 
int AStorageManager_isObbMounted (AStorageManager *mgr, const char *filename)
 
const char * AStorageManager_getMountedObbPath (AStorageManager *mgr, const char *filename)
 
+
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_heart_rate_event.jd b/docs/html-ndk/ndk/reference/struct_a_heart_rate_event.jd new file mode 100644 index 0000000000000..d15c06bd39917 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_heart_rate_event.jd @@ -0,0 +1,59 @@ +page.title=AHeartRateEvent Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
AHeartRateEvent Struct Reference
+
+
+ +

#include <sensor.h>

+ + + + + + +

+Data Fields

float bpm
 
int8_t status
 
+

Field Documentation

+ +
+
+ + + + +
float bpm
+
+ +
+
+ +
+
+ + + + +
int8_t status
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_meta_data_event.jd b/docs/html-ndk/ndk/reference/struct_a_meta_data_event.jd new file mode 100644 index 0000000000000..1c0ca05b0f436 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_meta_data_event.jd @@ -0,0 +1,59 @@ +page.title=AMetaDataEvent Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
AMetaDataEvent Struct Reference
+
+
+ +

#include <sensor.h>

+ + + + + + +

+Data Fields

int32_t what
 
int32_t sensor
 
+

Field Documentation

+ +
+
+ + + + +
int32_t sensor
+
+ +
+
+ +
+
+ + + + +
int32_t what
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_native_activity.jd b/docs/html-ndk/ndk/reference/struct_a_native_activity.jd new file mode 100644 index 0000000000000..ee4fdca3cfe67 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_native_activity.jd @@ -0,0 +1,185 @@ +page.title=ANativeActivity Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ANativeActivity Struct Reference
+
+
+ +

#include <native_activity.h>

+ + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

struct ANativeActivityCallbackscallbacks
 
JavaVM * vm
 
JNIEnv * env
 
jobject clazz
 
const char * internalDataPath
 
const char * externalDataPath
 
int32_t sdkVersion
 
void * instance
 
AAssetManagerassetManager
 
const char * obbPath
 
+

Detailed Description

+

This structure defines the native side of an android.app.NativeActivity. It is created by the framework, and handed to the application's native code as it is being launched.

+

Field Documentation

+ +
+
+ + + + +
AAssetManager* assetManager
+
+

Pointer to the Asset Manager instance for the application. The application uses this to access binary assets bundled inside its own .apk file.

+ +
+
+ +
+
+ + + + +
struct ANativeActivityCallbacks* callbacks
+
+

Pointer to the callback function table of the native application. You can set the functions here to your own callbacks. The callbacks pointer itself here should not be changed; it is allocated and managed for you by the framework.

+ +
+
+ +
+
+ + + + +
jobject clazz
+
+

The NativeActivity object handle.

+

IMPORTANT NOTE: This member is mis-named. It should really be named 'activity' instead of 'clazz', since it's a reference to the NativeActivity instance created by the system for you.

+

We unfortunately cannot change this without breaking NDK source-compatibility.

+ +
+
+ +
+
+ + + + +
JNIEnv* env
+
+

JNI context for the main thread of the app. Note that this field can ONLY be used from the main thread of the process; that is, the thread that calls into the ANativeActivityCallbacks.

+ +
+
+ +
+
+ + + + +
const char* externalDataPath
+
+

Path to this application's external (removable/mountable) data directory.

+ +
+
+ +
+
+ + + + +
void* instance
+
+

This is the native instance of the application. It is not used by the framework, but can be set by the application to its own instance state.

+ +
+
+ +
+
+ + + + +
const char* internalDataPath
+
+

Path to this application's internal data directory.

+ +
+
+ +
+
+ + + + +
const char* obbPath
+
+

Available starting with Honeycomb: path to the directory containing the application's OBB files (if any). If the app doesn't have any OBB files, this directory may not exist.

+ +
+
+ +
+
+ + + + +
int32_t sdkVersion
+
+

The platform's SDK version code.

+ +
+
+ +
+
+ + + + +
JavaVM* vm
+
+

The global handle on the process's Java VM.

+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_native_activity_callbacks.jd b/docs/html-ndk/ndk/reference/struct_a_native_activity_callbacks.jd new file mode 100644 index 0000000000000..dce9d95879945 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_native_activity_callbacks.jd @@ -0,0 +1,273 @@ +page.title=ANativeActivityCallbacks Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ANativeActivityCallbacks Struct Reference
+
+
+ +

#include <native_activity.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

void(* onStart )(ANativeActivity *activity)
 
void(* onResume )(ANativeActivity *activity)
 
void *(* onSaveInstanceState )(ANativeActivity *activity, size_t *outSize)
 
void(* onPause )(ANativeActivity *activity)
 
void(* onStop )(ANativeActivity *activity)
 
void(* onDestroy )(ANativeActivity *activity)
 
void(* onWindowFocusChanged )(ANativeActivity *activity, int hasFocus)
 
void(* onNativeWindowCreated )(ANativeActivity *activity, ANativeWindow *window)
 
void(* onNativeWindowResized )(ANativeActivity *activity, ANativeWindow *window)
 
void(* onNativeWindowRedrawNeeded )(ANativeActivity *activity, ANativeWindow *window)
 
void(* onNativeWindowDestroyed )(ANativeActivity *activity, ANativeWindow *window)
 
void(* onInputQueueCreated )(ANativeActivity *activity, AInputQueue *queue)
 
void(* onInputQueueDestroyed )(ANativeActivity *activity, AInputQueue *queue)
 
void(* onContentRectChanged )(ANativeActivity *activity, const ARect *rect)
 
void(* onConfigurationChanged )(ANativeActivity *activity)
 
void(* onLowMemory )(ANativeActivity *activity)
 
+

Detailed Description

+

These are the callbacks the framework makes into a native application. All of these callbacks happen on the main thread of the application. By default, all callbacks are NULL; set to a pointer to your own function to have it called.

+

Field Documentation

+ +
+
+ + + + +
void(* onConfigurationChanged)(ANativeActivity *activity)
+
+

The current device AConfiguration has changed. The new configuration can be retrieved from assetManager.

+ +
+
+ +
+
+ + + + +
void(* onContentRectChanged)(ANativeActivity *activity, const ARect *rect)
+
+

The rectangle in the window in which content should be placed has changed.

+ +
+
+ +
+
+ + + + +
void(* onDestroy)(ANativeActivity *activity)
+
+

NativeActivity is being destroyed. See Java documentation for Activity.onDestroy() for more information.

+ +
+
+ +
+
+ + + + +
void(* onInputQueueCreated)(ANativeActivity *activity, AInputQueue *queue)
+
+

The input queue for this native activity's window has been created. You can use the given input queue to start retrieving input events.

+ +
+
+ +
+
+ + + + +
void(* onInputQueueDestroyed)(ANativeActivity *activity, AInputQueue *queue)
+
+

The input queue for this native activity's window is being destroyed. You should no longer try to reference this object upon returning from this function.

+ +
+
+ +
+
+ + + + +
void(* onLowMemory)(ANativeActivity *activity)
+
+

The system is running low on memory. Use this callback to release resources you do not need, to help the system avoid killing more important processes.

+ +
+
+ +
+
+ + + + +
void(* onNativeWindowCreated)(ANativeActivity *activity, ANativeWindow *window)
+
+

The drawing window for this native activity has been created. You can use the given native window object to start drawing.

+ +
+
+ +
+
+ + + + +
void(* onNativeWindowDestroyed)(ANativeActivity *activity, ANativeWindow *window)
+
+

The drawing window for this native activity is going to be destroyed. You MUST ensure that you do not touch the window object after returning from this function: in the common case of drawing to the window from another thread, that means the implementation of this callback must properly synchronize with the other thread to stop its drawing before returning from here.

+ +
+
+ +
+
+ + + + +
void(* onNativeWindowRedrawNeeded)(ANativeActivity *activity, ANativeWindow *window)
+
+

The drawing window for this native activity needs to be redrawn. To avoid transient artifacts during screen changes (such resizing after rotation), applications should not return from this function until they have finished drawing their window in its current state.

+ +
+
+ +
+
+ + + + +
void(* onNativeWindowResized)(ANativeActivity *activity, ANativeWindow *window)
+
+

The drawing window for this native activity has been resized. You should retrieve the new size from the window and ensure that your rendering in it now matches.

+ +
+
+ +
+
+ + + + +
void(* onPause)(ANativeActivity *activity)
+
+

NativeActivity has paused. See Java documentation for Activity.onPause() for more information.

+ +
+
+ +
+
+ + + + +
void(* onResume)(ANativeActivity *activity)
+
+

NativeActivity has resumed. See Java documentation for Activity.onResume() for more information.

+ +
+
+ +
+
+ + + + +
void*(* onSaveInstanceState)(ANativeActivity *activity, size_t *outSize)
+
+

Framework is asking NativeActivity to save its current instance state. See Java documentation for Activity.onSaveInstanceState() for more information. The returned pointer needs to be created with malloc(); the framework will call free() on it for you. You also must fill in outSize with the number of bytes in the allocation. Note that the saved state will be persisted, so it can not contain any active entities (pointers to memory, file descriptors, etc).

+ +
+
+ +
+
+ + + + +
void(* onStart)(ANativeActivity *activity)
+
+

NativeActivity has started. See Java documentation for Activity.onStart() for more information.

+ +
+
+ +
+
+ + + + +
void(* onStop)(ANativeActivity *activity)
+
+

NativeActivity has stopped. See Java documentation for Activity.onStop() for more information.

+ +
+
+ +
+
+ + + + +
void(* onWindowFocusChanged)(ANativeActivity *activity, int hasFocus)
+
+

Focus has changed in this NativeActivity's window. This is often used, for example, to pause a game when it loses input focus.

+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_native_window___buffer.jd b/docs/html-ndk/ndk/reference/struct_a_native_window___buffer.jd new file mode 100644 index 0000000000000..f5a8650c1c2ac --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_native_window___buffer.jd @@ -0,0 +1,118 @@ +page.title=ANativeWindow_Buffer Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ANativeWindow_Buffer Struct Reference
+
+
+ +

#include <native_window.h>

+ + + + + + + + + + + + + + +

+Data Fields

int32_t width
 
int32_t height
 
int32_t stride
 
int32_t format
 
void * bits
 
uint32_t reserved [6]
 
+

Detailed Description

+

ANativeWindow is a struct that represents a windows buffer.

+

A pointer can be obtained using ANativeWindow_lock().

+

Field Documentation

+ +
+
+ + + + +
void* bits
+
+ +
+
+ +
+
+ + + + +
int32_t format
+
+ +
+
+ +
+
+ + + + +
int32_t height
+
+ +
+
+ +
+
+ + + + +
uint32_t reserved[6]
+
+ +
+
+ +
+
+ + + + +
int32_t stride
+
+ +
+
+ +
+
+ + + + +
int32_t width
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_rect.jd b/docs/html-ndk/ndk/reference/struct_a_rect.jd new file mode 100644 index 0000000000000..96a597fc4665b --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_rect.jd @@ -0,0 +1,94 @@ +page.title=ARect Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ARect Struct Reference
+
+
+ +

#include <rect.h>

+ + + + + + + + + + +

+Data Fields

int32_t left
 
int32_t top
 
int32_t right
 
int32_t bottom
 
+

Detailed Description

+

ARect is a struct that represents a rectangular window area.

+

It is used with ANativeActivityCallbacks::onContentRectChanged event callback and ANativeWindow_lock() function.

+

Field Documentation

+ +
+
+ + + + +
int32_t bottom
+
+

bottom position

+ +
+
+ +
+
+ + + + +
int32_t left
+
+

left position

+ +
+
+ +
+
+ + + + +
int32_t right
+
+

left position

+ +
+
+ +
+
+ + + + +
int32_t top
+
+

top position

+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_sensor_event.jd b/docs/html-ndk/ndk/reference/struct_a_sensor_event.jd new file mode 100644 index 0000000000000..9e71233cf9af7 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_sensor_event.jd @@ -0,0 +1,372 @@ +page.title=ASensorEvent Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ASensorEvent Struct Reference
+
+
+ +

#include <sensor.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

int32_t version
 
int32_t sensor
 
int32_t type
 
int32_t reserved0
 
int64_t timestamp
 
union {
   union {
      float   data [16]
 
      ASensorVector   vector
 
      ASensorVector   acceleration
 
      ASensorVector   magnetic
 
      float   temperature
 
      float   distance
 
      float   light
 
      float   pressure
 
      float   relative_humidity
 
      AUncalibratedEvent   uncalibrated_gyro
 
      AUncalibratedEvent   uncalibrated_magnetic
 
      AMetaDataEvent   meta_data
 
      AHeartRateEvent   heart_rate
 
   } 
 
   union {
      uint64_t   data [8]
 
      uint64_t   step_counter
 
   }   u64
 
}; 
 
uint32_t flags
 
int32_t reserved1 [3]
 
+

Field Documentation

+ +
+
+ + + + +
union { ... }
+
+ +
+
+ +
+
+ + + + +
ASensorVector acceleration
+
+ +
+
+ +
+
+ + + + +
float data[16]
+
+ +
+
+ +
+
+ + + + +
uint64_t data[8]
+
+ +
+
+ +
+
+ + + + +
float distance
+
+ +
+
+ +
+
+ + + + +
uint32_t flags
+
+ +
+
+ +
+
+ + + + +
AHeartRateEvent heart_rate
+
+ +
+
+ +
+
+ + + + +
float light
+
+ +
+
+ +
+
+ + + + +
ASensorVector magnetic
+
+ +
+
+ +
+
+ + + + +
AMetaDataEvent meta_data
+
+ +
+
+ +
+
+ + + + +
float pressure
+
+ +
+
+ +
+
+ + + + +
float relative_humidity
+
+ +
+
+ +
+
+ + + + +
int32_t reserved0
+
+ +
+
+ +
+
+ + + + +
int32_t reserved1[3]
+
+ +
+
+ +
+
+ + + + +
int32_t sensor
+
+ +
+
+ +
+
+ + + + +
uint64_t step_counter
+
+ +
+
+ +
+
+ + + + +
float temperature
+
+ +
+
+ +
+
+ + + + +
int64_t timestamp
+
+ +
+
+ +
+
+ + + + +
int32_t type
+
+ +
+
+ +
+
+ + + + +
union { ... } u64
+
+ +
+
+ +
+
+ + + + +
AUncalibratedEvent uncalibrated_gyro
+
+ +
+
+ +
+
+ + + + +
AUncalibratedEvent uncalibrated_magnetic
+
+ +
+
+ +
+
+ + + + +
ASensorVector vector
+
+ +
+
+ +
+
+ + + + +
int32_t version
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_sensor_vector.jd b/docs/html-ndk/ndk/reference/struct_a_sensor_vector.jd new file mode 100644 index 0000000000000..39c76ab9afa1c --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_sensor_vector.jd @@ -0,0 +1,180 @@ +page.title=ASensorVector Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
ASensorVector Struct Reference
+
+
+ +

#include <sensor.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

union {
   float   v [3]
 
   struct {
      float   x
 
      float   y
 
      float   z
 
   } 
 
   struct {
      float   azimuth
 
      float   pitch
 
      float   roll
 
   } 
 
}; 
 
int8_t status
 
uint8_t reserved [3]
 
+

Detailed Description

+

A sensor event.

+

Field Documentation

+ +
+
+ + + + +
union { ... }
+
+ +
+
+ +
+
+ + + + +
float azimuth
+
+ +
+
+ +
+
+ + + + +
float pitch
+
+ +
+
+ +
+
+ + + + +
uint8_t reserved[3]
+
+ +
+
+ +
+
+ + + + +
float roll
+
+ +
+
+ +
+
+ + + + +
int8_t status
+
+ +
+
+ +
+
+ + + + +
float v[3]
+
+ +
+
+ +
+
+ + + + +
float x
+
+ +
+
+ +
+
+ + + + +
float y
+
+ +
+
+ +
+
+ + + + +
float z
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_a_uncalibrated_event.jd b/docs/html-ndk/ndk/reference/struct_a_uncalibrated_event.jd new file mode 100644 index 0000000000000..b4e11da882ca4 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_a_uncalibrated_event.jd @@ -0,0 +1,179 @@ +page.title=AUncalibratedEvent Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
AUncalibratedEvent Struct Reference
+
+
+ +

#include <sensor.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

union {
   float   uncalib [3]
 
   struct {
      float   x_uncalib
 
      float   y_uncalib
 
      float   z_uncalib
 
   } 
 
}; 
 
union {
   float   bias [3]
 
   struct {
      float   x_bias
 
      float   y_bias
 
      float   z_bias
 
   } 
 
}; 
 
+

Field Documentation

+ +
+
+ + + + +
union { ... }
+
+ +
+
+ +
+
+ + + + +
union { ... }
+
+ +
+
+ +
+
+ + + + +
float bias[3]
+
+ +
+
+ +
+
+ + + + +
float uncalib[3]
+
+ +
+
+ +
+
+ + + + +
float x_bias
+
+ +
+
+ +
+
+ + + + +
float x_uncalib
+
+ +
+
+ +
+
+ + + + +
float y_bias
+
+ +
+
+ +
+
+ + + + +
float y_uncalib
+
+ +
+
+ +
+
+ + + + +
float z_bias
+
+ +
+
+ +
+
+ + + + +
float z_uncalib
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/struct_android_bitmap_info.jd b/docs/html-ndk/ndk/reference/struct_android_bitmap_info.jd new file mode 100644 index 0000000000000..13998382624d5 --- /dev/null +++ b/docs/html-ndk/ndk/reference/struct_android_bitmap_info.jd @@ -0,0 +1,108 @@ +page.title=AndroidBitmapInfo Struct Reference +page.customHeadTag= +@jd:body + + +
+ +
+
AndroidBitmapInfo Struct Reference
+
+
+ +

#include <bitmap.h>

+ + + + + + + + + + + + +

+Data Fields

uint32_t width
 
uint32_t height
 
uint32_t stride
 
int32_t format
 
uint32_t flags
 
+

Detailed Description

+

Bitmap info, see AndroidBitmap_getInfo().

+

Field Documentation

+ +
+
+ + + + +
uint32_t flags
+
+

Unused.

+ +
+
+ +
+
+ + + + +
int32_t format
+
+

The bitmap pixel format. See AndroidBitmapFormat

+ +
+
+ +
+
+ + + + +
uint32_t height
+
+

The bitmap height in pixels.

+ +
+
+ +
+
+ + + + +
uint32_t stride
+
+

The number of byte per row.

+ +
+
+ +
+
+ + + + +
uint32_t width
+
+

The bitmap width in pixels.

+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/docs/html-ndk/ndk/reference/sync_off.png b/docs/html-ndk/ndk/reference/sync_off.png new file mode 100644 index 0000000000000..b85662482b4be Binary files /dev/null and b/docs/html-ndk/ndk/reference/sync_off.png differ diff --git a/docs/html-ndk/ndk/reference/sync_on.png b/docs/html-ndk/ndk/reference/sync_on.png new file mode 100644 index 0000000000000..e5044af075745 Binary files /dev/null and b/docs/html-ndk/ndk/reference/sync_on.png differ diff --git a/docs/html-ndk/ndk/reference/tab_a.png b/docs/html-ndk/ndk/reference/tab_a.png new file mode 100644 index 0000000000000..170a784114dae Binary files /dev/null and b/docs/html-ndk/ndk/reference/tab_a.png differ diff --git a/docs/html-ndk/ndk/reference/tab_b.png b/docs/html-ndk/ndk/reference/tab_b.png new file mode 100644 index 0000000000000..777449930576e Binary files /dev/null and b/docs/html-ndk/ndk/reference/tab_b.png differ diff --git a/docs/html-ndk/ndk/reference/tab_h.png b/docs/html-ndk/ndk/reference/tab_h.png new file mode 100644 index 0000000000000..e1dddef1ff1ad Binary files /dev/null and b/docs/html-ndk/ndk/reference/tab_h.png differ diff --git a/docs/html-ndk/ndk/reference/tab_s.png b/docs/html-ndk/ndk/reference/tab_s.png new file mode 100644 index 0000000000000..3dc07b0c370fc Binary files /dev/null and b/docs/html-ndk/ndk/reference/tab_s.png differ diff --git a/docs/html-ndk/ndk/reference/tabs.css b/docs/html-ndk/ndk/reference/tabs.css new file mode 100644 index 0000000000000..71145bb1d98b4 --- /dev/null +++ b/docs/html-ndk/ndk/reference/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #434343; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/docs/html-ndk/ndk/reference/window_8h.jd b/docs/html-ndk/ndk/reference/window_8h.jd new file mode 100644 index 0000000000000..42e98d9132912 --- /dev/null +++ b/docs/html-ndk/ndk/reference/window_8h.jd @@ -0,0 +1,61 @@ +page.title=window.h File Reference +page.customHeadTag= +@jd:body + + + +
+ +
+
window.h File Reference
+
+
+ + + + +

+Enumerations

enum  {
+  AWINDOW_FLAG_ALLOW_LOCK_WHILE_SCREEN_ON = 0x00000001, +AWINDOW_FLAG_DIM_BEHIND = 0x00000002, +AWINDOW_FLAG_BLUR_BEHIND = 0x00000004, +AWINDOW_FLAG_NOT_FOCUSABLE = 0x00000008, +
+  AWINDOW_FLAG_NOT_TOUCHABLE = 0x00000010, +AWINDOW_FLAG_NOT_TOUCH_MODAL = 0x00000020, +AWINDOW_FLAG_TOUCHABLE_WHEN_WAKING = 0x00000040, +AWINDOW_FLAG_KEEP_SCREEN_ON = 0x00000080, +
+  AWINDOW_FLAG_LAYOUT_IN_SCREEN = 0x00000100, +AWINDOW_FLAG_LAYOUT_NO_LIMITS = 0x00000200, +AWINDOW_FLAG_FULLSCREEN = 0x00000400, +AWINDOW_FLAG_FORCE_NOT_FULLSCREEN = 0x00000800, +
+  AWINDOW_FLAG_DITHER = 0x00001000, +AWINDOW_FLAG_SECURE = 0x00002000, +AWINDOW_FLAG_SCALED = 0x00004000, +AWINDOW_FLAG_IGNORE_CHEEK_PRESSES = 0x00008000, +
+  AWINDOW_FLAG_LAYOUT_INSET_DECOR = 0x00010000, +AWINDOW_FLAG_ALT_FOCUSABLE_IM = 0x00020000, +AWINDOW_FLAG_WATCH_OUTSIDE_TOUCH = 0x00040000, +AWINDOW_FLAG_SHOW_WHEN_LOCKED = 0x00080000, +
+  AWINDOW_FLAG_SHOW_WALLPAPER = 0x00100000, +AWINDOW_FLAG_TURN_SCREEN_ON = 0x00200000, +AWINDOW_FLAG_DISMISS_KEYGUARD = 0x00400000 +
+ }
 
+
+ + + +