Modules

Android

moduleSource

Available on Android·since 0.31.0

#import "Android";

Module parameters#

DEFINE_ANDROID_MAIN_AND_CALL_THIS: () -> () = null
A procedure to run as the app's main. When set, the module defines the Android entry points and calls it.
WAIT_TILL_APP_IS_IN_FOREGROUND_TO_CALL_MAIN := true
Waits until the app is in the foreground before calling the main procedure.
USE_GLUE_NATIVE_PORT := true
Uses the module's own native-activity glue.
WARN_ABOUT_SHADOWED_ASSETS := true
Warns when an asset hides another with the same name.
INCLUDE_MEDIA_BINDINGS := false
Includes the bindings for the NDK's media APIs.
INCLUDE_CAMERA_BINDINGS := false
Includes the bindings for the NDK's camera API.

Procedures#

Wrappers#

Declarations#

(timeoutMillis: s32, outFd: *s32, outEvents: *s32, outData: **void) -> s32

Foreign#

(timeoutMillis: s32, outFd: *s32, outEvents: *s32, outData: **void) -> s32

Types#

ACAMERAenumforeignSource
:: enum
TYPE_BYTE
TYPE_INT32
TYPE_FLOAT
TYPE_INT64
TYPE_DOUBLE
TYPE_RATIONAL
NUM_TYPES
:: enum
EXTERIOR_OTHER
EXTERIOR_FRONT
EXTERIOR_REAR
EXTERIOR_LEFT
EXTERIOR_RIGHT
INTERIOR_OTHER
INTERIOR_SEAT_ROW_1_LEFT
INTERIOR_SEAT_ROW_1_CENTER
INTERIOR_SEAT_ROW_1_RIGHT
INTERIOR_SEAT_ROW_2_LEFT
INTERIOR_SEAT_ROW_2_CENTER
INTERIOR_SEAT_ROW_2_RIGHT
INTERIOR_SEAT_ROW_3_LEFT
INTERIOR_SEAT_ROW_3_CENTER
INTERIOR_SEAT_ROW_3_RIGHT
:: enum
COLOR_CORRECTION
CONTROL
DEMOSAIC
EDGE
FLASH
FLASH_INFO
HOT_PIXEL
JPEG
LENS
LENS_INFO
NOISE_REDUCTION
QUIRKS
REQUEST
SCALER
SENSOR
SENSOR_INFO
SHADING
STATISTICS
STATISTICS_INFO
TONEMAP
LED
INFO
BLACK_LEVEL
SYNC
REPROCESS
DEPTH
LOGICAL_MULTI_CAMERA
DISTORTION_CORRECTION
HEIC
HEIC_INFO
AUTOMOTIVE
AUTOMOTIVE_LENS
SECTION_COUNT
VENDOR
:: enum
COLOR_CORRECTION_START
CONTROL_START
DEMOSAIC_START
EDGE_START
FLASH_START
FLASH_INFO_START
HOT_PIXEL_START
JPEG_START
LENS_START
LENS_INFO_START
NOISE_REDUCTION_START
QUIRKS_START
REQUEST_START
SCALER_START
SENSOR_START
SENSOR_INFO_START
SHADING_START
STATISTICS_START
STATISTICS_INFO_START
TONEMAP_START
LED_START
INFO_START
BLACK_LEVEL_START
SYNC_START
REPROCESS_START
DEPTH_START
LOGICAL_MULTI_CAMERA_START
DISTORTION_CORRECTION_START
HEIC_START
HEIC_INFO_START
AUTOMOTIVE_START
AUTOMOTIVE_LENS_START
VENDOR_START
:: enum
COLOR_CORRECTION_MODE
COLOR_CORRECTION_TRANSFORM
COLOR_CORRECTION_GAINS
COLOR_CORRECTION_ABERRATION_MODE
COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES
COLOR_CORRECTION_END
CONTROL_AE_ANTIBANDING_MODE
CONTROL_AE_EXPOSURE_COMPENSATION
CONTROL_AE_LOCK
CONTROL_AE_MODE
CONTROL_AE_REGIONS
CONTROL_AE_TARGET_FPS_RANGE
CONTROL_AE_PRECAPTURE_TRIGGER
CONTROL_AF_MODE
CONTROL_AF_REGIONS
CONTROL_AF_TRIGGER
CONTROL_AWB_LOCK
CONTROL_AWB_MODE
CONTROL_AWB_REGIONS
CONTROL_CAPTURE_INTENT
CONTROL_EFFECT_MODE
CONTROL_MODE
CONTROL_SCENE_MODE
CONTROL_VIDEO_STABILIZATION_MODE
CONTROL_AE_AVAILABLE_ANTIBANDING_MODES
CONTROL_AE_AVAILABLE_MODES
CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES
CONTROL_AE_COMPENSATION_RANGE
CONTROL_AE_COMPENSATION_STEP
CONTROL_AF_AVAILABLE_MODES
CONTROL_AVAILABLE_EFFECTS
CONTROL_AVAILABLE_SCENE_MODES
CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES
CONTROL_AWB_AVAILABLE_MODES
CONTROL_MAX_REGIONS
CONTROL_AE_STATE
CONTROL_AF_STATE
CONTROL_AWB_STATE
CONTROL_AE_LOCK_AVAILABLE
CONTROL_AWB_LOCK_AVAILABLE
CONTROL_AVAILABLE_MODES
CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE
CONTROL_POST_RAW_SENSITIVITY_BOOST
CONTROL_ENABLE_ZSL
CONTROL_AF_SCENE_CHANGE
CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES
CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES
CONTROL_EXTENDED_SCENE_MODE
CONTROL_ZOOM_RATIO_RANGE
CONTROL_ZOOM_RATIO
CONTROL_END
EDGE_MODE
EDGE_AVAILABLE_EDGE_MODES
EDGE_END
FLASH_MODE
FLASH_STATE
FLASH_END
FLASH_INFO_AVAILABLE
FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
FLASH_INFO_STRENGTH_DEFAULT_LEVEL
FLASH_INFO_END
HOT_PIXEL_MODE
HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES
HOT_PIXEL_END
JPEG_GPS_COORDINATES
JPEG_GPS_PROCESSING_METHOD
JPEG_GPS_TIMESTAMP
JPEG_ORIENTATION
JPEG_QUALITY
JPEG_THUMBNAIL_QUALITY
JPEG_THUMBNAIL_SIZE
JPEG_AVAILABLE_THUMBNAIL_SIZES
JPEG_END
LENS_APERTURE
LENS_FILTER_DENSITY
LENS_FOCAL_LENGTH
LENS_FOCUS_DISTANCE
LENS_OPTICAL_STABILIZATION_MODE
LENS_FACING
LENS_POSE_ROTATION
LENS_POSE_TRANSLATION
LENS_FOCUS_RANGE
LENS_STATE
LENS_INTRINSIC_CALIBRATION
LENS_RADIAL_DISTORTION
LENS_POSE_REFERENCE
LENS_DISTORTION
LENS_DISTORTION_MAXIMUM_RESOLUTION
LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION
LENS_END
LENS_INFO_AVAILABLE_APERTURES
LENS_INFO_AVAILABLE_FILTER_DENSITIES
LENS_INFO_AVAILABLE_FOCAL_LENGTHS
LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION
LENS_INFO_HYPERFOCAL_DISTANCE
LENS_INFO_MINIMUM_FOCUS_DISTANCE
LENS_INFO_SHADING_MAP_SIZE
LENS_INFO_FOCUS_DISTANCE_CALIBRATION
LENS_INFO_END
NOISE_REDUCTION_MODE
NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES
NOISE_REDUCTION_END
REQUEST_MAX_NUM_OUTPUT_STREAMS
REQUEST_PIPELINE_DEPTH
REQUEST_PIPELINE_MAX_DEPTH
REQUEST_PARTIAL_RESULT_COUNT
REQUEST_AVAILABLE_CAPABILITIES
REQUEST_AVAILABLE_REQUEST_KEYS
REQUEST_AVAILABLE_RESULT_KEYS
REQUEST_AVAILABLE_CHARACTERISTICS_KEYS
REQUEST_AVAILABLE_SESSION_KEYS
REQUEST_AVAILABLE_PHYSICAL_CAMERA_REQUEST_KEYS
REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP
REQUEST_END
SCALER_CROP_REGION
SCALER_AVAILABLE_MAX_DIGITAL_ZOOM
SCALER_AVAILABLE_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_MIN_FRAME_DURATIONS
SCALER_AVAILABLE_STALL_DURATIONS
SCALER_CROPPING_TYPE
SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_RECOMMENDED_INPUT_OUTPUT_FORMATS_MAP
SCALER_AVAILABLE_ROTATE_AND_CROP_MODES
SCALER_ROTATE_AND_CROP
SCALER_DEFAULT_SECURE_IMAGE_SIZE
SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
SCALER_AVAILABLE_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
SCALER_AVAILABLE_STALL_DURATIONS_MAXIMUM_RESOLUTION
SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED
SCALER_AVAILABLE_STREAM_USE_CASES
SCALER_END
SENSOR_EXPOSURE_TIME
SENSOR_FRAME_DURATION
SENSOR_SENSITIVITY
SENSOR_REFERENCE_ILLUMINANT1
SENSOR_REFERENCE_ILLUMINANT2
SENSOR_CALIBRATION_TRANSFORM1
SENSOR_CALIBRATION_TRANSFORM2
SENSOR_COLOR_TRANSFORM1
SENSOR_COLOR_TRANSFORM2
SENSOR_FORWARD_MATRIX1
SENSOR_FORWARD_MATRIX2
SENSOR_BLACK_LEVEL_PATTERN
SENSOR_MAX_ANALOG_SENSITIVITY
SENSOR_ORIENTATION
SENSOR_TIMESTAMP
SENSOR_NEUTRAL_COLOR_POINT
SENSOR_NOISE_PROFILE
SENSOR_GREEN_SPLIT
SENSOR_TEST_PATTERN_DATA
SENSOR_TEST_PATTERN_MODE
SENSOR_AVAILABLE_TEST_PATTERN_MODES
SENSOR_ROLLING_SHUTTER_SKEW
SENSOR_OPTICAL_BLACK_REGIONS
SENSOR_DYNAMIC_BLACK_LEVEL
SENSOR_DYNAMIC_WHITE_LEVEL
SENSOR_PIXEL_MODE
SENSOR_RAW_BINNING_FACTOR_USED
SENSOR_END
SENSOR_INFO_ACTIVE_ARRAY_SIZE
SENSOR_INFO_SENSITIVITY_RANGE
SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
SENSOR_INFO_EXPOSURE_TIME_RANGE
SENSOR_INFO_MAX_FRAME_DURATION
SENSOR_INFO_PHYSICAL_SIZE
SENSOR_INFO_PIXEL_ARRAY_SIZE
SENSOR_INFO_WHITE_LEVEL
SENSOR_INFO_TIMESTAMP_SOURCE
SENSOR_INFO_LENS_SHADING_APPLIED
SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE
SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_BINNING_FACTOR
SENSOR_INFO_END
SHADING_MODE
SHADING_AVAILABLE_MODES
SHADING_END
STATISTICS_FACE_DETECT_MODE
STATISTICS_HOT_PIXEL_MAP_MODE
STATISTICS_FACE_IDS
STATISTICS_FACE_LANDMARKS
STATISTICS_FACE_RECTANGLES
STATISTICS_FACE_SCORES
STATISTICS_LENS_SHADING_MAP
STATISTICS_SCENE_FLICKER
STATISTICS_HOT_PIXEL_MAP
STATISTICS_LENS_SHADING_MAP_MODE
STATISTICS_OIS_DATA_MODE
STATISTICS_OIS_TIMESTAMPS
STATISTICS_OIS_X_SHIFTS
STATISTICS_OIS_Y_SHIFTS
STATISTICS_END
STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES
STATISTICS_INFO_MAX_FACE_COUNT
STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES
STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES
STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES
STATISTICS_INFO_END
TONEMAP_CURVE_BLUE
TONEMAP_CURVE_GREEN
TONEMAP_CURVE_RED
TONEMAP_MODE
TONEMAP_MAX_CURVE_POINTS
TONEMAP_AVAILABLE_TONE_MAP_MODES
TONEMAP_GAMMA
TONEMAP_PRESET_CURVE
TONEMAP_END
INFO_SUPPORTED_HARDWARE_LEVEL
INFO_VERSION
INFO_DEVICE_STATE_ORIENTATIONS
INFO_END
BLACK_LEVEL_LOCK
BLACK_LEVEL_END
SYNC_FRAME_NUMBER
SYNC_MAX_LATENCY
SYNC_END
DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS
DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS
DEPTH_DEPTH_IS_EXCLUSIVE
DEPTH_AVAILABLE_RECOMMENDED_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS
DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_END
LOGICAL_MULTI_CAMERA_PHYSICAL_IDS
LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE
LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID
LOGICAL_MULTI_CAMERA_END
DISTORTION_CORRECTION_MODE
DISTORTION_CORRECTION_AVAILABLE_MODES
DISTORTION_CORRECTION_END
HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS
HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS
HEIC_AVAILABLE_HEIC_STALL_DURATIONS
HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
HEIC_AVAILABLE_HEIC_STALL_DURATIONS_MAXIMUM_RESOLUTION
HEIC_END
AUTOMOTIVE_LOCATION
AUTOMOTIVE_END
AUTOMOTIVE_LENS_FACING
AUTOMOTIVE_LENS_END
:: struct
:: struct
:: struct
:: struct
:: enum
ORIENTATION_ANY
ORIENTATION_PORT
ORIENTATION_LAND
ORIENTATION_SQUARE
TOUCHSCREEN_ANY
TOUCHSCREEN_NOTOUCH
TOUCHSCREEN_STYLUS
TOUCHSCREEN_FINGER
DENSITY_DEFAULT
DENSITY_LOW
DENSITY_MEDIUM
DENSITY_TV
DENSITY_HIGH
DENSITY_XHIGH
DENSITY_XXHIGH
DENSITY_XXXHIGH
DENSITY_ANY
DENSITY_NONE
KEYBOARD_ANY
KEYBOARD_NOKEYS
KEYBOARD_QWERTY
KEYBOARD_12KEY
NAVIGATION_ANY
NAVIGATION_NONAV
NAVIGATION_DPAD
NAVIGATION_TRACKBALL
NAVIGATION_WHEEL
KEYSHIDDEN_ANY
KEYSHIDDEN_NO
KEYSHIDDEN_YES
KEYSHIDDEN_SOFT
NAVHIDDEN_ANY
NAVHIDDEN_NO
NAVHIDDEN_YES
SCREENSIZE_ANY
SCREENSIZE_SMALL
SCREENSIZE_NORMAL
SCREENSIZE_LARGE
SCREENSIZE_XLARGE
SCREENLONG_ANY
SCREENLONG_NO
SCREENLONG_YES
SCREENROUND_ANY
SCREENROUND_NO
SCREENROUND_YES
WIDE_COLOR_GAMUT_ANY
WIDE_COLOR_GAMUT_NO
WIDE_COLOR_GAMUT_YES
HDR_ANY
HDR_NO
HDR_YES
UI_MODE_TYPE_ANY
UI_MODE_TYPE_NORMAL
UI_MODE_TYPE_DESK
UI_MODE_TYPE_CAR
UI_MODE_TYPE_TELEVISION
UI_MODE_TYPE_APPLIANCE
UI_MODE_TYPE_WATCH
UI_MODE_TYPE_VR_HEADSET
UI_MODE_NIGHT_ANY
UI_MODE_NIGHT_NO
UI_MODE_NIGHT_YES
SCREEN_WIDTH_DP_ANY
SCREEN_HEIGHT_DP_ANY
SMALLEST_SCREEN_WIDTH_DP_ANY
LAYOUTDIR_ANY
LAYOUTDIR_LTR
LAYOUTDIR_RTL
MCC
MNC
LOCALE
TOUCHSCREEN
KEYBOARD
KEYBOARD_HIDDEN
NAVIGATION
ORIENTATION
DENSITY
SCREEN_SIZE
VERSION
SCREEN_LAYOUT
UI_MODE
SMALLEST_SCREEN_SIZE
LAYOUTDIR
SCREEN_ROUND
COLOR_MODE
MNC_ZERO
:: struct
width: u32
height: u32
layers: u32
format: u32
usage: u64
stride: u32
rfu0: u32
rfu1: u64
:: enum
R8G8B8A8_UNORM
R8G8B8X8_UNORM
R8G8B8_UNORM
R5G6B5_UNORM
R16G16B16A16_FLOAT
R10G10B10A2_UNORM
BLOB
D16_UNORM
D24_UNORM
D24_UNORM_S8_UINT
D32_FLOAT
D32_FLOAT_S8_UINT
S8_UINT
Y8Cb8Cr8_420
YCbCr_P010
R8_UNORM
R16_UINT
R16G16_UINT
R10G10B10A10_UNORM
:: enum
CPU_READ_NEVER
CPU_READ_RARELY
CPU_READ_OFTEN
CPU_READ_MASK
CPU_WRITE_NEVER
CPU_WRITE_RARELY
CPU_WRITE_OFTEN
CPU_WRITE_MASK
GPU_SAMPLED_IMAGE
GPU_FRAMEBUFFER
GPU_COLOR_OUTPUT
COMPOSER_OVERLAY
PROTECTED_CONTENT
VIDEO_ENCODE
SENSOR_DIRECT_DATA
GPU_DATA_BUFFER
GPU_CUBE_MAP
GPU_MIPMAP_COMPLETE
FRONT_BUFFER
VENDOR_0
VENDOR_1
VENDOR_2
VENDOR_3
VENDOR_4
VENDOR_5
VENDOR_6
VENDOR_7
VENDOR_8
VENDOR_9
VENDOR_10
VENDOR_11
VENDOR_12
VENDOR_13
VENDOR_14
VENDOR_15
VENDOR_16
VENDOR_17
VENDOR_18
VENDOR_19
:: enum
RGBA_8888
RGBX_8888
RGB_888
RGB_565
RGBA_FP16
YUV_420_888
JPEG
RAW16
RAW_PRIVATE
RAW10
RAW12
DEPTH16
DEPTH_POINT_CLOUD
PRIVATE
Y8
HEIC
DEPTH_JPEG
:: enum
UNKNOWN
KEYBOARD
DPAD
GAMEPAD
TOUCHSCREEN
MOUSE
STYLUS
BLUETOOTH_STYLUS
TRACKBALL
MOUSE_RELATIVE
TOUCHPAD
TOUCH_NAVIGATION
JOYSTICK
HDMI
SENSOR
ROTARY_ENCODER
ANY
AKEY_EVENT_FLAGenum flagsforeignSource
:: enum_flags
WOKE_HERE
SOFT_KEYBOARD
KEEP_TOUCH_MODE
FROM_SYSTEM
EDITOR_ACTION
CANCELED
VIRTUAL_HARD_KEY
LONG_PRESS
CANCELED_LONG_PRESS
TRACKING
FALLBACK
AKEYCODEenumforeignSource
:: enum
UNKNOWN
SOFT_LEFT
SOFT_RIGHT
HOME
BACK
CALL
ENDCALL
_0
_1
_2
_3
_4
_5
_6
_7
_8
_9
STAR
POUND
DPAD_UP
DPAD_DOWN
DPAD_LEFT
DPAD_RIGHT
DPAD_CENTER
VOLUME_UP
VOLUME_DOWN
POWER
CAMERA
CLEAR
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
COMMA
PERIOD
ALT_LEFT
ALT_RIGHT
SHIFT_LEFT
SHIFT_RIGHT
TAB
SPACE
SYM
EXPLORER
ENVELOPE
ENTER
DEL
GRAVE
MINUS
EQUALS
LEFT_BRACKET
RIGHT_BRACKET
BACKSLASH
SEMICOLON
APOSTROPHE
SLASH
AT
NUM
HEADSETHOOK
FOCUS
PLUS
MENU
NOTIFICATION
SEARCH
MEDIA_PLAY_PAUSE
MEDIA_STOP
MEDIA_NEXT
MEDIA_PREVIOUS
MEDIA_REWIND
MEDIA_FAST_FORWARD
MUTE
PAGE_UP
PAGE_DOWN
PICTSYMBOLS
SWITCH_CHARSET
BUTTON_A
BUTTON_B
BUTTON_C
BUTTON_X
BUTTON_Y
BUTTON_Z
BUTTON_L1
BUTTON_R1
BUTTON_L2
BUTTON_R2
BUTTON_THUMBL
BUTTON_THUMBR
BUTTON_START
BUTTON_SELECT
BUTTON_MODE
ESCAPE
FORWARD_DEL
CTRL_LEFT
CTRL_RIGHT
CAPS_LOCK
SCROLL_LOCK
META_LEFT
META_RIGHT
FUNCTION
SYSRQ
BREAK
MOVE_HOME
MOVE_END
INSERT
FORWARD
MEDIA_PLAY
MEDIA_PAUSE
MEDIA_CLOSE
MEDIA_EJECT
MEDIA_RECORD
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
NUM_LOCK
NUMPAD_0
NUMPAD_1
NUMPAD_2
NUMPAD_3
NUMPAD_4
NUMPAD_5
NUMPAD_6
NUMPAD_7
NUMPAD_8
NUMPAD_9
NUMPAD_DIVIDE
NUMPAD_MULTIPLY
NUMPAD_SUBTRACT
NUMPAD_ADD
NUMPAD_DOT
NUMPAD_COMMA
NUMPAD_ENTER
NUMPAD_EQUALS
NUMPAD_LEFT_PAREN
NUMPAD_RIGHT_PAREN
VOLUME_MUTE
INFO
CHANNEL_UP
CHANNEL_DOWN
ZOOM_IN
ZOOM_OUT
TV
WINDOW
GUIDE
DVR
BOOKMARK
CAPTIONS
SETTINGS
TV_POWER
TV_INPUT
STB_POWER
STB_INPUT
AVR_POWER
AVR_INPUT
PROG_RED
PROG_GREEN
PROG_YELLOW
PROG_BLUE
APP_SWITCH
BUTTON_1
BUTTON_2
BUTTON_3
BUTTON_4
BUTTON_5
BUTTON_6
BUTTON_7
BUTTON_8
BUTTON_9
BUTTON_10
BUTTON_11
BUTTON_12
BUTTON_13
BUTTON_14
BUTTON_15
BUTTON_16
LANGUAGE_SWITCH
MANNER_MODE
_3D_MODE
CONTACTS
CALENDAR
MUSIC
CALCULATOR
ZENKAKU_HANKAKU
EISU
MUHENKAN
HENKAN
KATAKANA_HIRAGANA
YEN
RO
KANA
ASSIST
BRIGHTNESS_DOWN
BRIGHTNESS_UP
MEDIA_AUDIO_TRACK
SLEEP
WAKEUP
PAIRING
MEDIA_TOP_MENU
_11
_12
LAST_CHANNEL
TV_DATA_SERVICE
VOICE_ASSIST
TV_RADIO_SERVICE
TV_TELETEXT
TV_NUMBER_ENTRY
TV_TERRESTRIAL_ANALOG
TV_TERRESTRIAL_DIGITAL
TV_SATELLITE
TV_SATELLITE_BS
TV_SATELLITE_CS
TV_SATELLITE_SERVICE
TV_NETWORK
TV_ANTENNA_CABLE
TV_INPUT_HDMI_1
TV_INPUT_HDMI_2
TV_INPUT_HDMI_3
TV_INPUT_HDMI_4
TV_INPUT_COMPOSITE_1
TV_INPUT_COMPOSITE_2
TV_INPUT_COMPONENT_1
TV_INPUT_COMPONENT_2
TV_INPUT_VGA_1
TV_AUDIO_DESCRIPTION
TV_AUDIO_DESCRIPTION_MIX_UP
TV_AUDIO_DESCRIPTION_MIX_DOWN
TV_ZOOM_MODE
TV_CONTENTS_MENU
TV_MEDIA_CONTEXT_MENU
TV_TIMER_PROGRAMMING
HELP
NAVIGATE_PREVIOUS
NAVIGATE_NEXT
NAVIGATE_IN
NAVIGATE_OUT
STEM_PRIMARY
STEM_1
STEM_2
STEM_3
DPAD_UP_LEFT
DPAD_DOWN_LEFT
DPAD_UP_RIGHT
DPAD_DOWN_RIGHT
MEDIA_SKIP_FORWARD
MEDIA_SKIP_BACKWARD
MEDIA_STEP_FORWARD
MEDIA_STEP_BACKWARD
SOFT_SLEEP
CUT
COPY
PASTE
SYSTEM_NAVIGATION_UP
SYSTEM_NAVIGATION_DOWN
SYSTEM_NAVIGATION_LEFT
SYSTEM_NAVIGATION_RIGHT
ALL_APPS
REFRESH
THUMBS_UP
THUMBS_DOWN
PROFILE_SWITCH
VIDEO_APP_1
VIDEO_APP_2
VIDEO_APP_3
VIDEO_APP_4
VIDEO_APP_5
VIDEO_APP_6
VIDEO_APP_7
VIDEO_APP_8
FEATURED_APP_1
FEATURED_APP_2
FEATURED_APP_3
FEATURED_APP_4
DEMO_APP_1
DEMO_APP_2
DEMO_APP_3
DEMO_APP_4
:: enum
BUFFER_FLAG_CODEC_CONFIG
BUFFER_FLAG_END_OF_STREAM
BUFFER_FLAG_PARTIAL_FRAME
CONFIGURE_FLAG_ENCODE
INFO_OUTPUT_BUFFERS_CHANGED
INFO_OUTPUT_FORMAT_CHANGED
INFO_TRY_AGAIN_LATER
:: enum
PROVISION_REQUIRED
KEY_REQUIRED
KEY_EXPIRED
VENDOR_DEFINED
SESSION_RECLAIMED
AMETAenum flagsforeignSource
:: enum_flags
NONE
ALT_ON
ALT_LEFT_ON
ALT_RIGHT_ON
SHIFT_ON
SHIFT_LEFT_ON
SHIFT_RIGHT_ON
SYM_ON
FUNCTION_ON
CTRL_ON
CTRL_LEFT_ON
CTRL_RIGHT_ON
META_ON
META_LEFT_ON
META_RIGHT_ON
CAPS_LOCK_ON
NUM_LOCK_ON
SCROLL_LOCK_ON
:: enum
MASK
POINTER_INDEX_MASK
DOWN
UP
MOVE
CANCEL
OUTSIDE
POINTER_DOWN
POINTER_UP
HOVER_MOVE
SCROLL
HOVER_ENTER
HOVER_EXIT
BUTTON_PRESS
BUTTON_RELEASE
:: enum
X
Y
PRESSURE
SIZE
TOUCH_MAJOR
TOUCH_MINOR
TOOL_MAJOR
TOOL_MINOR
ORIENTATION
VSCROLL
HSCROLL
Z
RX
RY
RZ
HAT_X
HAT_Y
LTRIGGER
RTRIGGER
THROTTLE
RUDDER
WHEEL
GAS
BRAKE
DISTANCE
TILT
SCROLL
RELATIVE_X
RELATIVE_Y
GENERIC_1
GENERIC_2
GENERIC_3
GENERIC_4
GENERIC_5
GENERIC_6
GENERIC_7
GENERIC_8
GENERIC_9
GENERIC_10
GENERIC_11
GENERIC_12
GENERIC_13
GENERIC_14
GENERIC_15
GENERIC_16
:: struct
onStart: #type (activity: *ANativeActivity) -> void #c_call
onResume: #type (activity: *ANativeActivity) -> void #c_call
onSaveInstanceState: #type (activity: *ANativeActivity, outSize: *u64) -> *void #c_call
onPause: #type (activity: *ANativeActivity) -> void #c_call
onStop: #type (activity: *ANativeActivity) -> void #c_call
onDestroy: #type (activity: *ANativeActivity) -> void #c_call
onWindowFocusChanged: #type (activity: *ANativeActivity, hasFocus: s32) -> void #c_call
onNativeWindowCreated: #type (activity: *ANativeActivity, window: *ANativeWindow) -> void #c_call
onNativeWindowResized: #type (activity: *ANativeActivity, window: *ANativeWindow) -> void #c_call
onNativeWindowRedrawNeeded: #type (activity: *ANativeActivity, window: *ANativeWindow) -> void #c_call
onNativeWindowDestroyed: #type (activity: *ANativeActivity, window: *ANativeWindow) -> void #c_call
onInputQueueCreated: #type (activity: *ANativeActivity, queue: *AInputQueue) -> void #c_call
onInputQueueDestroyed: #type (activity: *ANativeActivity, queue: *AInputQueue) -> void #c_call
onContentRectChanged: #type (activity: *ANativeActivity, rect: *ARect) -> void #c_call
onConfigurationChanged: #type (activity: *ANativeActivity) -> void #c_call
onLowMemory: #type (activity: *ANativeActivity) -> void #c_call
Android_AppstructforeignSource
:: struct
userData: *void
onAppCmd: #type (app: *Android_App, cmd: s32) -> void #c_call
onInputEvent: #type (app: *Android_App, event: *AInputEvent) -> s32 #c_call
activity: *ANativeActivity
savedState: *void
savedStateSize: u64
looper: *ALooper
inputQueue: *AInputQueue
window: *ANativeWindow
contentRect: ARect
activityState: s32
destroyRequested: s32
mutex: pthread_mutex_t
cond: pthread_cond_t
msgread: s32
msgwrite: s32
thread: pthread_t
cmdPollSource: Android_Poll_Source
inputPollSource: Android_Poll_Source
running: s32
stateSaved: s32
destroyed: s32
redrawNeeded: s32
pendingInputQueue: *AInputQueue
pendingWindow: *ANativeWindow
pendingContentRect: ARect
APP_CMDenumforeignSource
:: enum
INPUT_CHANGED
INIT_WINDOW
TERM_WINDOW
WINDOW_RESIZED
WINDOW_REDRAW_NEEDED
CONTENT_RECT_CHANGED
GAINED_FOCUS
LOST_FOCUS
CONFIG_CHANGED
LOW_MEMORY
START
RESUME
SAVE_STATE
PAUSE
STOP
DESTROY
ARectstructforeignSource
:: struct
left: s32
top: s32
right: s32
bottom: s32
:: enum
ALLOW_LOCK_WHILE_SCREEN_ON
DIM_BEHIND
BLUR_BEHIND
NOT_FOCUSABLE
NOT_TOUCHABLE
NOT_TOUCH_MODAL
TOUCHABLE_WHEN_WAKING
KEEP_SCREEN_ON
LAYOUT_IN_SCREEN
LAYOUT_NO_LIMITS
FULLSCREEN
FORCE_NOT_FULLSCREEN
DITHER
SECURE
SCALED
IGNORE_CHEEK_PRESSES
LAYOUT_INSET_DECOR
ALT_FOCUSABLE_IM
WATCH_OUTSIDE_TOUCH
SHOW_WHEN_LOCKED
SHOW_WALLPAPER
TURN_SCREEN_ON
DISMISS_KEYGUARD
:: enum
OK
ERROR_BASE
ERROR_UNKNOWN
ERROR_INVALID_PARAMETER
ERROR_CAMERA_DISCONNECTED
ERROR_NOT_ENOUGH_MEMORY
ERROR_METADATA_NOT_FOUND
ERROR_CAMERA_DEVICE
ERROR_CAMERA_SERVICE
ERROR_SESSION_CLOSED
ERROR_INVALID_OPERATION
ERROR_STREAM_CONFIGURE_FAIL
ERROR_CAMERA_IN_USE
ERROR_MAX_CAMERA_IN_USE
ERROR_CAMERA_DISABLED
ERROR_PERMISSION_DENIED
ERROR_UNSUPPORTED_OPERATION
ERRORenumforeignSource
:: enum
CAMERA_IN_USE
MAX_CAMERAS_IN_USE
CAMERA_DISABLED
CAMERA_DEVICE
CAMERA_SERVICE
:: struct
reserved0: *void
reserved1: *void
reserved2: *void
DestroyJavaVM: #type (unknown0: *JavaVM) -> jint #c_call
AttachCurrentThread: #type (unknown0: *JavaVM, unknown1: **JNIEnv, unknown2: *void) -> jint #c_call
DetachCurrentThread: #type (unknown0: *JavaVM) -> jint #c_call
GetEnv: #type (unknown0: *JavaVM, unknown1: **void, unknown2: jint) -> jint #c_call
AttachCurrentThreadAsDaemon: #type (unknown0: *JavaVM, unknown1: **JNIEnv, unknown2: *void) -> jint #c_call
:: struct
reserved0: *void
reserved1: *void
reserved2: *void
reserved3: *void
GetVersion: #type (unknown0: *JNIEnv) -> jint #c_call
DefineClass: #type (unknown0: *JNIEnv, unknown1: *u8, unknown2: jobject, unknown3: *jbyte, unknown4: jsize) -> jclass #c_call
FindClass: #type (unknown0: *JNIEnv, unknown1: *u8) -> jclass #c_call
FromReflectedMethod: #type (unknown0: *JNIEnv, unknown1: jobject) -> jmethodID #c_call
FromReflectedField: #type (unknown0: *JNIEnv, unknown1: jobject) -> jfieldID #c_call
ToReflectedMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: jboolean) -> jobject #c_call
GetSuperclass: #type (unknown0: *JNIEnv, unknown1: jclass) -> jclass #c_call
IsAssignableFrom: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jclass) -> jboolean #c_call
ToReflectedField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jboolean) -> jobject #c_call
Throw: #type (unknown0: *JNIEnv, unknown1: jthrowable) -> jint #c_call
ThrowNew: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *u8) -> jint #c_call
ExceptionOccurred: #type (unknown0: *JNIEnv) -> jthrowable #c_call
ExceptionDescribe: #type (unknown0: *JNIEnv) -> void #c_call
ExceptionClear: #type (unknown0: *JNIEnv) -> void #c_call
FatalError: #type (unknown0: *JNIEnv, unknown1: *u8) -> void #c_call
PushLocalFrame: #type (unknown0: *JNIEnv, unknown1: jint) -> jint #c_call
PopLocalFrame: #type (unknown0: *JNIEnv, unknown1: jobject) -> jobject #c_call
NewGlobalRef: #type (unknown0: *JNIEnv, unknown1: jobject) -> jobject #c_call
DeleteGlobalRef: #type (unknown0: *JNIEnv, unknown1: jobject) -> void #c_call
DeleteLocalRef: #type (unknown0: *JNIEnv, unknown1: jobject) -> void #c_call
IsSameObject: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jobject) -> jboolean #c_call
NewLocalRef: #type (unknown0: *JNIEnv, unknown1: jobject) -> jobject #c_call
EnsureLocalCapacity: #type (unknown0: *JNIEnv, unknown1: jint) -> jint #c_call
AllocObject: #type (unknown0: *JNIEnv, unknown1: jclass) -> jobject #c_call
NewObject: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jobject #c_call
NewObjectV: *void
NewObjectA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jobject #c_call
GetObjectClass: #type (unknown0: *JNIEnv, unknown1: jobject) -> jclass #c_call
IsInstanceOf: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass) -> jboolean #c_call
GetMethodID: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *u8, unknown3: *u8) -> jmethodID #c_call
CallObjectMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jobject #c_call
CallObjectMethodV: *void
CallObjectMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jobject #c_call
CallBooleanMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jboolean #c_call
CallBooleanMethodV: *void
CallBooleanMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jboolean #c_call
CallByteMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jbyte #c_call
CallByteMethodV: *void
CallByteMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jbyte #c_call
CallCharMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jchar #c_call
CallCharMethodV: *void
CallCharMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jchar #c_call
CallShortMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jshort #c_call
CallShortMethodV: *void
CallShortMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jshort #c_call
CallIntMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jint #c_call
CallIntMethodV: *void
CallIntMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jint #c_call
CallLongMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jlong #c_call
CallLongMethodV: *void
CallLongMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jlong #c_call
CallFloatMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jfloat #c_call
CallFloatMethodV: *void
CallFloatMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jfloat #c_call
CallDoubleMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> jdouble #c_call
CallDoubleMethodV: *void
CallDoubleMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> jdouble #c_call
CallVoidMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, __args: ..Any) -> void #c_call
CallVoidMethodV: *void
CallVoidMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jmethodID, unknown3: *jvalue) -> void #c_call
CallNonvirtualObjectMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jobject #c_call
CallNonvirtualObjectMethodV: *void
CallNonvirtualObjectMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jobject #c_call
CallNonvirtualBooleanMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jboolean #c_call
CallNonvirtualBooleanMethodV: *void
CallNonvirtualBooleanMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jboolean #c_call
CallNonvirtualByteMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jbyte #c_call
CallNonvirtualByteMethodV: *void
CallNonvirtualByteMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jbyte #c_call
CallNonvirtualCharMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jchar #c_call
CallNonvirtualCharMethodV: *void
CallNonvirtualCharMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jchar #c_call
CallNonvirtualShortMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jshort #c_call
CallNonvirtualShortMethodV: *void
CallNonvirtualShortMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jshort #c_call
CallNonvirtualIntMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jint #c_call
CallNonvirtualIntMethodV: *void
CallNonvirtualIntMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jint #c_call
CallNonvirtualLongMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jlong #c_call
CallNonvirtualLongMethodV: *void
CallNonvirtualLongMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jlong #c_call
CallNonvirtualFloatMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jfloat #c_call
CallNonvirtualFloatMethodV: *void
CallNonvirtualFloatMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jfloat #c_call
CallNonvirtualDoubleMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> jdouble #c_call
CallNonvirtualDoubleMethodV: *void
CallNonvirtualDoubleMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> jdouble #c_call
CallNonvirtualVoidMethod: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, __args: ..Any) -> void #c_call
CallNonvirtualVoidMethodV: *void
CallNonvirtualVoidMethodA: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jclass, unknown3: jmethodID, unknown4: *jvalue) -> void #c_call
GetFieldID: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *u8, unknown3: *u8) -> jfieldID #c_call
GetObjectField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jobject #c_call
GetBooleanField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jboolean #c_call
GetByteField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jbyte #c_call
GetCharField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jchar #c_call
GetShortField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jshort #c_call
GetIntField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jint #c_call
GetLongField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jlong #c_call
GetFloatField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jfloat #c_call
GetDoubleField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID) -> jdouble #c_call
SetObjectField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jobject) -> void #c_call
SetBooleanField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jboolean) -> void #c_call
SetByteField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jbyte) -> void #c_call
SetCharField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jchar) -> void #c_call
SetShortField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jshort) -> void #c_call
SetIntField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jint) -> void #c_call
SetLongField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jlong) -> void #c_call
SetFloatField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jfloat) -> void #c_call
SetDoubleField: #type (unknown0: *JNIEnv, unknown1: jobject, unknown2: jfieldID, unknown3: jdouble) -> void #c_call
GetStaticMethodID: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *u8, unknown3: *u8) -> jmethodID #c_call
CallStaticObjectMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jobject #c_call
CallStaticObjectMethodV: *void
CallStaticObjectMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jobject #c_call
CallStaticBooleanMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jboolean #c_call
CallStaticBooleanMethodV: *void
CallStaticBooleanMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jboolean #c_call
CallStaticByteMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jbyte #c_call
CallStaticByteMethodV: *void
CallStaticByteMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jbyte #c_call
CallStaticCharMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jchar #c_call
CallStaticCharMethodV: *void
CallStaticCharMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jchar #c_call
CallStaticShortMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jshort #c_call
CallStaticShortMethodV: *void
CallStaticShortMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jshort #c_call
CallStaticIntMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jint #c_call
CallStaticIntMethodV: *void
CallStaticIntMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jint #c_call
CallStaticLongMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jlong #c_call
CallStaticLongMethodV: *void
CallStaticLongMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jlong #c_call
CallStaticFloatMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jfloat #c_call
CallStaticFloatMethodV: *void
CallStaticFloatMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jfloat #c_call
CallStaticDoubleMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> jdouble #c_call
CallStaticDoubleMethodV: *void
CallStaticDoubleMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> jdouble #c_call
CallStaticVoidMethod: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, __args: ..Any) -> void #c_call
CallStaticVoidMethodV: *void
CallStaticVoidMethodA: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jmethodID, unknown3: *jvalue) -> void #c_call
GetStaticFieldID: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *u8, unknown3: *u8) -> jfieldID #c_call
GetStaticObjectField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jobject #c_call
GetStaticBooleanField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jboolean #c_call
GetStaticByteField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jbyte #c_call
GetStaticCharField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jchar #c_call
GetStaticShortField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jshort #c_call
GetStaticIntField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jint #c_call
GetStaticLongField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jlong #c_call
GetStaticFloatField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jfloat #c_call
GetStaticDoubleField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID) -> jdouble #c_call
SetStaticObjectField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jobject) -> void #c_call
SetStaticBooleanField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jboolean) -> void #c_call
SetStaticByteField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jbyte) -> void #c_call
SetStaticCharField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jchar) -> void #c_call
SetStaticShortField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jshort) -> void #c_call
SetStaticIntField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jint) -> void #c_call
SetStaticLongField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jlong) -> void #c_call
SetStaticFloatField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jfloat) -> void #c_call
SetStaticDoubleField: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: jfieldID, unknown3: jdouble) -> void #c_call
NewString: #type (unknown0: *JNIEnv, unknown1: *jchar, unknown2: jsize) -> jstring #c_call
GetStringLength: #type (unknown0: *JNIEnv, unknown1: jstring) -> jsize #c_call
GetStringChars: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *jboolean) -> *jchar #c_call
ReleaseStringChars: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *jchar) -> void #c_call
NewStringUTF: #type (unknown0: *JNIEnv, unknown1: *u8) -> jstring #c_call
GetStringUTFLength: #type (unknown0: *JNIEnv, unknown1: jstring) -> jsize #c_call
GetStringUTFChars: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *jboolean) -> *u8 #c_call
ReleaseStringUTFChars: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *u8) -> void #c_call
GetArrayLength: #type (unknown0: *JNIEnv, unknown1: jarray) -> jsize #c_call
NewObjectArray: #type (unknown0: *JNIEnv, unknown1: jsize, unknown2: jclass, unknown3: jobject) -> jobjectArray #c_call
GetObjectArrayElement: #type (unknown0: *JNIEnv, unknown1: jobjectArray, unknown2: jsize) -> jobject #c_call
SetObjectArrayElement: #type (unknown0: *JNIEnv, unknown1: jobjectArray, unknown2: jsize, unknown3: jobject) -> void #c_call
NewBooleanArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jbooleanArray #c_call
NewByteArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jbyteArray #c_call
NewCharArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jcharArray #c_call
NewShortArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jshortArray #c_call
NewIntArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jintArray #c_call
NewLongArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jlongArray #c_call
NewFloatArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jfloatArray #c_call
NewDoubleArray: #type (unknown0: *JNIEnv, unknown1: jsize) -> jdoubleArray #c_call
GetBooleanArrayElements: #type (unknown0: *JNIEnv, unknown1: jbooleanArray, unknown2: *jboolean) -> *jboolean #c_call
GetByteArrayElements: #type (unknown0: *JNIEnv, unknown1: jbyteArray, unknown2: *jboolean) -> *jbyte #c_call
GetCharArrayElements: #type (unknown0: *JNIEnv, unknown1: jcharArray, unknown2: *jboolean) -> *jchar #c_call
GetShortArrayElements: #type (unknown0: *JNIEnv, unknown1: jshortArray, unknown2: *jboolean) -> *jshort #c_call
GetIntArrayElements: #type (unknown0: *JNIEnv, unknown1: jintArray, unknown2: *jboolean) -> *jint #c_call
GetLongArrayElements: #type (unknown0: *JNIEnv, unknown1: jlongArray, unknown2: *jboolean) -> *jlong #c_call
GetFloatArrayElements: #type (unknown0: *JNIEnv, unknown1: jfloatArray, unknown2: *jboolean) -> *jfloat #c_call
GetDoubleArrayElements: #type (unknown0: *JNIEnv, unknown1: jdoubleArray, unknown2: *jboolean) -> *jdouble #c_call
ReleaseBooleanArrayElements: #type (unknown0: *JNIEnv, unknown1: jbooleanArray, unknown2: *jboolean, unknown3: jint) -> void #c_call
ReleaseByteArrayElements: #type (unknown0: *JNIEnv, unknown1: jbyteArray, unknown2: *jbyte, unknown3: jint) -> void #c_call
ReleaseCharArrayElements: #type (unknown0: *JNIEnv, unknown1: jcharArray, unknown2: *jchar, unknown3: jint) -> void #c_call
ReleaseShortArrayElements: #type (unknown0: *JNIEnv, unknown1: jshortArray, unknown2: *jshort, unknown3: jint) -> void #c_call
ReleaseIntArrayElements: #type (unknown0: *JNIEnv, unknown1: jintArray, unknown2: *jint, unknown3: jint) -> void #c_call
ReleaseLongArrayElements: #type (unknown0: *JNIEnv, unknown1: jlongArray, unknown2: *jlong, unknown3: jint) -> void #c_call
ReleaseFloatArrayElements: #type (unknown0: *JNIEnv, unknown1: jfloatArray, unknown2: *jfloat, unknown3: jint) -> void #c_call
ReleaseDoubleArrayElements: #type (unknown0: *JNIEnv, unknown1: jdoubleArray, unknown2: *jdouble, unknown3: jint) -> void #c_call
GetBooleanArrayRegion: #type (unknown0: *JNIEnv, unknown1: jbooleanArray, unknown2: jsize, unknown3: jsize, unknown4: *jboolean) -> void #c_call
GetByteArrayRegion: #type (unknown0: *JNIEnv, unknown1: jbyteArray, unknown2: jsize, unknown3: jsize, unknown4: *jbyte) -> void #c_call
GetCharArrayRegion: #type (unknown0: *JNIEnv, unknown1: jcharArray, unknown2: jsize, unknown3: jsize, unknown4: *jchar) -> void #c_call
GetShortArrayRegion: #type (unknown0: *JNIEnv, unknown1: jshortArray, unknown2: jsize, unknown3: jsize, unknown4: *jshort) -> void #c_call
GetIntArrayRegion: #type (unknown0: *JNIEnv, unknown1: jintArray, unknown2: jsize, unknown3: jsize, unknown4: *jint) -> void #c_call
GetLongArrayRegion: #type (unknown0: *JNIEnv, unknown1: jlongArray, unknown2: jsize, unknown3: jsize, unknown4: *jlong) -> void #c_call
GetFloatArrayRegion: #type (unknown0: *JNIEnv, unknown1: jfloatArray, unknown2: jsize, unknown3: jsize, unknown4: *jfloat) -> void #c_call
GetDoubleArrayRegion: #type (unknown0: *JNIEnv, unknown1: jdoubleArray, unknown2: jsize, unknown3: jsize, unknown4: *jdouble) -> void #c_call
SetBooleanArrayRegion: #type (unknown0: *JNIEnv, unknown1: jbooleanArray, unknown2: jsize, unknown3: jsize, unknown4: *jboolean) -> void #c_call
SetByteArrayRegion: #type (unknown0: *JNIEnv, unknown1: jbyteArray, unknown2: jsize, unknown3: jsize, unknown4: *jbyte) -> void #c_call
SetCharArrayRegion: #type (unknown0: *JNIEnv, unknown1: jcharArray, unknown2: jsize, unknown3: jsize, unknown4: *jchar) -> void #c_call
SetShortArrayRegion: #type (unknown0: *JNIEnv, unknown1: jshortArray, unknown2: jsize, unknown3: jsize, unknown4: *jshort) -> void #c_call
SetIntArrayRegion: #type (unknown0: *JNIEnv, unknown1: jintArray, unknown2: jsize, unknown3: jsize, unknown4: *jint) -> void #c_call
SetLongArrayRegion: #type (unknown0: *JNIEnv, unknown1: jlongArray, unknown2: jsize, unknown3: jsize, unknown4: *jlong) -> void #c_call
SetFloatArrayRegion: #type (unknown0: *JNIEnv, unknown1: jfloatArray, unknown2: jsize, unknown3: jsize, unknown4: *jfloat) -> void #c_call
SetDoubleArrayRegion: #type (unknown0: *JNIEnv, unknown1: jdoubleArray, unknown2: jsize, unknown3: jsize, unknown4: *jdouble) -> void #c_call
RegisterNatives: #type (unknown0: *JNIEnv, unknown1: jclass, unknown2: *JNINativeMethod, unknown3: jint) -> jint #c_call
UnregisterNatives: #type (unknown0: *JNIEnv, unknown1: jclass) -> jint #c_call
MonitorEnter: #type (unknown0: *JNIEnv, unknown1: jobject) -> jint #c_call
MonitorExit: #type (unknown0: *JNIEnv, unknown1: jobject) -> jint #c_call
GetJavaVM: #type (unknown0: *JNIEnv, unknown1: **JavaVM) -> jint #c_call
GetStringRegion: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: jsize, unknown3: jsize, unknown4: *jchar) -> void #c_call
GetStringUTFRegion: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: jsize, unknown3: jsize, unknown4: *u8) -> void #c_call
GetPrimitiveArrayCritical: #type (unknown0: *JNIEnv, unknown1: jarray, unknown2: *jboolean) -> *void #c_call
ReleasePrimitiveArrayCritical: #type (unknown0: *JNIEnv, unknown1: jarray, unknown2: *void, unknown3: jint) -> void #c_call
GetStringCritical: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *jboolean) -> *jchar #c_call
ReleaseStringCritical: #type (unknown0: *JNIEnv, unknown1: jstring, unknown2: *jchar) -> void #c_call
NewWeakGlobalRef: #type (unknown0: *JNIEnv, unknown1: jobject) -> jweak #c_call
DeleteWeakGlobalRef: #type (unknown0: *JNIEnv, unknown1: jweak) -> void #c_call
ExceptionCheck: #type (unknown0: *JNIEnv) -> jboolean #c_call
NewDirectByteBuffer: #type (unknown0: *JNIEnv, unknown1: *void, unknown2: jlong) -> jobject #c_call
GetDirectBufferAddress: #type (unknown0: *JNIEnv, unknown1: jobject) -> *void #c_call
GetDirectBufferCapacity: #type (unknown0: *JNIEnv, unknown1: jobject) -> jlong #c_call
GetObjectRefType: #type (unknown0: *JNIEnv, unknown1: jobject) -> jobjectRefType #c_call
:: enum
InvalidRefType
LocalRefType
GlobalRefType
WeakGlobalRefType
Log_IdenumforeignSource
:: enum
MIN
MAIN
RADIO
EVENTS
SYSTEM
CRASH
STATS
SECURITY
KERNEL
MAX
DEFAULT
Log_MessagestructforeignSource
:: struct
struct_size: u64
buffer_id: s32
priority: s32
tag: *u8
file: *u8
line: u32
message: *u8
:: enum
UNKNOWN
DEFAULT
VERBOSE
DEBUG
INFO
WARN
ERROR
FATAL
SILENT
:: enum
OK
CODEC_ERROR_INSUFFICIENT_RESOURCE
CODEC_ERROR_RECLAIMED
ERROR_BASE
ERROR_UNKNOWN
ERROR_MALFORMED
ERROR_UNSUPPORTED
ERROR_INVALID_OBJECT
ERROR_INVALID_PARAMETER
ERROR_INVALID_OPERATION
ERROR_END_OF_STREAM
ERROR_IO
ERROR_WOULD_BLOCK
DRM_ERROR_BASE
DRM_NOT_PROVISIONED
DRM_RESOURCE_BUSY
DRM_DEVICE_REVOKED
DRM_SHORT_BUFFER
DRM_SESSION_NOT_OPENED
DRM_TAMPER_DETECTED
DRM_VERIFY_FAILED
DRM_NEED_KEY
DRM_LICENSE_EXPIRED
IMGREADER_ERROR_BASE
IMGREADER_NO_BUFFER_AVAILABLE
IMGREADER_MAX_IMAGES_ACQUIRED
IMGREADER_CANNOT_LOCK_IMAGE
IMGREADER_CANNOT_UNLOCK_IMAGE
IMGREADER_IMAGE_NOT_LOCKED
SeekModeenumforeignSource
:: enum
PREVIOUS_SYNC
NEXT_SYNC
CLOSEST_SYNC
:: enum
EXTERIOR_OTHER
EXTERIOR_FRONT
EXTERIOR_REAR
EXTERIOR_LEFT
EXTERIOR_RIGHT
INTERIOR_OTHER
INTERIOR_SEAT_ROW_1_LEFT
INTERIOR_SEAT_ROW_1_CENTER
INTERIOR_SEAT_ROW_1_RIGHT
INTERIOR_SEAT_ROW_2_LEFT
INTERIOR_SEAT_ROW_2_CENTER
INTERIOR_SEAT_ROW_2_RIGHT
INTERIOR_SEAT_ROW_3_LEFT
INTERIOR_SEAT_ROW_3_CENTER
INTERIOR_SEAT_ROW_3_RIGHT
:: enum
COLOR_CORRECTION_START
CONTROL_START
DEMOSAIC_START
EDGE_START
FLASH_START
FLASH_INFO_START
HOT_PIXEL_START
JPEG_START
LENS_START
LENS_INFO_START
NOISE_REDUCTION_START
QUIRKS_START
REQUEST_START
SCALER_START
SENSOR_START
SENSOR_INFO_START
SHADING_START
STATISTICS_START
STATISTICS_INFO_START
TONEMAP_START
LED_START
INFO_START
BLACK_LEVEL_START
SYNC_START
REPROCESS_START
DEPTH_START
LOGICAL_MULTI_CAMERA_START
DISTORTION_CORRECTION_START
HEIC_START
HEIC_INFO_START
AUTOMOTIVE_START
AUTOMOTIVE_LENS_START
VENDOR_START
:: enum
COLOR_CORRECTION
CONTROL
DEMOSAIC
EDGE
FLASH
FLASH_INFO
HOT_PIXEL
JPEG
LENS
LENS_INFO
NOISE_REDUCTION
QUIRKS
REQUEST
SCALER
SENSOR
SENSOR_INFO
SHADING
STATISTICS
STATISTICS_INFO
TONEMAP
LED
INFO
BLACK_LEVEL
SYNC
REPROCESS
DEPTH
LOGICAL_MULTI_CAMERA
DISTORTION_CORRECTION
HEIC
HEIC_INFO
AUTOMOTIVE
AUTOMOTIVE_LENS
SECTION_COUNT
VENDOR
:: enum
COLOR_CORRECTION_MODE
COLOR_CORRECTION_TRANSFORM
COLOR_CORRECTION_GAINS
COLOR_CORRECTION_ABERRATION_MODE
COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES
COLOR_CORRECTION_END
CONTROL_AE_ANTIBANDING_MODE
CONTROL_AE_EXPOSURE_COMPENSATION
CONTROL_AE_LOCK
CONTROL_AE_MODE
CONTROL_AE_REGIONS
CONTROL_AE_TARGET_FPS_RANGE
CONTROL_AE_PRECAPTURE_TRIGGER
CONTROL_AF_MODE
CONTROL_AF_REGIONS
CONTROL_AF_TRIGGER
CONTROL_AWB_LOCK
CONTROL_AWB_MODE
CONTROL_AWB_REGIONS
CONTROL_CAPTURE_INTENT
CONTROL_EFFECT_MODE
CONTROL_MODE
CONTROL_SCENE_MODE
CONTROL_VIDEO_STABILIZATION_MODE
CONTROL_AE_AVAILABLE_ANTIBANDING_MODES
CONTROL_AE_AVAILABLE_MODES
CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES
CONTROL_AE_COMPENSATION_RANGE
CONTROL_AE_COMPENSATION_STEP
CONTROL_AF_AVAILABLE_MODES
CONTROL_AVAILABLE_EFFECTS
CONTROL_AVAILABLE_SCENE_MODES
CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES
CONTROL_AWB_AVAILABLE_MODES
CONTROL_MAX_REGIONS
CONTROL_AE_STATE
CONTROL_AF_STATE
CONTROL_AWB_STATE
CONTROL_AE_LOCK_AVAILABLE
CONTROL_AWB_LOCK_AVAILABLE
CONTROL_AVAILABLE_MODES
CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE
CONTROL_POST_RAW_SENSITIVITY_BOOST
CONTROL_ENABLE_ZSL
CONTROL_AF_SCENE_CHANGE
CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES
CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES
CONTROL_EXTENDED_SCENE_MODE
CONTROL_ZOOM_RATIO_RANGE
CONTROL_ZOOM_RATIO
CONTROL_END
EDGE_MODE
EDGE_AVAILABLE_EDGE_MODES
EDGE_END
FLASH_MODE
FLASH_STATE
FLASH_END
FLASH_INFO_AVAILABLE
FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
FLASH_INFO_STRENGTH_DEFAULT_LEVEL
FLASH_INFO_END
HOT_PIXEL_MODE
HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES
HOT_PIXEL_END
JPEG_GPS_COORDINATES
JPEG_GPS_PROCESSING_METHOD
JPEG_GPS_TIMESTAMP
JPEG_ORIENTATION
JPEG_QUALITY
JPEG_THUMBNAIL_QUALITY
JPEG_THUMBNAIL_SIZE
JPEG_AVAILABLE_THUMBNAIL_SIZES
JPEG_END
LENS_APERTURE
LENS_FILTER_DENSITY
LENS_FOCAL_LENGTH
LENS_FOCUS_DISTANCE
LENS_OPTICAL_STABILIZATION_MODE
LENS_FACING
LENS_POSE_ROTATION
LENS_POSE_TRANSLATION
LENS_FOCUS_RANGE
LENS_STATE
LENS_INTRINSIC_CALIBRATION
LENS_RADIAL_DISTORTION
LENS_POSE_REFERENCE
LENS_DISTORTION
LENS_DISTORTION_MAXIMUM_RESOLUTION
LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION
LENS_END
LENS_INFO_AVAILABLE_APERTURES
LENS_INFO_AVAILABLE_FILTER_DENSITIES
LENS_INFO_AVAILABLE_FOCAL_LENGTHS
LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION
LENS_INFO_HYPERFOCAL_DISTANCE
LENS_INFO_MINIMUM_FOCUS_DISTANCE
LENS_INFO_SHADING_MAP_SIZE
LENS_INFO_FOCUS_DISTANCE_CALIBRATION
LENS_INFO_END
NOISE_REDUCTION_MODE
NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES
NOISE_REDUCTION_END
REQUEST_MAX_NUM_OUTPUT_STREAMS
REQUEST_PIPELINE_DEPTH
REQUEST_PIPELINE_MAX_DEPTH
REQUEST_PARTIAL_RESULT_COUNT
REQUEST_AVAILABLE_CAPABILITIES
REQUEST_AVAILABLE_REQUEST_KEYS
REQUEST_AVAILABLE_RESULT_KEYS
REQUEST_AVAILABLE_CHARACTERISTICS_KEYS
REQUEST_AVAILABLE_SESSION_KEYS
REQUEST_AVAILABLE_PHYSICAL_CAMERA_REQUEST_KEYS
REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP
REQUEST_END
SCALER_CROP_REGION
SCALER_AVAILABLE_MAX_DIGITAL_ZOOM
SCALER_AVAILABLE_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_MIN_FRAME_DURATIONS
SCALER_AVAILABLE_STALL_DURATIONS
SCALER_CROPPING_TYPE
SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_RECOMMENDED_INPUT_OUTPUT_FORMATS_MAP
SCALER_AVAILABLE_ROTATE_AND_CROP_MODES
SCALER_ROTATE_AND_CROP
SCALER_DEFAULT_SECURE_IMAGE_SIZE
SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS
SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
SCALER_AVAILABLE_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
SCALER_AVAILABLE_STALL_DURATIONS_MAXIMUM_RESOLUTION
SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED
SCALER_AVAILABLE_STREAM_USE_CASES
SCALER_END
SENSOR_EXPOSURE_TIME
SENSOR_FRAME_DURATION
SENSOR_SENSITIVITY
SENSOR_REFERENCE_ILLUMINANT1
SENSOR_REFERENCE_ILLUMINANT2
SENSOR_CALIBRATION_TRANSFORM1
SENSOR_CALIBRATION_TRANSFORM2
SENSOR_COLOR_TRANSFORM1
SENSOR_COLOR_TRANSFORM2
SENSOR_FORWARD_MATRIX1
SENSOR_FORWARD_MATRIX2
SENSOR_BLACK_LEVEL_PATTERN
SENSOR_MAX_ANALOG_SENSITIVITY
SENSOR_ORIENTATION
SENSOR_TIMESTAMP
SENSOR_NEUTRAL_COLOR_POINT
SENSOR_NOISE_PROFILE
SENSOR_GREEN_SPLIT
SENSOR_TEST_PATTERN_DATA
SENSOR_TEST_PATTERN_MODE
SENSOR_AVAILABLE_TEST_PATTERN_MODES
SENSOR_ROLLING_SHUTTER_SKEW
SENSOR_OPTICAL_BLACK_REGIONS
SENSOR_DYNAMIC_BLACK_LEVEL
SENSOR_DYNAMIC_WHITE_LEVEL
SENSOR_PIXEL_MODE
SENSOR_RAW_BINNING_FACTOR_USED
SENSOR_END
SENSOR_INFO_ACTIVE_ARRAY_SIZE
SENSOR_INFO_SENSITIVITY_RANGE
SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
SENSOR_INFO_EXPOSURE_TIME_RANGE
SENSOR_INFO_MAX_FRAME_DURATION
SENSOR_INFO_PHYSICAL_SIZE
SENSOR_INFO_PIXEL_ARRAY_SIZE
SENSOR_INFO_WHITE_LEVEL
SENSOR_INFO_TIMESTAMP_SOURCE
SENSOR_INFO_LENS_SHADING_APPLIED
SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE
SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION
SENSOR_INFO_BINNING_FACTOR
SENSOR_INFO_END
SHADING_MODE
SHADING_AVAILABLE_MODES
SHADING_END
STATISTICS_FACE_DETECT_MODE
STATISTICS_HOT_PIXEL_MAP_MODE
STATISTICS_FACE_IDS
STATISTICS_FACE_LANDMARKS
STATISTICS_FACE_RECTANGLES
STATISTICS_FACE_SCORES
STATISTICS_LENS_SHADING_MAP
STATISTICS_SCENE_FLICKER
STATISTICS_HOT_PIXEL_MAP
STATISTICS_LENS_SHADING_MAP_MODE
STATISTICS_OIS_DATA_MODE
STATISTICS_OIS_TIMESTAMPS
STATISTICS_OIS_X_SHIFTS
STATISTICS_OIS_Y_SHIFTS
STATISTICS_END
STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES
STATISTICS_INFO_MAX_FACE_COUNT
STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES
STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES
STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES
STATISTICS_INFO_END
TONEMAP_CURVE_BLUE
TONEMAP_CURVE_GREEN
TONEMAP_CURVE_RED
TONEMAP_MODE
TONEMAP_MAX_CURVE_POINTS
TONEMAP_AVAILABLE_TONE_MAP_MODES
TONEMAP_GAMMA
TONEMAP_PRESET_CURVE
TONEMAP_END
INFO_SUPPORTED_HARDWARE_LEVEL
INFO_VERSION
INFO_DEVICE_STATE_ORIENTATIONS
INFO_END
BLACK_LEVEL_LOCK
BLACK_LEVEL_END
SYNC_FRAME_NUMBER
SYNC_MAX_LATENCY
SYNC_END
DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS
DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS
DEPTH_DEPTH_IS_EXCLUSIVE
DEPTH_AVAILABLE_RECOMMENDED_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS
DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION
DEPTH_END
LOGICAL_MULTI_CAMERA_PHYSICAL_IDS
LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE
LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID
LOGICAL_MULTI_CAMERA_END
DISTORTION_CORRECTION_MODE
DISTORTION_CORRECTION_AVAILABLE_MODES
DISTORTION_CORRECTION_END
HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS
HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS
HEIC_AVAILABLE_HEIC_STALL_DURATIONS
HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION
HEIC_AVAILABLE_HEIC_STALL_DURATIONS_MAXIMUM_RESOLUTION
HEIC_END
AUTOMOTIVE_LOCATION
AUTOMOTIVE_END
AUTOMOTIVE_LENS_FACING
AUTOMOTIVE_LENS_END

Constants#