Files
Odin/core/sys/android/surface_control.odin

86 lines
9.2 KiB
Odin

// Generated by core/sys/android/_gen/generate.py from the Android NDK headers. DO NOT EDIT.
// Source: <android/surface_control.h>, <android/surface_control_jni.h>, <android/surface_control_input_receiver.h> (NDK r30, 30.0.16248370)
#+build linux
package android
import "core:c"
foreign import libandroid "system:android"
ASurfaceTransaction :: struct {}
ASurfaceTransactionStats :: struct {}
ASurfaceTransaction_OnComplete :: proc "c" (context_: rawptr, stats: ^ASurfaceTransactionStats)
ASurfaceTransaction_OnCommit :: proc "c" (context_: rawptr, stats: ^ASurfaceTransactionStats)
ASurfaceTransaction_OnBufferRelease :: proc "c" (context_: rawptr, release_fence_fd: c.int)
ASurfaceTransactionVisibility :: enum i8 {
HIDE = 0,
SHOW = 1,
}
ASurfaceTransactionTransparency :: enum i8 {
TRANSPARENT = 0,
TRANSLUCENT = 1,
OPAQUE = 2,
}
AInputReceiver_onMotionEvent :: proc "c" (context_: rawptr, motionEvent: ^AInputEvent) -> bool
AInputReceiver_onKeyEvent :: proc "c" (context_: rawptr, keyEvent: ^AInputEvent) -> bool
AInputReceiverCallbacks :: struct {}
AInputReceiver :: struct {}
@(default_calling_convention="c")
foreign libandroid {
ASurfaceControl_createFromWindow :: proc(parent: ^ANativeWindow, debug_name: cstring) -> ^ASurfaceControl ---
ASurfaceControl_create :: proc(parent: ^ASurfaceControl, debug_name: cstring) -> ^ASurfaceControl ---
ASurfaceControl_acquire :: proc(surface_control: ^ASurfaceControl) --- // API level 31
ASurfaceControl_release :: proc(surface_control: ^ASurfaceControl) ---
ASurfaceTransaction_create :: proc() -> ^ASurfaceTransaction ---
ASurfaceTransaction_delete :: proc(transaction: ^ASurfaceTransaction) ---
ASurfaceTransaction_apply :: proc(transaction: ^ASurfaceTransaction) ---
ASurfaceTransactionStats_getLatchTime :: proc(surface_transaction_stats: ^ASurfaceTransactionStats) -> i64 ---
ASurfaceTransactionStats_getPresentFenceFd :: proc(surface_transaction_stats: ^ASurfaceTransactionStats) -> c.int ---
ASurfaceTransactionStats_getASurfaceControls :: proc(surface_transaction_stats: ^ASurfaceTransactionStats, outASurfaceControls: ^^^ASurfaceControl, outASurfaceControlsSize: ^c.size_t) ---
ASurfaceTransactionStats_releaseASurfaceControls :: proc(surface_controls: ^^ASurfaceControl) ---
ASurfaceTransactionStats_getAcquireTime :: proc(surface_transaction_stats: ^ASurfaceTransactionStats, surface_control: ^ASurfaceControl) -> i64 ---
ASurfaceTransactionStats_getPreviousReleaseFenceFd :: proc(surface_transaction_stats: ^ASurfaceTransactionStats, surface_control: ^ASurfaceControl) -> c.int ---
ASurfaceTransaction_setOnComplete :: proc(transaction: ^ASurfaceTransaction, context_: rawptr, func: ASurfaceTransaction_OnComplete) ---
ASurfaceTransaction_setOnCommit :: proc(transaction: ^ASurfaceTransaction, context_: rawptr, func: ASurfaceTransaction_OnCommit) --- // API level 31
ASurfaceTransaction_reparent :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, new_parent: ^ASurfaceControl) ---
ASurfaceTransaction_setVisibility :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, visibility: ASurfaceTransactionVisibility) ---
ASurfaceTransaction_setZOrder :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, z_order: i32) ---
ASurfaceTransaction_setBuffer :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, buffer: ^AHardwareBuffer, acquire_fence_fd: c.int) ---
ASurfaceTransaction_setBufferWithRelease :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, buffer: ^AHardwareBuffer, acquire_fence_fd: c.int, context_: rawptr, func: ASurfaceTransaction_OnBufferRelease) --- // API level 36
ASurfaceTransaction_setColor :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, r: f32, g: f32, b: f32, alpha: f32, dataspace: ADataSpace) ---
ASurfaceTransaction_setGeometry :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, source: ^ARect, destination: ^ARect, transform: ANativeWindowTransform) ---
ASurfaceTransaction_setCrop :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, crop: ^ARect) --- // API level 31
ASurfaceTransaction_setPosition :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, x: i32, y: i32) --- // API level 31
ASurfaceTransaction_setBufferTransform :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, transform: ANativeWindowTransform) --- // API level 31
ASurfaceTransaction_setScale :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, xScale: f32, yScale: f32) --- // API level 31
ASurfaceTransaction_setBufferTransparency :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, transparency: ASurfaceTransactionTransparency) ---
ASurfaceTransaction_setDamageRegion :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, rects: ^ARect, count: u32) ---
ASurfaceTransaction_setDesiredPresentTime :: proc(transaction: ^ASurfaceTransaction, desiredPresentTime: i64) ---
ASurfaceTransaction_setBufferAlpha :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, alpha: f32) ---
ASurfaceTransaction_setBufferDataSpace :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, data_space: ADataSpace) ---
ASurfaceTransaction_setHdrMetadata_smpte2086 :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, metadata: ^AHdrMetadata_smpte2086) ---
ASurfaceTransaction_setHdrMetadata_cta861_3 :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, metadata: ^AHdrMetadata_cta861_3) ---
ASurfaceTransaction_setExtendedRangeBrightness :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, currentBufferRatio: f32, desiredRatio: f32) --- // API level 34
ASurfaceTransaction_setDesiredHdrHeadroom :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, desiredHeadroom: f32) --- // API level 35
ASurfaceTransaction_setLuts :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, luts: ^ADisplayLuts) --- // API level 36
ASurfaceTransaction_setFrameRate :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, frameRate: f32, compatibility: ANativeWindow_FrameRateCompatibility) --- // API level 30
ASurfaceTransaction_setFrameRateWithChangeStrategy :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, frameRate: f32, compatibility: ANativeWindow_FrameRateCompatibility, changeFrameRateStrategy: ANativeWindow_ChangeFrameRateStrategy) --- // API level 31
ASurfaceTransaction_clearFrameRate :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl) --- // API level 34
ASurfaceTransaction_setEnableBackPressure :: proc(transaction: ^ASurfaceTransaction, surface_control: ^ASurfaceControl, enableBackPressure: bool) --- // API level 31
ASurfaceTransaction_setFrameTimeline :: proc(transaction: ^ASurfaceTransaction, vsyncId: AVsyncId) --- // API level 33
ASurfaceControl_fromJava :: proc(env: ^JNIEnv, surfaceControlObj: jobject) -> ^ASurfaceControl --- // API level 34
ASurfaceTransaction_fromJava :: proc(env: ^JNIEnv, transactionObj: jobject) -> ^ASurfaceTransaction --- // API level 34
AInputReceiver_createBatchedInputReceiver :: proc(aChoreographer: ^AChoreographer, hostInputTransferToken: ^AInputTransferToken, aSurfaceControl: ^ASurfaceControl, aInputReceiverCallbacks: ^AInputReceiverCallbacks) -> ^AInputReceiver --- // API level 35
AInputReceiver_createUnbatchedInputReceiver :: proc(aLooper: ^ALooper, hostInputTransferToken: ^AInputTransferToken, aSurfaceControl: ^ASurfaceControl, aInputReceiverCallbacks: ^AInputReceiverCallbacks) -> ^AInputReceiver --- // API level 35
AInputReceiver_getInputTransferToken :: proc(aInputReceiver: ^AInputReceiver) -> ^AInputTransferToken --- // API level 35
AInputReceiver_release :: proc(aInputReceiver: ^AInputReceiver) --- // API level 35
AInputReceiverCallbacks_create :: proc(context_: rawptr) -> ^AInputReceiverCallbacks --- // API level 35
AInputReceiverCallbacks_release :: proc(callbacks: ^AInputReceiverCallbacks) --- // API level 35
AInputReceiverCallbacks_setMotionEventCallback :: proc(callbacks: ^AInputReceiverCallbacks, onMotionEvent: AInputReceiver_onMotionEvent) --- // API level 35
AInputReceiverCallbacks_setKeyEventCallback :: proc(callbacks: ^AInputReceiverCallbacks, onKeyEvent: AInputReceiver_onKeyEvent) --- // API level 35
}